The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the MCP Doctor listing page.
Diagnose, secure, and benchmark your MCP servers.
Zero-config CLI that auto-discovers MCP server configs across Claude Code, Cursor, VS Code, Windsurf, and Claude Desktop — then tests connections, flags security issues, and benchmarks latency in seconds.
MCP servers are becoming the backbone of AI-assisted development. But as you add more servers across more tools, things break silently:
mcp-doctor gives you a single command to check everything, across every tool, in seconds.
That's it. No config needed — it finds your servers automatically.
| Command | Description |
|---|---|
doctor | Run all checks at once (scan + security + bench) |
scan | Test all MCP server connections |
security | Audit configs for security issues |
bench | Benchmark server response times |
serve | Run as an MCP server (stdio transport) |
All commands support --json for machine-readable output.
doctor — Full checkup (recommended)Runs scan, security, and bench in one go and prints a summary.
scan — Test all MCP server connectionsDiscovers configs and verifies each server responds to a JSON-RPC handshake.
security — Audit configs for security issuesChecks for leaked secrets, overly broad permissions, and risky command patterns.
bench — Benchmark server response timesMeasures JSON-RPC round-trip latency for every configured server.
mcp-doctor can also run as an MCP server itself, exposing scan, security, bench, and doctor as tools your AI assistant can call directly.
When invoked without arguments and stdin is piped, it automatically starts in server mode using stdio transport. You can also explicitly run:
This means your AI assistant can diagnose its own MCP infrastructure on demand.
Use mcp-doctor in CI to catch broken servers and leaked secrets automatically:
The action outputs JSON via ${{ steps.mcp-doctor.outputs.result }} for downstream processing.
All commands support --json for structured output — useful for CI pipelines, dashboards, or scripting:
| Tool | Config Auto-Detected |
|---|---|
| Claude Code | ✅ |
| Claude Desktop | ✅ |
| Cursor | ✅ |
| VS Code | ✅ |
| Windsurf | ✅ |
mcp-doctor reads each tool's config file from its standard location and merges all discovered servers into a single view.
initialize handshake against every serverRequires Node.js 18+.
Contributions are welcome! Open an issue or submit a pull request.
git checkout -b my-feature)