
mcp-scan
io.github.CodingSelimPublished by GitHub account CodingSelimv0.2.1Updated Oct 24, 2026
Passive security scanner: audits MCP servers against the OWASP MCP Top 10, graded A-F.
The publisher's own server: scan.mx Email Diagnostics
Overview
Passive security scanner that audits MCP servers against the OWASP MCP Top 10 and grades them A–F, usable from the CLI or as an MCP server.
- What you can do
- Scan MCP servers: audit a stdio command or Streamable HTTP endpoint, enumerate its tools, prompts and resources, and get a 0–100 score with an A–F grade.
- List checks: show the 12 static checks covering secrets, injection, SSRF, path traversal, tool poisoning, scope, supply chain, auth and telemetry.
- Reason across a whole toolset for the lethal trifecta of private-data reads, untrusted input and exfiltration.
- Report results as console, JSON or SARIF output, with a non-zero exit code at or above a configurable severity for CI gating.
- When to use it
- Use it before wiring an unfamiliar or third-party MCP server into an agent, or in CI to gate MCP configuration changes. It suits reviewers who want a quick, read-only gut-check of a server's advertised surface rather than a runtime penetration test.
- Requirements
- Runs locally over stdio via npx (npm package owasp-mcp-scan); Node.js and network access to fetch the package are needed. Scanning a stdio target spawns that command, and HTTP targets may need an Authorization header passed on the command line. No accounts or environment variables are declared.
Installation
In SourceWeft
- Open mcp-scan in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
🛡️ mcp-scan
Passive security scanner for Model Context Protocol servers. Point it at any running MCP server; it audits the live server against the OWASP MCP Top 10 and grades it A–F. Read-only, so it is safe to run against production.
[npm] [License: MIT] [Node] [CI] [Tests] [OWASP MCP Top 10]
[mcp-scan console report: firecrawl-mcp graded F with critical findings]I ran it against the 12 most-installed MCP servers. 9 of them failed. No install, no config, no exploiting anything.
Why
MCP tool descriptions are fed straight into your model's context, and most public servers were never security-reviewed. A bad one can hide instructions in a description, expose a raw-shell tool, or leak a key; and your agent acts on it. Endor Labs found 82% of servers prone to path traversal, 34% to command injection.
mcp-scan is the gut-check before you wire a server in. It's passive: it reads advertised capabilities and analyzes them statically, never invoking tools, so it's safe against production servers.
How it works
- Connects to the server over stdio or Streamable HTTP and enumerates every advertised tool, prompt, and resource.
- Runs 12 static checks across that surface: secrets, injection, SSRF, path traversal, tool poisoning, excessive scope, and more.
toxic-flowreasons across the whole toolset for the lethal trifecta (reads private data + ingests untrusted content + can exfiltrate), the shape single-tool scanners miss.- Scores 0-100 and grades A-F (any critical forces F). Emits console, JSON, or SARIF.
It never calls a tool, never fuzzes, and never sends an exploit. The worst it does is read what the server already tells everyone.
Real findings on real servers
12 popular npm servers, actual output (snapshot 2026-07-11, full benchmark):
9 of 12 flagged, 3 clean, every row audited finding-by-finding, false positives stripped rather than padded. Reproduce any row yourself:
Use it
CLI
As an MCP server, let your agent scan servers on demand ("scan this MCP server before I add it"). Add to any client; this mcpServers shape works in Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, and Gemini CLI:
OpenAI Codex (~/.codex/config.toml):
Exposes two tools: scan_mcp_server (audit a stdio/HTTP target) and list_checks.
Claude Code plugin
Also on the official MCP registry as io.github.CodingSelim/mcp-scan. Publishing steps: PUBLISHING.md.
What it checks
Full OWASP MCP Top 10 (2025) coverage, 12 checks:
toxic-flow is the standout, it reasons across the whole toolset, catching the GitHub-MCP / email-agent injection shape that per-tool checks miss.
Output & CI
console (default) · json · sarif (GitHub Code Scanning). Exit code is non-zero at/above --fail-on (default high), so it gates CI:
Limitations (read these)
- Static analysis can't see runtime sandboxing, a server that safely confines paths still flags them. Verify against actual enforcement.
- Auth and transport checks apply to HTTP targets only.
- Heuristics favor recall, so triage findings in context. When a rule is tightened to kill a false positive, a test pins the intended behavior.
- Scanning a stdio target spawns that command, so run it only on servers you trust.
Develop
Checks are pure and isolated (src/checks/), reusing detectors in src/detectors/. See CONTRIBUTING.md.
References
OWASP MCP Top 10 · MCP Security Cheat Sheet · Vulnerable MCP Project · MCPTox
MIT © CodingSelim
Source: README.md at commit cdb4707
Tools
0Version history
1- v0.2.1LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Scan integrations
scan.mx Email Diagnostics
mx.scanOfficial publisher
Remote MCP server that lets an assistant run graded email deliverability and DNS checks on a domain, covering MX, SPF, DKIM, DMARC, blacklists and more.
MTG Trade Scan
fr.mtg-trade
Scans Magic: The Gathering binder photos, turning uploaded page images into processed scan jobs, with free daily pages and paid credits.

mcp-guard
Published by GitHub account diegoperezg7
Security scanner for MCP servers that checks tool lists for poisoning, shadowing, excessive permissions, leaked secrets and weak transports.

PredictionScan
Published by GitHub account JordanKarst
Derived prediction-market flow, price changes, trader research and news. 11 read-only tools.

x402-sec-scan
Published by GitHub account 6mickswagger9
Local stdio MCP server exposing an x402 paid API for AI agents, settling payments in USDC on Base through a CDP facilitator.