MCP 2.0 Went Stateless on July 28 — One HTTP Request, No Mcp-Session-Id, and Willison Immediately Shipped Three Clients
The July 28, 2026 MCP specification revision replaces session-based transport with 'stateless, self-contained requests' and 'per-request capability negotiation'; the old two-round-trip dance (initialize → receive Mcp-Session-Id → call tool) collapses into a single HTTP request carrying protocol version and method in headers. Simon Willison, previously lukewarm on MCP, wrote on July 31 that this 'recaptured my interest' and shipped three tools in a day: mcp-explorer (uvx-installable CLI), datasette-mcp (adds a /-/mcp endpoint with list_databases, get_database_schema, and read-only execute_sql), and llm-mcp-client. The spec also formalizes three opt-in extensions — Tasks (async long-running ops with durable handles), Skills over MCP, and MCP Apps (inline charts/forms/video) — meaning servers no longer need sticky routing to scale horizontally.
↳ Follow the thread