The MCP endpoint at https://mcp.specification.website/mcp connects fine but
serves no tools to any client that negotiates protocol revision 2026-07-28.
Claude Code has dropped all 6 tools and the audit_url prompt since roughly
2026-08-17 14:00 UTC.
The failure is quiet. initialize succeeds, so the client accepts the server
and loads its instructions — the server looks healthy in the client's server
list while exposing nothing.
What the client reports
tools/list failed (Invalid result for tools/list: missing required resultType —
servers implementing protocol revision 2026-07-28 MUST include it (the
absent-means-complete bridge applies only to earlier-revision servers));
retrying in 250ms
...
Failed to fetch tools: Invalid result for tools/list: missing required resultType
Failed to fetch commands: Invalid result for prompts/list: missing required resultType
Four retries with backoff, then both lists are discarded.
Reproduction
1. List results carry no resultType
curl -s -X POST https://mcp.specification.website/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H 'Mcp-Protocol-Version: 2026-07-28' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | jq '.result | keys'
Actual:
Expected for revision 2026-07-28: a resultType member alongside tools.
prompts/list behaves the same way (["prompts"]).
2. initialize downgrades a 2026-07-28 request
curl -s -X POST https://mcp.specification.website/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{
"protocolVersion":"2026-07-28","capabilities":{},
"clientInfo":{"name":"probe","version":"0.0.1"}}}' \
| jq -r '.result.protocolVersion'
Actual: 2025-11-25
Expected: 2026-07-28
https://specification.website/mcp/ states the server speaks the 2026-07-28
revision, with 2025-11-25, 2025-06-18 and 2025-03-26 kept as deprecated
fallbacks. The initialize path does not appear to know the current revision at
all.
3. No handshake-less path either
The endpoint's CORS preflight advertises Mcp-Method and Mcp-Name in
Access-Control-Allow-Headers, which suggests the handshake-less mode the spec
page describes for 2026-07-28. It is not implemented:
curl -s -X POST https://mcp.specification.website/mcp \
-H 'Content-Type: application/json' \
-H 'Mcp-Protocol-Version: 2026-07-28' \
-H 'Mcp-Method: tools/list' -d '{}'
# {"jsonrpc":"2.0","id":null,"error":{"code":-32601,"message":"Method not found: undefined"}}
A GET returns 405 with MCP endpoint requires POST with a JSON-RPC body.
So a 2026-07-28 client has no working route to the tool list.
Scope
Every list-shaped result the worker returns needs resultType when the
negotiated revision is 2026-07-28 — tools/list and prompts/list at minimum.
The tool schemas themselves are fine: all 6 tools carry valid inputSchema,
outputSchema, title and annotations.
Environment
- Endpoint:
https://mcp.specification.website/mcp
serverInfo: specification-website 0.2.0
- Client: Claude Code 2.1.237, Node 26.3.0, macOS
- First observed: between 2026-08-17 13:25 and 14:23 UTC. 101 consecutive
sessions since, all failing identically. Earlier sessions on the same client
version connected and listed tools normally.
- All three reproductions re-confirmed 2026-08-24.
The MCP endpoint at
https://mcp.specification.website/mcpconnects fine butserves no tools to any client that negotiates protocol revision 2026-07-28.
Claude Code has dropped all 6 tools and the
audit_urlprompt since roughly2026-08-17 14:00 UTC.
The failure is quiet.
initializesucceeds, so the client accepts the serverand loads its
instructions— the server looks healthy in the client's serverlist while exposing nothing.
What the client reports
Four retries with backoff, then both lists are discarded.
Reproduction
1. List results carry no
resultTypeActual:
["tools"]Expected for revision 2026-07-28: a
resultTypemember alongsidetools.prompts/listbehaves the same way (["prompts"]).2.
initializedowngrades a 2026-07-28 requestActual:
2025-11-25Expected:
2026-07-28https://specification.website/mcp/states the server speaks the 2026-07-28revision, with 2025-11-25, 2025-06-18 and 2025-03-26 kept as deprecated
fallbacks. The
initializepath does not appear to know the current revision atall.
3. No handshake-less path either
The endpoint's CORS preflight advertises
Mcp-MethodandMcp-NameinAccess-Control-Allow-Headers, which suggests the handshake-less mode the specpage describes for 2026-07-28. It is not implemented:
A
GETreturns405withMCP endpoint requires POST with a JSON-RPC body.So a 2026-07-28 client has no working route to the tool list.
Scope
Every list-shaped result the worker returns needs
resultTypewhen thenegotiated revision is 2026-07-28 —
tools/listandprompts/listat minimum.The tool schemas themselves are fine: all 6 tools carry valid
inputSchema,outputSchema,titleandannotations.Environment
https://mcp.specification.website/mcpserverInfo:specification-website0.2.0sessions since, all failing identically. Earlier sessions on the same client
version connected and listed tools normally.