On July 28, 2026, the Model Context Protocol drops the one feature nearly every production deployment has had to fight: the session ID.
Key Takeaways
- MCP’s stateless spec finalizes July 28, 2026, removing the
initializehandshake andMcp-Session-Idheader entirely. - Servers can now run behind ordinary round-robin load balancers instead of needing sticky sessions.
- MCP spans 10,000+ public servers and 97 million monthly SDK downloads, with Anthropic, OpenAI, Google, Microsoft and AWS all shipping support.
- Existing servers keep working: the spec adds a 12-month deprecation window for older versions.
The slides embedded below walk through this rewrite in ten steps, built with AskDeck from a short brief, if you want the quick version first.















Swipe or scroll sideways to flip through the 15-slide deck →
What does it mean for MCP to become “stateless”?
Becoming stateless means the protocol no longer tracks which server instance is talking to which client, so any request can land anywhere. Under the outgoing design, a client opens with an initialize request declaring its version and capabilities, the server answers and hands back a session ID, and every subsequent request on that conversation must carry the same Mcp-Session-Id header. Under the official release candidate, that handshake disappears: the protocol version, client info, and client capabilities now ride along in _meta on every request, and a new server/discover method lets a client ask for server capabilities when it wants them, while the Mcp-Session-Id header and the protocol-level session are removed entirely. As one Microsoft engineer wrote, “the handshake is gone, the session header is gone, and the sticky-routing dance that horizontal deployments used to need is no longer part of the protocol at all.”
That matters because most MCP deployments run behind a load balancer spreading traffic across many machines. As TechCrunch put it, “real companies spread traffic across dozens of servers that don’t talk to each other by default, so today’s MCP servers have to do extra work just to keep track of who’s who,” which has been a significant headache for anyone running an MCP server at scale. Servers that still need to remember something, like a shopping cart, mint an explicit ID and have the model pass it back as a plain argument instead of relying on hidden transport state.
What breaks, and what keeps working?
Nothing breaks on July 28 itself. Existing servers and clients keep functioning, since beta releases of the Python, TypeScript, Go, and C# SDKs are available now, and existing servers and clients do not break today or on July 28. The real risk is procrastination: MCP transitions to MCP 2026-07-28 on July 28, 2026, allowing a 12-month deprecation window for legacy versions, so teams that skip planning inherit a hard deadline in mid-2027. Anyone using the experimental Tasks feature from the prior spec has more urgent work, since it’s redesigned around the stateless model entirely.
What do MCP Apps and Tasks add?
MCP gains two official extensions: rich in-conversation interfaces and a proper system for long jobs. MCP Apps lets servers ship interactive HTML interfaces that hosts render in a sandboxed iframe, with tools declaring their UI templates ahead of time so hosts can prefetch, cache, and security-review them before anything runs. Tasks moves out of the core spec: the Tasks extension reshapes the lifecycle around the stateless model, so a server can answer tools/call with a task handle and the client drives it with tasks/get, tasks/update, and tasks/cancel, while tasks/list is removed because it can’t be scoped safely without sessions. Anyone using the old experimental Tasks API needs to migrate before production use.
Does going stateless make MCP less secure?
Removing sessions closes old holes but opens implementation-dependent ones, so security now rides on how well each team builds its server. Akamai researchers, quoted by SecurityWeek, say the update ends session hijacking but that “since the protocol is transitioning to a stateless model and introducing rich UI apps and asynchronous tasks, critical security boundaries are now entirely dependent on how developers implement them.” New risks include predictable state handles that could let an attacker hijack an active workflow or trigger unauthorized cross-tenant actions, and header-based data leakage if developers map sensitive values like API keys into the new mandatory headers, making them visible to every load balancer and proxy along the path. Authorization was hardened too: clients must now validate response identity under RFC 9207, closing a mix-up attack common in MCP’s single-client, many-server pattern.
Common questions
Do I need to act the moment the spec ships? Not on July 28 itself. Current servers keep running, but the 12-month deprecation clock starts then, so migration planning should begin well before mid-2027.
Does “stateless” mean MCP servers can’t remember anything? No. Applications still track state; they do it explicitly, through IDs the model passes back as arguments, instead of a hidden protocol-managed session.
If you want a faster way to brief a team on what’s changing, the example deck below breaks the same rewrite into ten slides, built with AskDeck from a short prompt, free to download and adapt.