Update: MCP goes stateless July 28 — and servers can now ship UIs
The release candidate kills session IDs so any request hits any instance, adds sandboxed HTML apps and async tasks, and breaks a few things before July 28.

Copy markdown
No more session IDs, no sticky routing
The RC removes the initialize handshake and the Mcp-Session-Id header — client info now rides in _meta on every request, so any call can hit any server instance behind a plain round-robin load balancer. Self-hosting a remote MCP server at scale gets much cheaper: no shared session store, no sticky sessions.
MCP Apps: your server can ship a UI
A new Apps extension lets a server hand the host interactive HTML that renders in a sandboxed iframe, with UI actions routed over the same JSON-RPC as tool calls. This weekend you could build an MCP server that returns a live form, chart, or dashboard instead of a wall of text.
Tasks graduate to a real extension
Long-running work moves to a task-handle lifecycle: a tool call returns a handle and clients drive tasks/get, tasks/update, and tasks/cancel, and server-to-client requests now work without a persistent connection. Breaking bit: tasks/list is gone, since there are no sessions left to scope it.
Breaking changes to fix before the 28th
The missing-resource error code moves from -32002 to the JSON-RPC-standard -32602, and Roots, Sampling, and Logging are formally deprecated (12-month minimum runway). Audit any client that special-cases those codes or features before you upgrade.
Auth gets stricter
Clients must now validate the iss parameter per RFC 9207 and declare an OpenID Connect application_type at registration. Custom MCP OAuth clients that skip these will start failing against spec-compliant servers.
Gateways can route on the operation
New Mcp-Method and Mcp-Name headers let load balancers, gateways, and rate-limiters route per operation, and list results now carry ttlMs and cacheScope for client-side caching plus standardized W3C Trace Context in _meta. Per-tool rate limits and tracing get much easier to wire up.