spec and migration

Is your MCP server still on an old spec revision? How to check in 60 seconds | Portkeel

Published: 2026-08-01Updated: 2026-08-011 min read

Most teams cannot say which MCP revision their server negotiates, because nothing in the running server surfaces it. As of 2026-07-28 that matters, because a superseded revision is now the common case. Three ways to check in under a minute: curl the initialize path, use the MCP Inspector, or run the scanner. Each returns the negotiated protocolVersion string.

Why you cannot tell by looking

A server that responds is not a server on the current revision. The revision is negotiated per connection and reported in the response metadata, so a browser tab tells you nothing and an uptime check tells you less. You have to ask the server what it agreed to.

Method 1: curl

The fastest check is one request. The protocolVersion in the response is the answer.

check.sh
curl -s https://mcp.example.com/ \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}' \
  | jq -r '.result.protocolVersion'
# 2026-07-28   <- current
# 2025-11-25   <- superseded

Method 2: the MCP Inspector

If you prefer a UI, the Inspector connects and shows the negotiated revision and the advertised tools. Useful when you also want to eyeball the tool surface.

Method 3: the scanner

For a scored report rather than a raw string, run the spec check. It reports the revision, the transport, deprecated-feature usage and auth posture in one panel.

Reading the result

If it says 2026-07-28, you are current today. If it says anything earlier, you are behind, and the migration guide is the next read. Either way, remember that being current is not permanent: the deprecation window keeps moving.

If the result is “behind” and you would rather not own the fix, that is what the audit and migration service does.