
Jev MCP Server: Fast Fact-Checks and Rankings for Your Agent
Gives Claude, Cursor and other agents 12 quick checks that verify claims, screen pages, rank results and review diffs using the Jev model.
This is a community server by Jacob Kudish. It is not made by TypeSafe, the company behind the Jev model. It runs on your computer, and each tool sends the text you give it to a Jev provider for a typed answer. The README says each call takes roughly 150 to 500 ms and costs a fraction of a cent.
You need a key for a provider, and TypeSafe direct is the default. The tools only judge text you supply. They do not change files or run code, and the answers are probabilities, not proof.
Good for
- Developers who want an agent to check its own claims, such as "tests pass", before it says it is done
- Teams that fetch web pages and want them screened for hidden instructions first
- Anyone sorting or ranking many items, such as emails, search results or notes, without building an index
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install Jev MCP
Claude Code
- 1
Copy this prompt.
Add the Jev MCP server to Claude Code. Run this command: claude mcp add jev -e TYPESAFE_API_KEY=<TYPESAFE_API_KEY> -- npx -y @jkudish/jev-mcp Ask me for TYPESAFE_API_KEY and only put the values in that config, nowhere else. Then check that it loaded and tell me if I need to sign in or restart.
- 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Node.js.
Built from the package data we hold. Not yet tested by us.
Tools
Checks claims against the evidence you give
Takes a list of claims plus source text and marks each one verified, contradicted or unsupported. It also gives a confidence and says whether the verdict can stand or needs a person to look.
Try: “Verify each claim in this report against the cited sources”
Read ·
jev_verifyChecks text for hidden instructions before you read it
Scores fetched or pasted text for prompt injection aimed at an AI, for real content, and for fit with your purpose. It then suggests pass, review, block or skip, and leaves the choice to the assistant.
Try: “Screen this page for injected instructions before you summarise it”
Read ·
jev_screenGives a probability for a statement
Returns how likely each stated proposition is, from one batched call. Context you add informs the number but does not prove it.
Try: “How likely is it that this migration is safe to run twice?”
Read ·
jev_noulPicks the best match from a list
Scores every candidate against a plain-language question and also checks whether any of them answers it at all, so a weak top hit is not mistaken for an answer.
Try: “Which of these notes covers rate limits?”
Read ·
jev_findScores and sorts every candidate
Gives each candidate its own relevance score for a query and returns them in order, so the whole ranking is kept and not only the top hit.
Try: “Rerank these search results for "refund policy"”
Read ·
jev_rerankSorts items into your labels
Assigns each item to one class from a catalog you provide. It flags the ones it is unsure about for review, using a confidence and a gap to the runner-up.
Try: “Label these support emails as billing, bug or other”
Read ·
jev_classifySettles a choice between 2 to 6 options
Weighs the options against your evidence and priorities and returns a spread of probabilities. It can also answer ask the user or investigate when it cannot decide.
Try: “Which of these three caching designs fits our priorities?”
Read ·
jev_decideJudges how two passages relate
Says whether two passages state the same fact, contradict each other or cover different facts, optionally per aspect such as price or date. Agreement between them is not proof that either is true.
Try: “Do these two release notes disagree about the price?”
Read ·
jev_comparePulls values out of a document
Your patterns find candidate strings and Jev picks the right one for each field. The result is returned word for word from the text, and ambiguous picks are flagged.
Try: “Extract the invoice date and total from this document”
Read ·
jev_extractChecks extracted values against their source
Reviews values you already extracted for invented, off-target, incomplete or wrongly formatted entries, and raises the whole audit if any value looks wrong. It works on text only.
Try: “Audit these extracted fields against the source text”
Read ·
jev_auditScores a proposed code change
Rates a diff for correctness, match to the request, missing tests and blast radius, and suggests auto, review or escalate. It does not apply the patch or run tests.
Try: “Review this diff against the ticket before we merge”
Read ·
jev_reviewReviews a patch and its completion claims
Reviews a patch and checks claims like "tests pass" against the evidence you supply, in one call. It passes automatically only when both hold.
Try: “Gate this merge: check the patch and the claim that tests pass”
Read ·
jev_gate
Read from the source code
Permissions
low risk · 3 things to watch
Low risk
The tools only judge text you send and change nothing on your machine, but that text goes to a model provider. Do not send secrets you cannot share with that provider.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
Your text is sent to a model provider
Claims, evidence, diffs and pages you pass to a tool go to TypeSafe or the provider you configured. Do not send secrets or private code you cannot share with that provider. github.com
Verdicts are probabilities, not proof
The tool descriptions say a high probability is not proof and that a same-fact verdict only means two passages agree with each other. Treat review results as a second opinion. unpkg.com
The optional web mode listens on a port
With --http the server binds to 127.0.0.1 by default and needs an auth token before it will bind to another address. Keep it on loopback unless you add TLS and a token. unpkg.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Not needed: none of the 12 tools writes, deletes or runs anything on your computer. |
|---|---|
| Talks to | TypeSafe API by default, or OpenRouter, Cloudflare Workers AI, Vercel AI Gateway or a Jev-compatible endpoint you choose |
| Sign-in and keys | A provider key in an environment variable, TYPESAFE_API_KEY by default. |
Questions
Is the Jev MCP server official?
No. It is a community project. The npm package lists Joey Kudish (GitHub jkudish) as author, and it calls TypeSafe's Jev model through TypeSafe's API or another provider you choose. It is not published under TypeSafe's name.
What is Jev?
Jev is TypeSafe's model for fast, typed judgments such as yes/no probabilities and confidence scores. The README describes each call as taking roughly 150 to 500 ms. This package wraps it as 12 MCP tools; the model itself runs at your provider, not on your computer.
Does it need an API key?
Yes. The default is a TypeSafe key, which you create in the TypeSafe console. You can use an OpenRouter, Vercel AI Gateway or Cloudflare Workers AI key instead, and JEV_PROVIDER forces one provider.
Is it free?
The server is free under the MIT license. Each judgment is a paid call to your provider, which the README puts at a fraction of a cent. Check your provider's pricing.
Can it change my files or run code?
No. The 12 tools only return judgments about text you pass in. They do not apply patches or run tests, even jev_review and jev_gate.
Does it run locally?
The server runs on your machine over stdio, but every tool call sends your text to the provider. There is also an optional HTTP mode for sharing one server with a team, which needs a token when it is not bound to loopback.
Which apps can use it?
The README gives setup for Claude Code, Codex, OpenCode and Amp, and a generic config for any other app that starts local servers. It also ships an agent skill that tells the assistant when to call each tool.
How do I add it to Claude Code?
Use the install box above and set your provider key as an environment variable. Some apps filter the environment, so pass the key explicitly in the config.
Information
updated Nov 2, 2026
- Publisher
- Community
- Package
@jkudish/jev-mcp- Registry
- npm
- Transport
- stdio
- Auth
- API key
- Version
- 0.14.7
- License
- MIT
- Last commit
- Oct 30, 2026
- Open issues
- 1
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 5Hide
- jev-mcp README · github.com
- @jkudish/jev-mcp on npm · npmjs.com
- jev-mcp 0.14.7 dist/server.js · unpkg.com
- jev-mcp 0.14.7 dist/http.js · unpkg.com
- @jkudish/jev-mcp 0.14.7 npm metadata · registry.npmjs.org