Protocol transport/auth evolution
MCP streamable HTTP session ID unknown session tools/list initialize Mcp-Session-Id
Initialization succeeds, but the next tools/list call returns an unknown-session response.
Agent Quick Fix
Repair against the current MCP contract, then keep the change narrow and source-backed.
Product: MCP
Current-contract area: Session identifier is not persisted across HTTP requests
Likely root cause: Initialization succeeds, but the next tools/list call returns an unknown-session response.
Repair direction: Verifier checks current transport framing, session lifecycle, auth flow, and backwards compatibility where specified.
Symptom
Initialization succeeds, but the next tools/list call returns an unknown-session response.
Why This Happens
Local client/server code can each be valid for an earlier protocol revision; only the negotiated current spec defines transport, session, and authorization behavior.
Common Wrong Fixes
- Changing local code without checking the current external contract.
- Retrying the same install, build, or API call with no version/source change.
- Applying a broad unsafe bypass when a narrow compatibility fix is available.
Codex Search Keywords
These are the search terms observed in a neutral Codex validation run for this failure shape.
MCP streamable HTTP session ID unknown session tools/list initialize Mcp-Session-Id
site:modelcontextprotocol.io specification streamable http mcp-session-id unknown session
https://modelcontextprotocol.io/specification/2025-06-18/basic/transports