See what an MCP server exposes before you trust or connect it.
Listed on its own since 2026-09-25. Until then it was part of mcp-preflight, where its earlier checks remain.
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"mcp-surfaceprint","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# mcp-surfaceprint [](https://pepy.tech/project/mcp-surfaceprint) [](https://pypi.org/project/mcp-surfaceprint/) Inspect, fingerprint, and diff an MCP server’s declared capability surface. An MCP server can gain tools, parameters, resources, prompts, or new actions beneath an existing tool name. `mcp-surfaceprint` captures that client-visible surface as a deterministic snapshot, computes a stable digest when inspection is complete, and shows structural differences over time. Use it as: - an interface compatibility check for MCP server maintainers - a capability-change review gate for teams consuming third-party MCP servers If you want the deeper framing and experiments, see [You can’t prove an MCP server hasn’t changed](You%20can%E2%80%99t%20prove%20an%20MCP%20server%20hasn%E2%80%99t%20changed.md). ## Why You review an MCP server before installing it. Later, a dependency upgrade adds a destructive action beneath an existing tool name. The package version changed, but nothing gives you a durable, structural record of the declared capability surface you previously reviewed. `mcp-surfaceprint` turns that declaration into a versioned artifact that can be committed, compared, and reviewed. ## Quick start (snapshot + check) ```bash pipx install mcp-surfaceprint # Commit a baseline snapshot (one-time) mcp-surfaceprint --save mcp-surface.json "uv run server.py" git add mcp-surface.json # Later, locally or in CI: check the live server against the baseline mcp-surfaceprint check mcp-surface.json "uv run server.py" ``` A changed surface is not automatically unsafe; `check` turns it into an explicit review event rather than allowing it to pass unnoticed. > **Safety:** This command starts the server locally. MCP discovery does not invoke its declared tools, but a server can execute arbitrary code while handling any request. Use `--isolate…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.