Guides / 動画ウォークスルー
Jev MCP Server: Connect Jev Decisions to Claude Code & Cursor
最終更新日: 2026-10-24
TypeSafe ships a drop-in Agent Skill instead of an MCP server, and the community answered with 20+ third-party Jev MCP servers. This guide shows the decision layer every one of them wraps — state plus typed questions, thresholds, and a TypeScript SDK demo.
要点
There is no official Jev MCP server. TypeSafe’s documented route for coding agents is a drop-in Agent Skill — a plugin that hands Claude Code or Codex the Jev API context — and the ecosystem filled the transport gap with 20+ third-party MCP servers (jkudish/jev-browser at 268 stars and ~3.7k npm downloads a week, maxkimambo/jev-mcp at ~981 a week, walidboulanouar/jev-agent-kit with 11 tools, Bizuayeu/GenericJevMCP on a self-hosted DiffusionGemma backend). Whatever transport you pick, the wire format is identical, and it is the one Codevolution demonstrates below: a state (plain text, JSON object, or array) plus typed Noul/Choice/Score questions, answered with calibrated probabilities in under a second — answers your agent, MCP tool, or skill then branches on. Community demos put hard numbers on why: a 29,150-token MCP skill list filtered to the 2 servers a task actually needs (≈5× less context, ≈$236 saved per 1,000 requests), and a fuse that blocked an irreversible rm -rf in about half a second instead of ~5 seconds and 124 tokens on the main model.
ステップごとのウォークスルー
- 1
Know what you are wiring in: Jev decides, it never writes
Before plugging anything into Claude Code or Cursor, be clear about the thing on the other end of the wire. Jev is TypeSafe’s “System One” model: it does not generate text — it judges the state you send and returns typed, probability-scored answers in 70–500 ms. The video’s running example is a support message — “I’ve contacted you three times, and I’m still waiting” — fed to Jev with the yes/no question “Does this customer sound frustrated?” and answered Yes. That is exactly why it suits agents: a Jev MCP tool or skill can hand your coding agent a probability it can branch on, and the model has no prose to hallucinate.

A smart if statement: Jev judges the message, your code branches.タイムスタンプ 1:35 を見る - 2
Model the payload: one state plus typed questions
Every Jev request — and therefore every Jev MCP tool call underneath — has two parts. The state is the information to judge: plain text, a JSON object, or an array. The questions are what you want to know about that state, and each carries a type that fixes the shape of its answer: Noul for yes/no probability, Choice for picking from options you define, Score for a position on a scale you describe. Questions are evaluated independently and in parallel, so one question never sees another’s answer. Get this payload right and the MCP-vs-skill choice becomes a transport detail.

State plus typed questions — the whole request surface.タイムスタンプ 6:30 を見る - 3
Prove the decision in the TypeSafe console before wiring anything
The fastest way to validate a decision is the TypeSafe console playground, no code needed: put the state on top — here the JSON object { "message": "I’ve contacted you three times, and I’m still waiting." } — pick a primitive in the Questions panel (Noul to evaluate how true something is, Score for a rubric, Choice for a multiple-choice question), and hit Run request. The same screen lists API Keys in the sidebar, walkthrough lessons like “Is hotdog a sandwich?”, and real-life use cases from résumé screening to LLM guardrails. Jev was in early access at recording (waitlist, Vercel AI gateway, free until September 23), and OpenRouter serves the same models if you already have a key there.

Try the decision in the console sandbox before writing code.タイムスタンプ 12:10 を見る - 4
Install the TypeScript SDK and make the first typed call
In code, the video’s jev-demo project adds @typesafe-ai/sdk (0.6.x) to package.json and keeps the key in .env as TYPESAFE_API_KEY, created in the console. demo.ts then guards on the key, builds a client, and sends one Noul question: state = { message: "I’ve contacted you three times, and I’m still waiting." }, questions = { isFrustrated: noul("Does message express frustration?") }, dispatched with client.systemOne(state, questions). The demo script runs through tsx with --env-file=.env. Python and JavaScript SDKs exist too — and this same call is what a community Jev MCP server wraps as a tool.

First typed call: noul over a customer message.タイムスタンプ 14:20 を見る - 5
Run it twice and read calibrated answers, not prose
npm run demo returns model jev-1.13.0 with answers.isFrustrated.noul = 0.94 — a 94% probability the message is frustrated — plus usage (292 input / 23 output tokens) and an elapsed time of 861 ms. Swapping the state to “Thanks for the update. Everything is working now.” flips the same question to 0.03. That clean flip is the point: the number moves with the evidence, so thresholds in your agent are safe to trust. Note a Noul answer carries no separate confidence field — the distance from 0.5 is the confidence; Choice and Score answers do include one.

0.94 vs 0.03 — the flip is the signal.タイムスタンプ 16:10 を見る - 6
Ask Noul, Choice, and Score together in a single call
all_questions.ts keeps the same state and stacks all three primitives: isFrustrated stays a Noul; requestType becomes a Choice — “What is the main request in this message?” over the options an upgrade, a refund, a replacement, or other; frustrationLevel becomes a Score over three described levels, from makes a request without expressing frustration through expresses dissatisfaction without strong anger to expresses strong anger. Describing each level gives the model more to work with than a bare 1–10, and all three questions still ride one API call.

Three question types, one state, one call.タイムスタンプ 17:20 を見る - 7
Branch on thresholds — the part your agent or MCP tool owns
One call returns every typed answer at once: requestType = “an upgrade” with confidence 0.99, frustrationLevel = 1.02 with confidence 0.97 (dissatisfaction edging toward anger), still in 834 ms for 495 input tokens. The demo sets a reviewThreshold of 0.8 and flags the message for support review instead of leaving it in the normal queue — and that branch is precisely where agents plug in: a Jev MCP tool or skill uses the same answers to route the task to a cheaper model, load one skill instead of a 145-skill dump, or block an irreversible command before the big model ever sees it. Tune the threshold on your own examples, as the video advises.

Three typed answers in 834 ms — thresholds do the rest.タイムスタンプ 18:30 を見る
よくある質問(FAQ)
Does Jev have an official MCP server?
No. TypeSafe’s documented route for coding agents is a drop-in Agent Skill — a plugin that gives Claude Code or Codex the Jev API context — and the docs are explicit that Jev is not the LLM behind the agent (there is no model: jev-latest option). The MCP transport layer is entirely community-built: the Glama directory lists 20+ third-party Jev MCP servers, led by jkudish/jev-browser (268 stars, ~3.7k npm downloads a week), maxkimambo/jev-mcp (~981 a week), walidboulanouar/jev-agent-kit (11 tools), and Bizuayeu/GenericJevMCP (self-hosted DiffusionGemma backend).
How do I connect Jev to Claude Code?
The official skill route installs in two commands: claude plugin marketplace add typesafe-ai/skills, then claude plugin install typesafe@typesafe-ai (or copy the skills/typesafe-ai directory into ~/.claude/skills for a manual install). Community walkthroughs show a second route — hand your agent an OpenRouter API key plus a router setup prompt, and it wires Jev-based model routing into the session. The same agent-setup prompt and skill.md pattern also works in Cursor or Codex. Both routes end at the state + typed-question call shown in this guide.
What does a Jev decision layer actually do for my agent?
Community demos put hard numbers on it. Filtering an MCP/skill context: a 29,150-token server list collapsed to the 2 servers a Stripe-webhook task actually needed — roughly 5× less context and an estimated $236 saved per 1,000 requests. A safety fuse: an irreversible rm -rf blocked in about half a second by Jev instead of ~5 seconds and 124 tokens on the main model. Bulk triage: 30 support tickets classified in 2.6 seconds at a fraction of the LLM cost. Routing, tool filtering, and permission gates are the three patterns that keep coming back.
Agent Skill or community MCP server — which should I use?
They solve different halves. The official skill is context: it teaches your agent when and how to call Jev, stays aligned with the docs, and updates with the SDK. A community MCP server is transport: it exposes Jev as a runtime tool any MCP client — Claude Code, Cursor, Codex — can invoke inside the loop for model routing, tool filtering, or permission gating. A practical combo is the official skill for setup knowledge plus one vetted community server for in-loop decisions, and — as the MG setup video cautions — run evaluations on your own cases before trusting the judgments in production.
関連ガイド
Agent Routing Recipe
Gate which model or tool handles each agent task with a typed Choice and threshold.
読むJev Model Router Guide
Sam Witteveen builds a privacy-gated router — the most popular coding-agent pattern for Jev.
読むJev API Reference
The evaluate endpoint and typed payload that every Jev MCP server wraps.
読むPrompt Injection Defense
Screen untrusted MCP tool results before they reach your agent’s context.
読むThe same decision layer on cloud-agent portals
Skip the MCP plumbing entirely: wire Jev into an Azure AI Foundry agent as an OpenAPI custom tool and put it to work as the evaluation component.
読むその他の動画ウォークスルー
- Jev Classification Quickstart: OpenRouter API, Primitives & Real Probabilities
- Jev Architecture Explained: Why 70ms Decision Models Beat LLMs for Workflow Automation
- Ultra-Fast Browser Agents with Jev: 178ms DOM Loops & Dual Model Orchestration
- Open Jev Models Are Here: Semif, Nimble, Decider, DiffusionGemma & Laya Hands-On
- Jev vs LLM: Will Jev Replace LLMs? Krish Naik's Whiteboard Explainer
- Jev Trader Tutorial: Build a Subsecond AI Trading Bot on Monad
- Jev Model Router: Build a Privacy-Gated LLM Router with Jev & OpenJev
- Jev Tutorial for Beginners: State, Questions & the TypeScript SDK
- Run Jev Locally: Kev, SemIf & Von on Your Own GPU (OpenJev Guide)
- Jev RAG Reranker: Policy-Steered Reranking for Retrieval-Augmented Generation
- When to Use Jev: An Engineer's Audit of Claims, Gates, and Failure Modes
- LangChain + Jev Integration Tutorial: Routing, Guardrails & Evals
- Jev vs Luna: Independent Benchmarks Put "Better, Faster, Cheaper" to the Test
- Jev Agent Harness: Where the Decision Gate Sits in Your LLM Loop
- Jev Playground Walkthrough: The Hotdog Lesson, Criteria, and a Four-Console Token Test
- Jev Text Classification API: Zero-Shot CLI & REST with classifier.dev
- Jev API Examples: First Request, curl & All Three Question Types
- Expanso Edge と Jev でログをトリアージする
- Treg と Jev でリードをエンリッチする: ICP 判定と登録スコアリング
- Heym で Jev Decision Node を使う: モデルルーティングを制御する
- Laya Tutorial: Open-Source AI Routing With Calibrated Probabilities (Laya vs Jev Setup)
- Train Your Own Jev: Fine-Tune a Jev-Style Decision Model for $5–$17 (What You Can and Cannot Train)
- Jev Tips: 8 Best Practices for Better Decisions (State, Questions, Criteria & Thresholds)
- Jev Context Compaction: Prune AI Agent Memory Without Generative Summaries
- Jev as an LLM Judge: Confidence-Gated Cascades at 0.36% of the Cost
- TypeSafe Computer Use: Local Desktop Automation with Jev, Step by Step
- Jev Resume Screening: Build an AI Resume Evaluator with the Jev JavaScript SDK
- Jev + Claude Code Guide: Voice-Controlled Browser Automation with Typed Decisions
- Jev + Codex: Install the TypeSafe Skill and Triage a Real Gmail Inbox
- Jev vs Ollama: Can Local AI Replace Hosted Jev Without Sending Your Data Away?
- Build Your Own Jev: Train a Free Open-Source Zero-Shot Classifier (That Plays Doom)
- CUA-S1-Forms: a 706K-Parameter Jev-Like Model That Fills GUI Forms on Your CPU
- NOC/SOC Alert Triage with Jev: Rules First, One Typed Question, a Policy Gate
- Ollama Decision Models: Run tev1 and Nimble Locally (Tested on an 8 GB Card)
- Jev Guardrails in Production: A Five-Step Playbook for Decision Automation
- A Session Drift Guard for Pi Agent: Let the Jev Model Propose, Let Code Decide
- 50 Tev1 Use Cases: What a Local Decision Model Can Actually Do (Tested on an 8 GB Laptop)
- Jev, Hands-On: Where the Official Claims Meet Independent Remeasurement
- Jev Ticket Classification in a Real App: the After-Insert Hook and the Calculated Field
- OpenJev RLCD: Run the Open-Source Calibrated Decision Model Locally (Full Guide)
- Clef-Flash vs Jev: I Tested Cloudflare's Decision Model Locally in Ollama (Q4_K_M)
- Clef-Flash Tutorial: Install and Run Cloudflare's 9B Multimodal Decision Model Locally on Ubuntu
- CLM-8B: the Contrastive Decision Model That Scores 1,024 Options in 44 ms (13x Faster Than Jev)
- Nox 4B Tutorial: Run the Decision 2.0 Model Locally and Put It Through Four Real Decisions (One Ends in a Fail)
- Julia-1 Tutorial: Install the Open-Source Jev Replacement in Pure Python (and Watch It Beat If-Statements 9 to 2)
- OpenJev 0.8B on CPU: I Built a Ticket-Routing Inbox and Calibrated the Thresholds
- Jev n8n Integration: the JevGate Community Node, Step by Step (Plus a Plain-HTTP Fallback)
- NanoJev Tutorial: Install the 0.6B Open-Source Jev Replica and Watch It Route Decisions at 47 ms
- PPLX Decider Tutorial: Perplexity's Open 27B Decision Model, Its Decisions API, and a 12-Ticket Triage Run
- AutoTrust JEV-27B Tested Locally: Four Arms, 72 Cases, and One 0.969 Score That Was Wrong
- Clef 27B Locally: Watch Cloudflare’s Multimodal Decision Model Read an Image, a Video and an Uzbek Newspaper in One Pass
- Ollaya Guide: Install the "Ollama for Decision Models" Runner, Read Every Vendor-Reported Number, and Run the CPU Test It Leaves Open
- Strands Decider 2B Tutorial: Install the AWS Strands Decision Model on an 8GB Laptop — and Keep Its Failures In
- Liquid AI Open d1 Locally: d1-3B and d1-omni-600M on a MacBook Air M5 — Guardrails, Screen Checks, Voice Routing and Document Triage, Every Number Frame-Checked
- Image Decision Models for RPA: Watch Two Open Models Review an Unsigned W-8BEN With No OCR
- GLiNER2.5-Decide (340M) vs Jev (4B): Which Decision Model Actually Wins? A Frame-by-Frame Selection Guide
- Decision Models on Jetson: Jev vs Strands Decider 2B vs Laya vs d1-3B — Skill Master Scores, Thor Latency and JevBench, Every Number Frame-Checked
- Microsoft Decision-1 Tested: 146 Independent Tests, a 93% Mean, 124/125 When Confident — Every Number Frame-Checked
- Wire Jev into an Azure AI Foundry Agent as the Evaluation Layer — OpenAPI Tool, TypeSafe Connection, Triage Instructions and an Honest First-Run Failure