Ultimate

X_MCP_HEADER_MISMATCH

Means

an MCP request header is absent or disagrees with the body

Typical cause

a modern POST /mcp without MCP-Protocol-Version and Mcp-Method (and Mcp-Name for tools/call, resources/read, prompts/get), or one whose value differs from the body after decoding a =?base64?…?= sentinel. Answered JSON-RPC -32020 (HeaderMismatch), HTTP 400: a load balancer may route on a header while the server runs the body

Fix

send MCP-Protocol-Version equal to params._meta["io.modelcontextprotocol/protocolVersion"], Mcp-Method equal to method and Mcp-Name equal to params.name or params.uri (base64 sentinel for a non-ASCII value), then resend the request

Listed under MCP and AI

This page as markdown