觀點 · 資訊分享

MCP 2026-07-28 新規格正式發布:無狀態核心上路,SSE 傳輸與 DCR 進入淘汰期

Model Context Protocol 在 7/28 正式發布新版規格:移除握手與 session、改用請求回應式的無狀態協定,並把動態客戶端註冊(DCR)與舊的 HTTP+SSE 傳輸列為棄用。四大 SDK 同步更新,有破壞性變更。

發布
2026-07-29
篇幅
約 4 分鐘 · 1,793 字
結構
7 節 + 3 題常見問題
標籤
#MCP#Model Context Protocol#無狀態協定#AI 代理
MCP 2026-07-28 新規格正式發布:無狀態核心上路,SSE 傳輸與 DCR 進入淘汰期

一句話看懂:MCP 在 7 月 28 日正式發布新版規格:協定核心從「有狀態」變成「無狀態」,不用再握手、也不用 session;同時舊的 HTTP+SSE 傳輸與動態客戶端註冊進入淘汰期,升級要留意破壞性變更。

MCP 2026-07-28 規格正式發布與遷移重點資訊圖卡:MCP 變成無狀態的請求回應協定,任一伺服器實例都能處理請求

先用白話講:「無狀態」是什麼?

MCP 是 AI 工具與外部服務之間的通用插座。舊版的通訊像打電話:先撥通、自我介紹(握手),對方給你一個分機號碼(session 編號),之後每句話都要報分機,而且得轉回同一位接線生。

新版像寄明信片:每張明信片都寫好寄件人與內容,任何一個櫃台都能處理,不需要記得你上次說過什麼。所以伺服器好擴充,也更容易放在一般的負載平衡器後面。

發生什麼事

MCP 官方部落格在 7 月 28 日宣布,正式釋出 2026-07-28 版規格,同時發布可以馬上使用的 SDK。官方提到,第一級 SDK 每月下載量接近 5 億次,TypeScript 與 Python 兩個 SDK 的累計下載量都超過 10 億次。

重點有這些:

  • 無狀態核心:取消 initialize 握手與 Mcp-Session-Id,每個請求在 _meta 帶上協定版本、客戶端身分與能力;想事先知道伺服器能力,可選用新的 server/discover
  • 多輪往返請求(MRTR):伺服器中途要問使用者(例如確認動作),不再佔著長連線,而是回傳「需要輸入」,由客戶端補上答案後重試
  • 標頭路由:Streamable HTTP 請求必須帶 Mcp-Method 與 Mcp-Name,閘道、限流器與 WAF 不用解析 JSON 內容就能分流
  • 可快取的列表:列表與資源讀取結果帶 ttlMs 與 cacheScope,並有固定排序,客戶端能快取工具清單
  • 擴充套件:正式建立擴充套件框架,Tasks 與 MCP Apps、企業管理式授權(EMA)等並列

授權與棄用

項目 變更
授權伺服器的 iss 參數 應回傳,客戶端在兌換授權碼前必須驗證(RFC 9207),補上一個授權伺服器混淆的缺口
動態客戶端註冊(DCR) 正式棄用,改走用戶端 ID 中繼資料文件(CIMD);DCR 暫時仍可用,之後版本會移除
憑證綁定 客戶端憑證綁定到發出它的授權伺服器,不可跨伺服器重複使用
Roots、Sampling、Logging 棄用,至少還能用 12 個月,新實作不該採用
舊的 HTTP+SSE 傳輸 正式棄用,有一年的過渡期

Tasks 也移出實驗性核心,變成 io.modelcontextprotocol/tasks 擴充套件,改用輪詢式的 tasks/get 與新的 tasks/update;變更通知改走單一的 subscriptions/listen 串流,客戶端依通知類型選擇訂閱。

給開發者的技術細節

新版的一次工具呼叫,是單一獨立請求(取自官方範例的簡化版):

POST /mcp HTTP/1.1
MCP-Protocol-Version: 2026-07-28
Mcp-Method: tools/call
Mcp-Name: search
  • SDK:TypeScript、Python、Go、C# 四個第一級 SDK 今天起都支援新規格;Rust SDK 是 beta
  • 官方說明有遷移成本,尤其是依賴 session 識別碼的程式;需要跨呼叫保存狀態時,建議讓工具發出明確的代號(例如購物籃編號),由模型在後續呼叫帶回來
  • 棄用政策:每個功能從棄用到最早能移除,至少間隔 12 個月

我的看法

這是 MCP 上線以來變動最大的一次,而且是破壞性的。好消息是官方把遷移路線、棄用期限講得很清楚:Roots、Sampling、Logging 與 SSE 傳輸都有至少 12 個月的緩衝,不會一夜之間失效。

如果你只是「使用」別人的 MCP 工具,多半只要等你用的工具與 SDK 更新;但如果你自己寫伺服器或客戶端,我會先盤點三件事:有沒有用到 session、有沒有依賴舊的 SSE 傳輸、授權流程是不是靠 DCR。這三塊最可能需要改。先在測試環境跑一遍,再逐步上線。

名詞小辭典

  • MCP:AI 工具與外部服務之間的通用連接規格。
  • 無狀態(Stateless):伺服器不用記住上一次的連線內容,每個請求都能獨立處理。
  • SSE:伺服器持續推送資料給客戶端的一種連線方式。
  • DCR/CIMD:兩種讓客戶端向授權伺服器登記身分的方式,新規格偏向後者。

資料來源

常見問題

MCP 是什麼?
Model Context Protocol,AI 工具與外部服務之間的通用連接規格,讓 AI 能用統一的方式呼叫工具、讀取資料。可以想成 AI 世界的通用插座。
這次最大的改變是什麼?
從「雙向、有狀態」的連線,變成「請求與回應、無狀態」。以前要先握手、拿 session 編號,之後的請求都得回到同一台伺服器;現在每個請求自己帶齊資訊,任何一台伺服器都能處理,部署與擴充更像一般的網站服務。
我已經用 SDK 開發,要馬上升級嗎?
官方說明四大 SDK 都已更新到新規格,並附詳細的遷移說明;有依賴 session 識別碼的程式,遷移成本比較高。建議先看遷移說明、在測試環境驗證,再決定升級時程。
LINE