Open-Source MCP Vulnerability Advisory Database
An open-source, automated Open Source Vulnerability (OSV 1.6) compliant security advisory database specifically curated for the Model Context Protocol (MCP) ecosystem.
Sources
- CVE List v5: Official CVE JSON 5.0 records.
- GitHub Security Advisories (GHSA): Live GraphQL/REST security alerts.
- OSV.dev: Unified open-source vulnerability database.
- National Vulnerability Database (NVD): CVE 2.0 vulnerability metrics and CVSS scores.
Snapshot Downloads & Mirrors
You can download pre-compiled vulnerability database snapshots, OSV buckets, and air-gapped enterprise bundles directly from our latest GitHub Release.
Download the latest consolidated JSON snapshot:
curl -sL https://github.com/JMartynov/mcp-vulnerabilities/releases/latest/download/vulnerabilities.json.gz -o vulnerabilities.json.gz
Verify integrity using the provided SHA-256 checksums:
curl -sL https://github.com/JMartynov/mcp-vulnerabilities/releases/latest/download/SHA256SUMS.txt -o SHA256SUMS.txt
sha256sum -c SHA256SUMS.txt --ignore-missing
Fast Consumption
You can fetch the complete vulnerability database snapshot in a single GET request:
curl -sL https://raw.githubusercontent.com/JMartynov/mcp-vulnerabilities/main/vulnerabilities.json.gz | gzip -d > vulnerabilities.json
Python
import gzip, json, urllib.request
url = "https://raw.githubusercontent.com/JMartynov/mcp-vulnerabilities/main/vulnerabilities.json.gz"
with urllib.request.urlopen(url) as resp:
with gzip.GzipFile(fileobj=resp) as gz:
data = json.load(gz)
print(f"Loaded {data['total_vulnerabilities']} MCP security advisories.")
CI/CD Integration
You can easily prevent vulnerable MCP server dependencies from entering your production environment or being configured into AI client settings by adding this official, reusable GitHub Action to your CI workflows.
Audit AI Client Configurations
- name: Audit MCP Servers
uses: JMartynov/mcp-vulnerabilities@v1
with:
config-path: ".claude/claude_desktop_config.json"
fail-on-severity: "HIGH"
Audit Dependency Manifests
- name: Audit Transitive Dependencies
uses: JMartynov/mcp-vulnerabilities@v1
with:
manifest-path: "package.json"
fail-on-severity: "HIGH"
CLI Usage
# Ingest latest advisories from live APIs
python -m mcp_vulnerabilities.cli sync --live-api
# Validate OSV schema compliance
python -m mcp_vulnerabilities.cli validate --dir data/vulnerabilities
# Compile compressed snapshot
python -m mcp_vulnerabilities.cli snapshot
Migrated Security Mechanisms & Tooling Suite
mcp-vulnerabilities is the authoritative home for Model Context Protocol security analysis, vulnerability intelligence, and advisory correlation. All security-specific mechanisms migrated from mcp-fingerprints are unified here:
- Cross-Repository Passport Correlation (
mcp_vulnerabilities.sync_manager): Ingestspassports.json.gzfrommcp-fingerprintsto map OSV advisories directly against 5,000+ structural server passports and tool contract signatures. - Multi-Engine Heuristic Threat Analyzer (
mcp_vulnerabilities.analyzer): Scans MCP servers for unsafe execution patterns, command injection vectors, and missing parameter bounds. - Protocol & Contract Linter: Validates MCP tool definitions against protocol standards, schema invariants, and capability risk classifications.
- Headless REST API Daemon (
mcp-vuln serve): Microservice daemon providing JSON endpoints for CI/CD gates, local scanners, and AI client configuration verifiers.
Version-Separated Vulnerability Tracking
Unlike generic package databases, mcp-vulnerabilities maintains version-separated vulnerability tracking tailored to the MCP ecosystem:
- Per-Version Isolation: Clearly differentiates between vulnerable releases (e.g.,
v1.0.0) and patched safe releases (e.g.,v1.1.0), preventing false positive alerts on updated installations. - Discrete Advisory Matrices: Links specific CVEs, GHSAs, and OWASP MCP categories to the exact tool signatures and endpoints affected.
- Automated Safe Version Recommendation: Identifies the minimum recommended non-vulnerable version and generates 1-click pinned client configurations for Claude Desktop, Cursor, Cline, Zed, and Windsurf.
Web Explorer & Live Updates Portals
The project provides interactive, client-side static web portals hosted directly from GitHub Pages:
- Unified MCP Security Explorer (
docs/index.html):- Directory Tab: Search and filter 5,000+ indexed MCP servers with capability risk badges, version status indicators, and tool previews.
- Advisories Tab: Full-text search across all published OSV/CVE advisories with severity filters (CRITICAL, HIGH, MEDIUM, LOW) and OWASP MCP categories.
- Deep-Dive Server Inspector: Interactive version switcher, tool parameter schema tables (
Name,Type,Required,Default,Enum,Description), security commentary, and 1-click configuration exporters.
- Release Updates & Advisory Delta Feed (
docs/updates.html):- Real-time release timeline tracking newly published advisories and patched MCP servers per version.
- Summary metrics: new advisories, updated servers, and patched versions.
- Standalone JSON feed endpoints available at
docs/data/updates/latest_update.jsonanddocs/data/updates/updates_history.json.
Automated PyPI Release Pipeline on Data Updates
mcp-vulnerabilities is dependent on two distinct upstream data sources:
- External OSV/NVD/CVE security advisories (stored in
data/vulnerabilities/) - Upstream MCP server fingerprints and tool schemas from
mcp-fingerprints(data/passports.json.gz)
To keep downstream tools, scanners, and Python consumers immediately updated with zero human intervention:
- Triggers (
.github/workflows/daily_sync.yml): Executes daily at 03:00 UTC. It is also triggered reactively via arepository_dispatchevent (upstream_fingerprints_updated) whenevermcp-fingerprintspublishes a new release. - Cross-Repo Sync: Automatically pulls the latest
passports.json.gzrelease asset frommcp-fingerprints(with a raw fallback mechanism in case of missing asset or rate limits). - Substantive Change Detection (
VULN_CHANGES): Assesses whether new security advisories, catalog updates, or passport changes (data/passports.json.gz) occurred. - Automated Semantic Version Bump: Runs
scripts/bump_version.py --applyto increment the patch version. - Static Artifact Recompilation: Rebuilds
docs/data/catalog shards, advisory indexes, and release delta feeds viasite_builderandupdates_builder. - Automated PyPI Publishing: Tags the commit (
vX.Y.Z), creates an official GitHub Release with generated release notes, and invokes./.github/workflows/release.yamlto publish the updated wheel to PyPI via OIDC Trusted Publishing.
Documentation
- Specification: Details the OSV 1.6 schema extensions, semantics, and vulnerability invariants.
- Cross-Repo Architecture: Blueprint for structural passport ingestion and correlation workflows.
- Implementation: Architecture blueprint covering ingestion pipelines, state machines, and acceptance tests.
Testing
Execute the acceptance test suite to validate the end-to-end functionality:
uv run pytest -v tests/test_acceptance_*.py
License
MIT
Metadata
Release files for mcp-vulnerabilities 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mcp_vulnerabilities-1.0.2.tar.gz | 208.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_vulnerabilities-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 383.1 kB
Release files / mcp_vulnerabilities-1.0.2.tar.gz
| Download URL | mcp_vulnerabilities-1.0.2.tar.gz |
|---|---|
| Size | 208.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bdb274e4ea1de2dcc3b09a9fe4a3e38dfa3be088dacbcf004e068fd8e2899a5f
|
|
BLAKE2b-256 checksum How to use checksums |
15f9c95243f420d48e394bcbd0aed220ebf344e7ce0088308c4a41fa091ada44
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / mcp_vulnerabilities-1.0.2-py3-none-any.whl
| Download URL | mcp_vulnerabilities-1.0.2-py3-none-any.whl |
|---|---|
| Size | 174.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d946f3a46965b69e25816d363093a3ee36b69255d381e3b1f34f7d6a5cd0e9e1
|
|
BLAKE2b-256 checksum How to use checksums |
c593ce37245462efc6aa5f782dbc40b9d1be3596c21bcee8ceb658739fee58df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency log