MCP Release Candidate Survival Guide
The MCP release candidate is the biggest update since the protocol launched. It is a test for everyone building clients, servers, and tools. The final version arrives on July 28, 2026. Use this time to find migration issues.
The biggest change is that MCP is now stateless.
If your implementation uses session IDs or initialization steps, you must change your code. Each request now carries version and capability data in the metadata.
This change helps infrastructure. Load balancers can send requests to any server instance. They do not need to keep a connection open to one specific server.
How to handle state:
- Do not hide state in the connection.
- Move state to an application handle.
- Let a tool return an ID like a basket_id.
- The model can pass this ID back in the next call.
Server-initiated requests also change. A server can only start a request while it processes a client call. If the server needs more info, it returns an InputRequiredResult. The client then retries the call with the new data.
MCP Apps are here. Servers can now provide HTML interfaces. Hosts render these in sandboxed iframes. This improves user experience but requires strict security.
Authorization is now tighter.
- Use OAuth 2.0 and OpenID Connect.
- Clients must validate the issuer parameter.
- Authorization servers must send the issuer parameter now.
Deprecations to watch:
- Roots, Sampling, and Logging are deprecated.
- They still work for now, but do not use them for new projects.
- Move roots to tool parameters.
- Move sampling to direct model provider APIs.
- Move logging to OpenTelemetry or stderr.
Schema updates:
- Tool schemas now use full JSON Schema 2020-12.
- You can use complex logic like oneOf or anyOf.
- Servers must limit schema depth to avoid errors.
- Update your error handling. The missing resource error now uses the standard JSON-RPC code -32602.
If you find issues, open an issue in the specification repository or ask in the Discord contributor channel.
Optional learning community: https://t.me/GyaanSetuAi
