MCP Fingerprints & Passport Knowledge Base
An open-source, automated database and knowledge base of Model Context Protocol (MCP) server passports, version signatures, and tool contract fingerprints.
Ecosystem Architecture & Scope
mcp-fingerprints serves as the authoritative open standard for structural Model Context Protocol server passports. It focuses purely on:
- Static AST Extraction: Deep parameter schema, docstring, prompt, and resource extraction across Python, TypeScript/JavaScript, Go, and Rust.
- Deterministic Cryptographic Hashing: Order-invariant and whitespace-insensitive canonical hashing (
canonical_hash,toolset_canonical_hash). - Supply-Chain Verification & Drift Tracking: Detecting tool tampering, description changes, and schema mutations across package versions.
- Open Catalog & Client Exporters: Serving enriched structural web catalogs with interactive parameter schema inspectors and 1-click config generators.
Key Features
- 5,058+ Indexed Passports: Cross-indexed across Smithery, npm, PyPI, and GitHub registries.
- Deep Parameter & Annotation Extraction: Captures parameter types, descriptions, defaults, enums, required flags, and protocol annotations (
readOnlyHint,destructiveHint,idempotentHint,openWorldHint). - Automated Daily Sync: Continuously crawls, extracts tool signatures, canonicalizes hash fingerprints, and tracks historical schema drift.
- Consolidated Snapshot: Pre-compiled
passports.json.gzfor rapid HTTP consumption (< 50ms startup time).
Quickstart: Search & Client Export
Search for available MCP servers:
python3 -m mcp_fingerprints.cli search "postgres"
Export an MCP server configuration for Claude Desktop:
python3 -m mcp_fingerprints.cli export-config @modelcontextprotocol/server-postgres --client claude
Export an MCP server configuration for Cursor:
python3 -m mcp_fingerprints.cli export-config @modelcontextprotocol/server-postgres --client cursor
Enriched Tool Parameter Schemas & Protocol Annotations
MCP Fingerprints extracts rich parameter schemas and runtime protocol hints directly from server source ASTs:
- Structured Parameter Metadata: Includes parameter types (
string,number,boolean,array,object), descriptions, required status, default values, and allowed enums. - Protocol Annotations: Captures MCP tool behavior hints:
readOnlyHint: Tool performs read-only operations without side effects.destructiveHint: Tool performs destructive operations (deletions, modifications).idempotentHint: Repeated invocations yield identical state.openWorldHint: Tool interacts with external/unconstrained network services.
- Transport Specifications: Captures supported transports (
stdio,sse,streamable-http,websocket) and required environment variables.
Fast Consumption
You can fetch the latest consolidated database in a single GET request:
curl -sL https://raw.githubusercontent.com/JMartynov/mcp-fingerprints/main/passports.json.gz | gzip -d > passports.json
Python
import gzip, json, urllib.request
url = "https://raw.githubusercontent.com/JMartynov/mcp-fingerprints/main/passports.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_passports']} MCP server passports.")
CLI Usage
The CLI provides a focused set of pure structural commands:
# Sync from registries
python -m mcp_fingerprints.cli sync --all
# Match a toolset hash against the knowledge base
python -m mcp_fingerprints.cli match <hash>
# Probe a server and extract its fingerprint
python -m mcp_fingerprints.cli probe <server_command>
# Validate schema invariants
python -m mcp_fingerprints.cli validate --dir data/fingerprints
# Build compressed snapshot
python -m mcp_fingerprints.cli snapshot
# Search the catalog
python -m mcp_fingerprints.cli search "query"
# Browse interactively via TUI
python -m mcp_fingerprints.cli browse
# Export client configurations (Claude, Cursor, Cline, Zed, Windsurf)
python -m mcp_fingerprints.cli export-config <server_name> --client claude
# Detect configuration drift against the latest passports
python -m mcp_fingerprints.cli detect-drift <config_file>
Releases
TestPyPI Dry-Run
You can perform an automated dry-run release to TestPyPI to verify packaging, metadata, and functionality before a production PyPI release.
- Navigate to the Actions tab in the GitHub repository.
- Select the Release to TestPyPI (Dry-Run) workflow.
- Click Run workflow.
- You can optionally provide a
version_suffix(e.g.rc1,b2) which will be appended to the current version inpyproject.tomlto avoid conflicts on TestPyPI. - The workflow will build artifacts, publish them to TestPyPI using Trusted Publishing, and execute an automated smoke test (
pip installinto a clean container).
License
MIT
Metadata
Release files for mcp-fingerprints 1.0.1
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_fingerprints-1.0.1.tar.gz | 145.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_fingerprints-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 237.0 kB
Release files / mcp_fingerprints-1.0.1.tar.gz
| Download URL | mcp_fingerprints-1.0.1.tar.gz |
|---|---|
| Size | 145.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
08a84426f5f0a19e81fa034df62a29b3ff6fe70dea947c3d41203e7705c43b2f
|
|
BLAKE2b-256 checksum How to use checksums |
87f47e396ac7d43b2090c92a7b9b14a222d3cbfc67d1fff05005030fbfbcd17c
|
| 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_fingerprints-1.0.1-py3-none-any.whl
| Download URL | mcp_fingerprints-1.0.1-py3-none-any.whl |
|---|---|
| Size | 91.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8f95ff102cfed78f3aa7a2cba33bec645f38839c78b1ec71c89067134dafafd
|
|
BLAKE2b-256 checksum How to use checksums |
e764991da3f4be39a647383a86c6770eb4de5655b313eab85a3aaab2e9420318
|
| 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