Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"mcpwatch": {
"args": [
"-y",
"mcpwatch-mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Have I Been Pwned for MCP servers. Open-source security scanner that audits MCP servers against the OWASP MCP Top 10 and produces an A–F letter grade.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'mcpwatch-scanner' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked mcpwatch-scanner against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in security
An evil MCP server used for redteam testing
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
Proof primitive for AI agents on MultiversX. Anchor file hashes on-chain as verifiable proofs.
mcpki-server is the backend infrastructure for https://www.mcpki.org, enabling secure public key management and autonomous certificate handling for large language models (LLMs).
MCP Security Weekly
Get CVE alerts and security updates for io.github.lazymac2x/mcpwatch and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Have I Been Pwned for MCP servers. Open-source security scanner that audits MCP servers against the OWASP MCP Top 10 and produces an A–F letter grade.
MCPWatch is a security tool for the MCP ecosystem that:
Add to your MCP configuration:
{
"mcpServers": {
"mcpwatch": {
"command": "npx",
"args": ["-y", "mcpwatch-mcp"]
}
}
}
npx mcpwatch-scanner /path/to/mcp-server
- uses: lazymac2x/mcpwatch-action@v1
with:
path: .
fail-below: B
When running as an MCP server, MCPWatch exposes the following tools to your AI agent:
| Tool | Description |
|---|---|
scan_mcp_server | Scan a local MCP server by path — returns grade + per-check findings |
get_public_score | Fetch the live grade for any public MCP server by owner/repo slug |
list_leaderboard | Return the top/bottom N servers from the public leaderboard |
explain_check | Get a detailed explanation of any OWASP MCP Top 10 check by ID |
Ask Claude: "Use mcpwatch to scan the filesystem-mcp server at ~/mcps/filesystem-mcp before I add it to my config."
| ID | Check | Severity |
|---|---|---|
| MCP-01 | Command injection in tool handlers | Critical |
| MCP-02 | Path traversal in file tools | Critical |
| MCP-03 | Unauthenticated mutations | Critical |
| MCP-04 | Prompt injection via tool descriptions | High |
| MCP-05 | SSRF in URL-fetching tools | High |
| MCP-06 | Hardcoded secret leakage | High |
| MCP-07 | Over-permissive filesystem scope | Medium |
| MCP-08 | Missing rate limits | Medium |
| MCP-09 | Outdated dependencies with known CVEs | Medium |
| MCP-10 | Missing input schema validation | Low |
| Grade | Score |
|---|---|
| A | 90–100 — no Critical/High findings |
| B | 75–89 — no Critical findings |
| C | 60–74 — has Critical findings, minor impact |
| D | 40–59 — multiple Critical findings |
| F | 0–39 — severe/exploitable vulnerabilities |
Every public MCP server on Smithery, npm, and the official registry is scanned daily.
Live badge — drop into any README:
[](https://mcpwatch.pages.dev/servers/YOUR_OWNER/YOUR_REPO)
JSON API:
GET https://api.lazy-mac.com/mcpwatch/scan/{owner}/{repo}
mcpwatch/
├── packages/
│ ├── scanner/ # Core check engine (TypeScript, runs in Worker + CLI + Node)
│ └── cli/ # mcpwatch-scanner — npx runnable
├── workers/
│ └── crawler/ # CF Worker — scheduled crawl + scan (daily)
├── apps/
│ └── web/ # CF Pages — mcpwatch.pages.dev — public leaderboard
└── .github/
└── workflows/ # mcpwatch-action CI gate
scan_mcp_server / CLI)MIT — use it, fork it, contribute checks.
Pull reque