# 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`

[MCP and AI](/error-codes#mcp-and-ai)
