MCP Inspect overview
Snapshot your MCP server, detect breaking changes in schemas and descriptions, and gate pull requests with deterministic contract checks.
An MCP server is an API contract whose consumers are partly probabilistic. Two kinds of change break things, and existing API tooling only sees one of them:
- Structural. A removed tool, an argument that became required, a narrowed enum. A correct caller stops working.
- Semantic. A rewritten description, a changed annotation, different server instructions. A request can still validate while a model picks a different tool.
MCP Inspect treats both as contract changes.
#The loop
develop → inspect → diff → merge → observe → learn → safely evolve
| Step | What it is |
|---|---|
| Snapshot | Connect over stdio or streamable HTTP, discover everything the protocol describes, normalise it into a deterministic document with a SHA-256 fingerprint per entity. |
| Diff | Compare two surfaces with an MCP-aware engine across four severities, with the old value, the new value, an explanation and a suggested migration on every change. |
| Check | The same analysis in CI, with a configurable failure threshold and one pull request comment that stays current. |
| Observe | Optional telemetry, emitted by your own process, that records which argument names were supplied — never their values. |
#What it is not
It is not a proxy or a gateway. Nothing here sits in your request path. The inspector connects the way any MCP client would, on demand, and telemetry is emitted asynchronously by your own process and is allowed to be dropped. A total outage of the hosted service cannot affect your server.
#Start here
Start in the hosted console. The
getting started guide explains scheduled contract
captures and approved preview access to the local CLI. Public CLI and Action
releases are pending; the npm package named mcp-inspect is a different project.
The CLI works with no account and no network beyond the server being inspected once installed. Initialize its configuration and capture a baseline:
mcp-inspect init --snapshot
# Make your change and rebuild the server, then:
mcp-inspect check --baseline-file .mcp-inspect/surface.json
Getting started walks through the first comparison. MCP breaking changes explains which contract changes can affect callers and where integration tests still matter.