Skip to content
Back to skills

Jev Style Mcp

ASecurity

Connect the Jev-Style local decision model to an AI coding agent as an MCP server (tools decide, noul, choice, score, model_info) - Claude Code, Claude Desktop, Cursor, Codex CLI, Windsurf or any MCP client. Use when the user wants their agent to classify, route, gate or score text with a local model through MCP, or asks to add jev-style as an MCP server.

  • 12 stars
  • 0 votes
  • 1 copy
  • 1 view
  • Added September 26, 2026
ai-agentsshellapibackend

Works with

  • claude code
  • claude desktop
  • cursor
  • cli
  • api
  • mcp

Security analysis

A96/100
  • mediumUses curl or wget to download content

Pro shows the line behind each finding and how to fix it

Scanned September 26, 2026

npx -y skills add lawrence3699/jev-style --skill jev-style-mcp --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Jev Style Mcp?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Jev Style Mcp
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/lawrence3699-jev-style-mcp/badge)](https://www.skillsdirectory.com/skills/lawrence3699-jev-style-mcp)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: jev-style-mcp
description: Connect the Jev-Style local decision model to an AI coding agent as an MCP server (tools decide, noul, choice, score, model_info) - Claude Code, Claude Desktop, Cursor, Codex CLI, Windsurf or any MCP client. Use when the user wants their agent to classify, route, gate or score text with a local model through MCP, or asks to add jev-style as an MCP server.
---

# Jev-Style as MCP tools

The MCP server is a thin, stdio process: `jev-style mcp`. By default it forwards to a running
`jev-style serve` on http://127.0.0.1:8765 (so one model in memory serves every client). It refuses
non-loopback URLs unless `--allow-remote` is given.

| Tool | Arguments | Returns |
|---|---|---|
| `decide` | `state`, `questions` (systemone format, many at once) | full response |
| `noul` | `state`, `question`, `true_means?`, `false_means?` | `p_true`, `answer` |
| `choice` | `state`, `question`, `options` (list or `{option: description}`) | `choice`, `probabilities`, `confidence` |
| `score` | `state`, `question`, `levels` (2..10, lowest first) | `score`, `level`, `legend`, `probabilities`, `confidence` |
| `model_info` | none | model id, budgets, backend |

## 1. Prerequisites

```sh
command -v jev-style || echo "install first (jev-style-serve skill)"
jev-style mcp --help >/dev/null && echo "mcp extra ok"
curl -s http://127.0.0.1:8765/healthz || echo "server not running"
```

If `jev-style mcp --help` fails with "needs the 'mcp' extra", reinstall with the extra:
`uv tool install --force "jev-style[all]"`.
If the server is not running, start it (`jev-style serve`, see the `jev-style-serve` skill). Without a
server you can use `jev-style mcp --model` (loads the model inside the MCP process; each client then
holds its own copy) - prefer the shared server.

## 2. Register it

Use the absolute path from `command -v jev-style` if the client does not inherit the shell PATH.

**Claude Code**

```sh
claude mcp add jev-style --scope user -- jev-style mcp
claude mcp list                                   # jev-style ... connected
```

**Codex CLI** (`~/.codex/config.toml`)

```toml
[mcp_servers.jev-style]
command = "jev-style"
args = ["mcp"]
```

**Cursor** (`~/.cursor/mcp.json`), **Claude Desktop** (`~/Library/Application Support/Claude/claude_desktop_config.json`),
**Windsurf** and other JSON-configured clients:

```json
{"mcpServers": {"jev-style": {"command": "jev-style", "args": ["mcp"]}}}
```

Merge into existing JSON; never overwrite the user's other servers. Server on another port:
`"args": ["mcp", "--url", "http://127.0.0.1:8766"]`. Server with a key: add
`"env": {"JEV_STYLE_API_KEY": "..."}` (ask the user for the value; do not invent one).

## 3. Verify

Restart or reload the client, then call `model_info` - expect `jev-style-0.8b-decision-v3`. Then a real
call, e.g. `choice(state="I was charged twice", question="Which team?", options=["billing","tech","sales"])`
should pick `billing`. If `model_info` says `jev-style-fake`, the server runs the fake engine.

Without a client, the same check from the shell:

```sh
(printf '%s\n' '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"t","version":"0"}}}' \
  '{"jsonrpc":"2.0","method":"notifications/initialized"}' \
  '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"choice","arguments":{"state":"I was charged twice","question":"Which team?","options":["billing","tech","sales"]}}}'; sleep 5) \
  | jev-style mcp | grep -o '"choice":"[a-z]*"'  # expect "choice":"billing"
```

## Using the tools well

Put everything the judgement needs into `state`. Ask several questions about one state with `decide`.
Treat outputs as probabilities: act on high confidence, ask the user in the middle band.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.