The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Checkmcp listing page.
Vendor-neutral quality / security / context-cost audit & score for any MCP server.
One uvx/pipx command → an MCP Score /100 + causal opportunities (why the score), Lighthouse-style.
Installed from PyPI as
audit-mcp(the namecheckmcpwas already taken); the command isaudit-mcp. Brand, site and repo remain CheckMCP / checkmcp.dev.
audit-mcp mcp turns the auditor itself into an MCP server (stdio) exposing one tool,
audit_mcp_server — so your agent can answer "is this MCP server safe?" mid-conversation.
Registry name: io.github.H129hj/checkmcp
No dependencies (stdlib only). tiktoken optional for exact token counts.
inputSchema/outputSchema completeness.tools/list, paid on every request (the #1 pain of 2026).Hard floors: secret-in-schema → cap D, failed handshake → cap F. Every penalty is attributed: measure → mechanism → effect → Δscore.
| flag | what |
|---|---|
--json | machine-readable report |
--badge | SVG badge + README embed snippets |
--html | standalone SEO/GEO page (JSON-LD SoftwareApplication + FAQ) |
--repo owner/name | add maintenance/license/provenance signal from GitHub |
--token <bearer> | audit an OAuth-protected server |
--min-score N | CI: exit 1 if MCP Score < N |
--baseline file | CI: pin tool definitions; fail on regression (rug-pull) |
--gh-summary | CI: write a Markdown summary to $GITHUB_STEP_SUMMARY |
--deep | runtime depth via an external scanner (mcp-scan/snyk) if present |
--evals | behavioral sandbox: actually invokes read-only tools with canary inputs to catch tool-output prompt-injection, exfiltration vectors, secret/PII leakage and context bombs (sends real traffic; CI-fails on a malicious verdict) |
--evals)Static analysis catches declared danger; --evals catches runtime danger by actually invoking
read-only tools with canary inputs and inspecting the responses for tool-output prompt-injection,
exfiltration vectors and secret/PII leakage (multilingual; optional callback-canary confirms exfil).
CI-fails on a malicious verdict.
Beyond auditing, CheckMCP ships an in-band MCP gateway — a proxy you put between your agent and an MCP server. It inspects every call, and in active mode blocks/strips tool-poisoning & exfiltration before they reach the agent. Run it in your own infra (tool traffic never leaves your network):
See GATEWAY.md for config (passive/active, OAuth backends, policy, logs).
Full reports, public directory, live badges, continuous drift monitoring, a governance policy API and a hosted gateway at checkmcp.dev.
pipx install "audit-mcp[exact-tokens]" (cl100k_base); otherwise chars/4 approximation.python -m checkmcp.calibrate samples.json validates them against a labeled agent-success sample (per-pillar correlation + OLS-suggested weights + construct-validity R²) — supply real outcomes to close the loop.MIT.