Two capabilities added to the MCP server address client heterogeneity at the transport and protocol level. Stateless transport support allows HTTP-only clients — serverless functions, polling-based agents, one-shot tool runners — to call MCP tools without establishing a persistent session. Multi-version protocol handling lets the server accept clients that speak different MCP revisions concurrently, so a newer agent SDK and a pinned older integration can coexist on the same server without forcing either to upgrade.
Stateless client support
- Session-free operation. A stateless client identifies itself on first contact; the server handles each subsequent request independently without allocating session state, making it suitable for workloads where connection persistence is not guaranteed.
- Coexistence with persistent sessions. Stateless and stateful clients share the same server endpoint; the server distinguishes them on the first request without requiring separate ports or paths.
- No load-balancer session affinity required. Deployments running short-lived tool-invocation agents no longer require sticky routing at the load balancer layer.
Multi-version protocol negotiation
- Per-connection version selection. Each client declares its maximum supported protocol version during the handshake; the server responds with the highest mutually supported revision and applies it for the lifetime of that connection.
- No forced migration. Integrations pinned to an earlier protocol revision continue to operate while newer clients adopt updated message formats — no configuration flags are required to enable this.
- Capability-scoped advertising. The server advertises its capability set against the negotiated version, so clients receive only features defined in their supported revision.
Both changes are transparent to existing stateful, single-version deployments. Operators who need to restrict which protocol versions the server accepts can do so through the MCP server configuration; the default permits all supported revisions.