Daily AI Builder Brief - July 28, 2026
MCP finalizes its 2026-07-28 stateless spec today (beta SDKs shipping: Python 2.0.0b1, TypeScript v2, Go v1.7.0-pre.1, C# 2.0.0-preview.1), Claude Code 2.1.219 makes Opus 5 the default and unlocks depth-3 nested subagents, and Anthropic publishes its formal open-weights position.
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.
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
initializehandshake, noMcp-Session-Id, any request can hit any server instance. - Four Tier 1 MCP SDKs shipped betas: Python
2.0.0b1, TypeScriptv2, Gov1.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.219makes Opus 5 the default Opus and raises subagent nesting to depth 3. - Auth in MCP tightens toward OAuth/OIDC:
issvalidation (RFC 9207),application_typeat 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.
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
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
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
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
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.
Sources
- https://code.claude.com/docs/en/changelog
- https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/
- https://blog.modelcontextprotocol.io/posts/sdk-betas-2026-07-28/
- https://www.anthropic.com/news/position-open-weights-models
- https://www.anthropic.com/news
- https://techcrunch.com/2026/07/27/anthropics-dario-amodei-responds-doesnt-oppose-open-weight-models-but-fears-chinese-ai/
- https://www.theregister.com/devops/2026/07/23/model-context-protocol-prepares-to-break-with-its-stateful-past/