MCPがステートレス化:2026-07-28仕様がセッションを廃止
Model Context Protocolがステートフルなセッション要件を撤廃し、MCPサーバーが通常のサーバーレスインフラ上で動作可能に。Cloudflareが破壊的変更とエージェント展開への影響を解説。

Model Context Protocolが大幅な改訂を受けました。2026-07-28仕様により、MCPは完全にステートレス化され、コアリクエストパスからセッションハンドシェイクとMcp-Session-Idヘッダーが削除されました。これは破壊的変更ですが、展開を劇的に簡素化するものです。
従来、MCPサーバーはローカルアプリケーション向けに設計されたオリジナルのSTDIOトランスポートから受け継いだ、クライアントとサーバー間のステートフルな接続を必要としていました。サーバーがリモート化されると、そのステートフル性はスティッキーセッション、オープンストリーム、メッセージリプレイへと変換され、ほとんどのインタラクションで不要なオーバーヘッドとなっていました。現在では、各リクエストがプロトコルバージョン、クライアントID、必要な機能を保持します。クライアントはオプションでserver/discoverを呼び出してサーバーを検査できますが、必須ではありません。
Cloudflareにとって、これはMCPサーバーがDurable Objectを必要とせず、通常のWorkerで実行できることを意味します。McpAgentプリミティブはプロトコル準拠には不要になりましたが、アプリケーション自体が状態を必要とする場合にはDurable Objectが依然として有用です。CloudflareのAgents SDKは初日から新仕様をサポートしており、McpAgentから新しいcreateMcpHandlerへの移行パスは本番環境でテスト済みです。
オープンストリームなしのエリシテーション
elicitation/createのようなサーバー発信リクエストは、従来オープンストリームに依存していました。新しいプロトコルはこれをMulti Round-Trip Requests(MRTR)に置き換えます。サーバーは必要なものを記述したinput_required結果を返すことができ、クライアントは回答を収集して操作を再試行します。リクエスト間でトランスポートセッションは保持されません。これは破壊的変更ですが、運用面でははるかにシンプルです。
HTTPインフラがMCPを理解可能に
仕様はStreamable HTTPリクエストにMcp-MethodおよびttlMsおよびcacheScopeヒントは再接続間でキャッシュを安定させるのに役立ちます。
認可が厳格化
MCPは現在、事前登録済みクライアントを優先し、動的登録にはClient ID Metadata Documents(CIMD)を使用し、Dynamic Client Registration(DCR)は非推奨のフォールバックとして、2027年夏以降に削除予定です。仕様はまた、認可応答の混乱を防ぐためにRFC 9207発行者識別を採用しています。
成熟する標準のライフサイクル
機能は現在、Active、Deprecated、Removedに分類され、最低12か月の非推奨期間が設定されています。Roots、Sampling、Logging、DCR、およびレガシーHTTP+SSEトランスポートは今回のリリースで非推奨となり、チームにアップグレード計画の時間を与えています。
リクエストはサーバーに到着し、ツール、プロンプト、またはリソースを呼び出し、単に結果を返すことができます。保存するプロトコルセッションはありません。
| 側面 | 以前 | 以後 |
|---|---|---|
| セッション | 必須のハンドシェイク、Mcp-Session-Idヘッダー | ステートレス、リクエストパスにセッションなし |
| エリシテーション | オープンストリーム必須 | Multi Round-Trip Requests(MRTR) |
| ルーティング | JSONボディの解析が必要 | Mcp-MethodおよびMcp-Nameヘッダー |
| 展開 | スティッキーセッション、ストリーム調整が必要 | 通常のサーバーレスで実行可能 |
| 認可 | DCRがプライマリ | 事前登録済みクライアント、CIMD、DCRは非推奨 |