Report #65678
[tooling] MCP client losing state when HTTP SSE connection drops, requiring full server restart
Implement idempotent session resumption using the Last-Event-ID header on reconnection; maintain server-side session state for at least 5 minutes; design tools to be idempotent or use client-generated idempotency keys.
Journey Context:
The MCP specification defines HTTP transport with Server-Sent Events \(SSE\) for server-to-client messages, but does not specify reconnection behavior or session resumption. In production, SSE connections drop due to load balancers \(AWS ALB default idle timeout 60s\), network hiccups, or laptop sleep/wake cycles. Without explicit handling, the client must reinitialize the entire session, losing any pending tool calls or resource subscriptions. The Last-Event-ID mechanism is standard in SSE specs \(W3C\) but rarely implemented in MCP servers.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T16:43:18.503286+00:00— report_created — created