vercel-jev-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JEV_MCP_MOCK | No | Set to '1' to run in deterministic mock mode for tests and demos. | |
| JEV_BENCH_MIN_RPS | No | Minimum requests per second budget for benchmark CI. | |
| AI_GATEWAY_API_KEY | No | Your AI Gateway API key (vck_...). Required for live calls, not needed in mock mode. | |
| JEV_MCP_TIMEOUT_MS | No | Total deadline for calls in milliseconds. Default is 30000. | 30000 |
| JEV_BENCH_ITERATIONS | No | Number of iterations for benchmark runs. | |
| JEV_BENCH_MAX_P95_MS | No | Maximum p95 latency budget in milliseconds for benchmark CI. | |
| JEV_BENCH_CONCURRENCY | No | Concurrency level for benchmark runs. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| jev_evaluateA | Escape hatch: send shared state plus named noul/choice/score questions to TypeSafe Jev. Use when no other jev_* recipe fits. Jev does not write code or prose. Questions in one call run in parallel. Returns typed answers, probabilities, confidence, usage, and action auto|review|escalate. |
| jev_coding_loopA | Call before retry/stop/model-tier decisions. One Jev fan-out returns next, risk, focus, and explicit handoff / partner_model fields. Prefer prepared tools or gathering context; request a partner generative model only when needed and confidently supported. Legacy model_tier is conditional, not an instruction to invoke a model. Does not edit files. |
| jev_stepA | One call instead of jev_coding_loop then jev_tool_route: route the coding step and select among up to 32 host-prepared calls in a single Jev request. Returns the exact call with handoff execute_tool, or handoff use_tools|gather_context|partner_model|ask_user|stop|review with call null. Same dispatch floors. Never generates arguments, executes calls, or invokes a model. |
| jev_tool_routeA | Choose among up to 32 exact host-prepared tool calls without generating arguments or invoking a partner model. Host supplies trusted authorization, schema validation, prerequisites, effect and retry counts. Only confident, suitable, complete, low-risk selections expose a call; otherwise call is null. Empty/ineligible lists return locally without Jev. This server never executes the selected call. Use jev_coding_loop if new generation may be necessary. |
| jev_reviewA | Score a proposed diff against the request: correctness, spec-match, test-gap, blast-radius, plus noul safe_to_apply. Composite weights live in code. Call before declaring a fix done. Does not apply the patch. |
| jev_verifyA | Check each claim against provided evidence (PR description, agent brief, docs, diffs). Returns per claim: verified|contradicted|unsupported, probabilities, confidence, and auto vs review. Prefer this over asking a chat model to 'double-check'. |
| jev_screenA | Judge fetched or pasted text before the agent reads it: prompt-injection probability, substance, and optional relevance to purpose. Recommendation: pass|review|block|skip. Use on untrusted web pages, issues, and pastes. Not for first-party repo files. |
| jev_rankA | Rank files, symbols, errors, or skills against a plain-language query. No embeddings. One Choice over candidate ids plus a Noul that the top hit actually answers the query (so a forced winner cannot masquerade as a match). Accepts up to 5,000 supplied candidates; each Jev call uses at most 250 options and larger lists are chunked then re-ranked. Pass candidates in; this server does not index the repo. |
| jev_gateA | Review a proposed patch and verify completion claims against supplied evidence in one Jev request. Returns review and verification reports, coverage, deterministic reason codes, and one overall auto|review|escalate action. Does not apply changes or execute tests. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| pack-coding-loop | Exact question JSON used by the coding-loop recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-review | Exact question JSON used by the review recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-verify | Exact question JSON used by the verify recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-screen | Exact question JSON used by the screen recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-rank | Exact question JSON used by the rank recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-gate | Exact question JSON used by the gate recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-tool-route | Exact question JSON used by the tool-route recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
| pack-step | Exact question JSON used by the step recipe. Tune thresholds in code, not by rewriting Jev into a chat prompt. |
TDQS
Scored across 9 tools
The tools are largely distinct, but a few are deliberately composite or overlapping: jev_step is effectively jev_coding_loop plus jev_tool_route, and jev_gate bundles jev_review and jev_verify. An agent must read the long descriptions carefully to select the right orchestration recipe, so misselection is possible despite the clear use-case notes.
All tools share the consistent jev_ prefix and lowercase snake_case style, which makes the set feel predictable. However, the suffix pattern is mixed: verb-style names like jev_review, jev_verify, and jev_rank sit alongside noun-style names like jev_gate, jev_step, and jev_coding_loop, plus the compound noun jev_tool_route.
Nine tools is a well-scoped count for this kind of workflow server, and each tool maps to a recognizable phase: screening, ranking, evaluation, routing, stepping, review, verification, and final gating. None of the tools feel like filler, and the set is large enough to cover meaningful decisions without becoming unwieldy.
The toolset covers the full intended lifecycle for a decision/review server: untrusted text screening, candidate ranking, arbitrary typed evaluation, tool/step routing, next-action loop decisions, diff review, claim verification, and a combined final gate. The deliberate exclusion of file edits/execution is consistent with the stated purpose, and jev_evaluate acts as an escape hatch to prevent dead ends.