Skip to content

MCP Inspector reports the server as legacy Streamable HTTP, not modern (2026-07-28) #224

Description

@mattzcarey

What happens

Connecting the MCP Inspector to the server (seen on https://staging.mcp.cloudflare.com/mcp while testing #223) shows the transport as legacy Streamable HTTP, not the modern MCP 2026-07-28 protocol.

What we know

  • src/mcp-handler.ts serves /mcp with @modelcontextprotocol/server 2.0.0's createMcpHandler, passing no handler options. The comment there says the SDK defaults to "stateless 2025 compatibility, with a fresh server and no protocol session".
  • The server does speak modern MCP when a client negotiates it: tests/mcp-client.test.ts ("automatic protocol negotiation › selects modern MCP, then lists and calls tools without a session") and tests/mcp-modern.test.ts (server/discover, stateless tools/list / tools/call) pass against the SDK's own client.
  • So either the Inspector negotiates or classifies differently from the SDK client, or the deployed server doesn't advertise modern support the way the Inspector expects.

To find out

  1. Which Inspector version, and what signal it uses to decide "modern" vs "legacy" (a server/discover probe? MCP-Protocol-Version / Mcp-Method headers? the initialize result?).
  2. Whether the Inspector's first, unauthenticated probe gets the 401 Bearer challenge and then falls back to legacy, never retrying the modern path after OAuth completes.
  3. Whether createMcpHandler needs an option to prefer or advertise 2026-07-28 rather than the 2025 compatibility default, or whether this is an Inspector bug to report upstream.

Expected

Once authorized, a client that supports 2026-07-28 (the Inspector included) should end up on the modern stateless protocol against this server.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions