01. The Operator's Take
Today MCP stops being a stateful protocol. The 2026-07-28 revision finalizes now, and it deletes the initialize handshake and the Mcp-Session-Id header that forced every production server behind sticky routing and a shared session store. If you run or plan to run a remote MCP server, this is the one thing to act on this week: stop building against the old session model, pin the beta SDK that matches your language, and run your real workload against it before older-client compatibility bites. New servers should be born stateless. Everything else today is downstream of this.
02. Executive Summary
| - | MCP 2026-07-28 spec locks today, its largest change since launch, and it's not backward compatible. | | - | The protocol goes stateless: no initialize handshake, no Mcp-Session-Id, any request can hit any server instance. | | - | Four Tier 1 MCP SDKs shipped betas: Python 2.0.0b1, TypeScript v2, Go v1.7.0-pre.1, C# 2.0.0-preview.1. | | - | MCP Apps (server-rendered UI in sandboxed iframes) and a graduated Tasks extension for long-running work are now in the spec. | | - | Claude Code 2.1.219 makes Opus 5 the default Opus and raises subagent nesting to depth 3. | | - | Auth in MCP tightens toward OAuth/OIDC: iss validation (RFC 9207), application_type at registration. | | - | A formal deprecation policy now enforces minimum 12-month Active to Deprecated to Removed windows. | | - | Anthropic published its open-weights position: not a ban, but export controls plus mandatory safety testing. |
03. Claude Code
2.1.219 makes Opus 5 the default and deepens subagent nesting
Opus 5 (claude-opus-5, 1M context, fast mode at $10/$50 per Mtok) is now the default Opus. Subagents can spawn nested subagents to depth 3 by default, set CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=1 to disable. Also added: sandbox.network.strictAllowlist to deny non-allowlisted hosts without prompting, a DirectoryAdded hook, and mcp_server_errors in the headless init event so skipped --mcp-config entries surface instead of failing silently. Changelog
2.1.218 moves code review to a background subagent
/code-review now runs as a background subagent, so review work no longer fills your conversation. Auto mode's classifier now adjudicates dangerous-rm, background-&, and unprovable-read-only Bash instead of popping permission dialogs. Changelog
04. Anthropic
Our position on open-weights models
Anthropic states it has never called for banning open-weight models, and that open-weight models without dangerous capabilities are a public good. Its stated policy preference is chip export controls, a crackdown on distillation, and mandatory safety testing for all sufficiently capable models, open or closed. The post landed after 77 organizations signed a letter defending open weights. Anthropic
05. MCP Ecosystem
The 2026-07-28 stateless spec finalizes today
The initialize/initialized handshake and Mcp-Session-Id header are gone. Client info moves into _meta, so any instance can serve any request behind a plain round-robin balancer. MCP Apps adds server-rendered UI via sandboxed iframes over JSON-RPC. Tasks graduates to an extension driven by tasks/get, tasks/update, and tasks/cancel. Error codes move from custom -32002 to standard -32602. MCP Blog
Beta SDKs are out, pin exact versions
Python 2.0.0b1 (FastMCP renamed MCPServer), TypeScript v2 (split into @modelcontextprotocol/server and /client, ESM-only, Node 20+), Go v1.7.0-pre.1 (opt-in StreamableHTTPOptions.Stateless = true), C# 2.0.0-preview.1 (v1.x stays functional). Run real workloads against them before finalization. MCP Blog
06. Broader AI
The open-weights fight is now a policy shift worth tracking: reports that parts of the administration are weighing restrictions on Chinese models put model availability itself on the table for builders, not just capability. TechCrunch
07. What This Means For Builders
| - | If you ship an MCP server, treat statelessness as the new default and plan the migration now, older clients won't speak the new revision. | | - | Pin beta SDKs to exact versions in CI, the package renames and splits will break loose ranges. | | - | Reach for depth-3 subagent nesting in Claude Code for real fan-out work, but cap it deliberately when you don't want the recursion. | | - | Watch model-availability policy the way you watch pricing, an export-control move can change which weights you're allowed to build on. |
08. Sources
1. https://code.claude.com/docs/en/changelog 2. https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/ 3. https://blog.modelcontextprotocol.io/posts/sdk-betas-2026-07-28/ 4. https://www.anthropic.com/news/position-open-weights-models 5. https://www.anthropic.com/news 6. https://techcrunch.com/2026/07/27/anthropics-dario-amodei-responds-doesnt-oppose-open-weight-models-but-fears-chinese-ai/ 7. https://www.theregister.com/devops/2026/07/23/model-context-protocol-prepares-to-break-with-its-stateful-past/ |