Skip to main content

Open-Source MCP Vulnerability Advisory Database

Daily MCP Vulnerability Ingestion & Sync Advisories Count OSV Schema 1.6.0 License: MIT Security Explorer Release Updates

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): Ingests passports.json.gz from mcp-fingerprints to 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.json and docs/data/updates/updates_history.json.

Automated PyPI Release Pipeline on Data Updates

mcp-vulnerabilities is dependent on two distinct upstream data sources:

  1. External OSV/NVD/CVE security advisories (stored in data/vulnerabilities/)
  2. 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:

  1. Triggers (.github/workflows/daily_sync.yml): Executes daily at 03:00 UTC. It is also triggered reactively via a repository_dispatch event (upstream_fingerprints_updated) whenever mcp-fingerprints publishes a new release.
  2. Cross-Repo Sync: Automatically pulls the latest passports.json.gz release asset from mcp-fingerprints (with a raw fallback mechanism in case of missing asset or rate limits).
  3. Substantive Change Detection (VULN_CHANGES): Assesses whether new security advisories, catalog updates, or passport changes (data/passports.json.gz) occurred.
  4. Automated Semantic Version Bump: Runs scripts/bump_version.py --apply to increment the patch version.
  5. Static Artifact Recompilation: Rebuilds docs/data/ catalog shards, advisory indexes, and release delta feeds via site_builder and updates_builder.
  6. Automated PyPI Publishing: Tags the commit (vX.Y.Z), creates an official GitHub Release with generated release notes, and invokes ./.github/workflows/release.yaml to 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)

Source distribution for mcp-vulnerabilities 1.0.2
File Size Uploaded
mcp_vulnerabilities-1.0.2.tar.gz 208.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-vulnerabilities 1.0.2
File Interpreter ABI Platform
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 log

Release 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

Release history Release notifications | RSS feed

1.0.4

2 release files

1.0.3

2 release files

This release

1.0.2 This release

2 release files

1.0.0

2 release files

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