Jev in Cursor: add the MCP server and call Jev from the agent

Cursor connects to remote MCP servers through a small mcp.json file. Add JevStation’s server with your API key and Cursor’s agent can classify, grade, route and guard with Jev — typed answers with probabilities, billed per evaluation.

Before you start

You need Cursor and a JevStation account. New accounts get 200 free credits with no card. Create an API key at Settings › API Keys and set it as an environment variable Cursor can read — for example in your shell profile:

export JEVSTATION_API_KEY="sk_..."

Cursor reads environment variables when it starts, so restart it after setting or changing the key.

Step 1: add the server to mcp.json

Cursor looks for MCP servers in two files:

  • ~/.cursor/mcp.json — available in every project.
  • .cursor/mcp.json in a project — only that project, and easy to share with a team.

Add JevStation as a remote server. Cursor’s config interpolation resolves ${env:NAME} in the url and headers fields, so the key stays out of the file:

{
  "mcpServers": {
    "jevstation": {
      "url": "https://jevstation.com/api/mcp",
      "headers": {
        "Authorization": "Bearer ${env:JEVSTATION_API_KEY}"
      }
    }
  }
}

If the file already has other servers, add the jevstation entry inside the existing mcpServers object. This version is safe to commit to a project: each developer supplies their own key through the environment. Do not paste the literal key into a committed file.

A few things JevStation does not need: no command or args (nothing runs locally), no auth block (the server does not use OAuth), and no envFile (Cursor only supports it for local stdio servers).

Step 2: check the connection

  1. Restart Cursor.
  2. Open Customize in the sidebar and find jevstation. Make sure its toggle is on.
  3. Five Jev tools should now be available to the agent: jev_decide, jev_run_question_set, jev_list_question_sets, jev_route_model and jev_guard_tool_call. What each one takes is on the MCP server page.

If the server shows an error, open the Output panel and choose MCP Logs. A 401 there means the header did not carry a valid key — usually the variable was not visible to Cursor when it started.

Step 3: use Jev from the agent

Cursor’s agent uses MCP tools when they are relevant, and you can also name a tool. It asks for approval before each MCP call by default; expand the call to see exactly what will be sent before you approve.

Prompts to try:

  • “List my Jev question sets.” — free; a quick connection test.
  • “Use jev_decide to decide whether this error log is a config problem, a code bug or an outage, and show me the probabilities.”
  • “Before running the SQL in scripts/cleanup.sql, check it with jev_guard_tool_call. My request was: remove test accounts from staging.”
  • “For each prompt in prompts.json, call jev_route_model and summarise which tier each needs.”
  • “Run my saved question set qs_… on the three reviews in fixtures/reviews.md.”

Each evaluation result includes model, answers and credits (charged and remaining), so you can see what a session costs.

Optional: brief the agent for a code integration

The MCP tools help the agent decide things while it works. To put Jev into your own code — a router, a grader, a guard in your agent loop — open the API docs, press Copy for AI and paste the brief into Cursor’s chat with your request. The brief covers the endpoint, auth through JEVSTATION_API_KEY, the question and answer formats, error codes, costs and how to verify the integration, so the agent does not have to guess.

For help writing the questions themselves, Designing Questions Jev Can Answer covers wording and thresholds, and the tool pages have ready-made question sets to adapt.

Troubleshooting

  • 401 / authentication error in MCP Logs. ${env:JEVSTATION_API_KEY} resolved to nothing or to a deleted key. Check the variable, restart Cursor, and create a new key if needed.
  • Server does not appear. Check that mcp.json is valid JSON, that it is in ~/.cursor/ or the project’s .cursor/ folder, and that the server is enabled in Customize.
  • The tool ran but returned an error. JevStation returns problems as readable tool results: not enough credits, a rate limit, a state over 24,000 characters, an invalid question, an unknown question set id, or a failed evaluation (refunded). The agent can usually fix the input and retry; for credits, top up on pricing.
  • Leaked key. Delete it at Settings › API Keys and create a new one.

Keep secrets out of prompts and tool arguments. The state and tool_args you send are evaluated by the model, so redact tokens and passwords first.

References

Configuration verified on 2026-09-28 against the Cursor MCP documentation: https://cursor.com/docs/mcp

Frequently asked questions

Where does Cursor read MCP servers from?
From ~/.cursor/mcp.json for servers available in every project, and from .cursor/mcp.json in a project for that project only. You can also manage servers from Customize in the sidebar.
Can I keep the API key out of mcp.json?
Yes. Cursor resolves ${env:NAME} in the url and headers fields, so the header can read Bearer ${env:JEVSTATION_API_KEY}. Set the variable in your shell profile or system environment and restart Cursor.
Why does Cursor ask before each Jev call?
Cursor asks for approval before using MCP tools by default, and you can expand the call to see its arguments. Your run mode and allow-lists decide which tools run without asking.
What does a call cost?
The same as the HTTP API: 1 credit per evaluation with a state of at most 8,000 characters and at most 5 questions, otherwise 3. Listing your saved question sets is free and failed evaluations are refunded.

Related

Make it part of your pipeline

Sign up for 200 free credits, save your own question sets and call the same evaluation from the API.