Skip to main content

Automated security scanner and grading CLI for MCP servers.

Project description

MCPaudit

Automated security scanner + grading system for Model Context Protocol (MCP) servers.

MCPaudit gives teams a fast A-F risk grade, concrete findings, and machine-readable output before an MCP server is wired into an agent workflow. The free OSS CLI is the trust builder; the natural paid tier is registry monitoring, scheduled scans, historical grades, dashboards, and policy gates for CI/procurement review.

Quick Start

pip install mcp-audit-cli

mcp-audit scan ./path/to/mcp-server
mcp-audit scan https://example.com/mcp --format json
mcp-audit scan ./server --format sarif --output mcp-audit.sarif

The legacy mcpaudit command is kept as a compatibility alias for the original detector framework.

Why It Exists

MCP servers turn tools, files, prompts, and APIs into model-accessible capabilities. That makes security posture visible at the model layer: weak auth, broad file access, tool poisoning, leaked secrets, unsafe command execution, and permissive network settings can become agentic blast radius.

MCPaudit is built to make that risk obvious early.

Vulnerability Coverage

The repository includes a 30-class CVE-style threat model and an MVP scanner with 15 MCP-focused checks:

  • unauthenticated HTTP transports
  • wildcard CORS
  • plaintext HTTP endpoints
  • hardcoded secrets
  • command injection sinks
  • shell execution
  • path traversal
  • broad filesystem access
  • unsafe deserialization
  • prompt or tool poisoning markers
  • over-broad tool descriptions
  • missing rate limiting
  • debug mode enabled
  • server/version disclosure
  • missing audit logging

Output Formats

  • table / terminal: human-readable report with grade and findings
  • json: stable JSON for dashboards and CI
  • sarif: GitHub code scanning compatible output

Architecture

mcpaudit/
├── src/mcpaudit/           # Original Click/Rich detector framework
├── src/mcp_audit/          # Local-first CLI scanner and SARIF/JSON renderer
├── docs/threat-model.md    # Full vulnerability taxonomy narrative
├── docs/vulnerability-taxonomy.schema.json
├── docs/vulnerability-taxonomy.json
├── tests/                  # Detector and CLI scanner tests
└── pyproject.toml

Grading

Findings are weighted by severity and converted into an A-F grade:

  • A: no material findings
  • B: low risk
  • C: moderate risk
  • D: high risk
  • F: critical or severe accumulated risk

Selling Angle

Suggested first buyer: security-conscious teams adopting MCP internally who need a quick risk signal before allowing new servers into agent environments.

Paid tier wedge:

  • registry monitoring for public/private MCP servers
  • scheduled scans and drift alerts
  • historical grades per server
  • team dashboards and SARIF ingestion
  • policy gates for CI and procurement review

Development

python -m venv .venv
pip install -e ".[dev]"
pytest
ruff check .
mcp-audit scan tests --format sarif --output mcp-audit.sarif

Roadmap

  • v0.1 - Bootstrap + threat model
  • v0.2 - Core detection engine MVP
  • v0.3 - CLI MVP with JSON and SARIF
  • v0.4 - Package publishing and launch assets
  • v0.5 - Cloud registry proof of concept

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_audit_cli-0.1.0.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_audit_cli-0.1.0-py3-none-any.whl (19.7 kB view details)

Uploaded Python 3

File details

Details for the file mcp_audit_cli-0.1.0.tar.gz.

File metadata

  • Download URL: mcp_audit_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for mcp_audit_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fddbc2d5d9578cc478c501566b03f29dad219a65bf6303a18324b3715cdd4d07
MD5 7b283ac34e58011a10dc5b88510322a8
BLAKE2b-256 8bb319e22308184671a6952bf1e3e0dc46368537c756d269d4fc6fb01b09e2be

See more details on using hashes here.

File details

Details for the file mcp_audit_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mcp_audit_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for mcp_audit_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35b67dea9fa4207b9386023ecd5d47711e45efa6d320a14cdc6e57c8ae4df8c6
MD5 45b2c858a780995f50c24e851c62fa58
BLAKE2b-256 2c9a641f69348d152e4ab4254508cf9560dec89016d487dff078f2121daabbf7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page