NiazMorshed2007/jev-review
Jev Review is a local MCP server that gives coding agents structured per-dimension quality scores on diffs or files, using a remote Jev API for scoring. It supports an iterative loop where agents baseline, improve, and rescore code with delta comparisons.
What it claims
Jev Review is a single-tool MCP server (jev_review) that submits an agent's task, diff, optional full files, and repository context to TypeSafe's remote Jev API and returns independent 1–10 scores with 0–1 confidence across ~15 always-evaluated quality dimensions (correctness, cognitive complexity, readability, modularity, coupling, changeability, security, testability, maintainability, and more), plus four evaluated only when evidence is present (performance, scalability, compatibility, observability). It deliberately returns no blended "82/100" overall score. Works with Claude Code, Codex, Cursor, and OpenCode; requires Node.js 20+ and a Jev API key.
How it works
The agent, not Jev, diagnoses and fixes. Jev returns typed Score/Choice/Noul decisions, not prose — no generated root-cause explanation of why a score is low. The server converts these into metric scores, confidence, coarse rubric hints, and (when previousEvaluation is supplied) per-metric deltas, improvements, regressions, and unresolved weaknesses. previousEvaluation is compared locally and is not re-sent as code context. Jev never reads the repo automatically — only explicitly supplied task/diff/files/repositoryContext leave the machine. The evaluator judges consequences in context and does not assume shorter functions, more layers, more comments, or more tests are automatically better.
How to use it
Set the key, then install per-client:
export JEV_API_KEY="your-key"
npx plugins add NiazMorshed2007/jev-review --target claude-codeVerify in Claude Code / Codex with /mcp. Manual Claude setup:
claude mcp add --scope user jev-review -- node /absolute/path/to/jev-review/dist/server.jsCursor launched from the macOS Dock won't inherit the shell key; expose it to GUI apps first:
launchctl setenv JEV_API_KEY "$JEV_API_KEY"OpenCode isn't in the plugins installer — clone and point opencode mcp add at dist/server.js. The repo commits a standalone dist/server.js bundle; npm run build regenerates it. Tests use local fakes and consume no API quota.
Trust boundary
flowchart LR
A[Coding agent] -->|task + diff + files| B[Local MCP server]
B -->|TLS Authorization header| C[api.typesafe.ai/v1/systemone]
B -.->|previousEvaluation compared locally| BLimits
Requires a TypeSafe Jev API key and a network call — there is no local scoring. Live jev-latest behavior shows a ~32,768-token ceiling on submitted state; this is unpublished and may change, and returns max_tokens_exceeded, at which point the server asks the agent to split the change. Review context (including any secrets you pass) leaves your machine for TypeSafe; the authors warn against supplying secrets or unrelated proprietary content and say Jev complements rather than replaces dedicated security tooling.
Organisations named here
- TypeSafe
- Claude Code
- Cursor
- OpenCode
Technologies named here
- Jev Review
- Claude Code
- Codex
- Cursor
- OpenCode
- MCP
- Jev API
- Model Context Protocol
- Node.js
Techniques named here
- Typed Score/Choice/Noul evaluation
- Repeated scalar feedback loop review
- Per-dimension scoring without blended score
Related in coding-agents
