Skip to main content

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

Metadata

Release files for mcp-audit-cli 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-audit-cli 0.1.0
File Size Uploaded Provenance
mcp_audit_cli-0.1.0.tar.gz 20.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-audit-cli 0.1.0
File Interpreter ABI Platform
mcp_audit_cli-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 40.5 kB

Release files / mcp_audit_cli-0.1.0.tar.gz

Download URL mcp_audit_cli-0.1.0.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
fddbc2d5d9578cc478c501566b03f29dad219a65bf6303a18324b3715cdd4d07
BLAKE2b-256 checksum
How to use checksums
8bb319e22308184671a6952bf1e3e0dc46368537c756d269d4fc6fb01b09e2be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / mcp_audit_cli-0.1.0-py3-none-any.whl

Download URL mcp_audit_cli-0.1.0-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35b67dea9fa4207b9386023ecd5d47711e45efa6d320a14cdc6e57c8ae4df8c6
BLAKE2b-256 checksum
How to use checksums
2c9a641f69348d152e4ab4254508cf9560dec89016d487dff078f2121daabbf7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Security for mcp-audit-cli 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page