「三個協定」那篇說 MCP 是三者裡最成熟的。成熟不代表不動。2026 年 7 月 28 日的規格改版,是它問世以來動得最大的一次,而且是動骨架,不是加功能。
多數讀者不會自己寫 MCP server,但你會接別人寫的。這次改版的意思是:接下來一年,你接的 server 會分成「照新規格做的」和「還沒改的」兩種,行為不一樣,出問題時要知道自己在跟哪一種講話。
拿掉的 加上的 連線狀態(session id) 每個請求自帶版本與能力 初始化握手 server/discover 先問能力 server 主動發請求 多輪往返:server 回「還需要什麼」,客戶端補 Roots、Sampling、Logging(棄用) 快取提示(ttl、public/private) 斷線重送 斷了就重發,別等它補
改了什麼,用白話講
MCP 變成「無狀態」。以前客戶端跟 server 之間有一個連線編號,server 記得你是誰、上次講到哪;現在拿掉了,每一個請求自己帶版本號和能力清單,server 不記得你。需要跨請求記東西的,server 要自己發一個明確的把手(handle)當參數傳來傳去。對使用者的意思:server 不會「記得上一輪」,每次都是新的一次。
初始化握手拿掉,改成 server/discover。客戶端可以先問一句「你支援什麼」,也可以不問直接發請求,版本不合會回一個明確的錯誤。
多輪往返(MRTR)。以前 server 想問客戶端東西(要哪個目錄、要不要幫我叫模型、請使用者填個表)是主動發請求;現在改成 server 回一個「還需要以下輸入」的結果,客戶端補齊後重發原請求。每個回覆都多一個欄位標明「完成」或「還需要輸入」。對使用者的意思:以後 server「反問你」會變成一種正式的互動,不是各家自己發明的花招。
三個功能棄用:Roots(告訴 server 哪些目錄可以碰)、Sampling(server 借用客戶端的模型)、Logging。至少留十二個月,但新的實作不該再用。建議的替代:目錄用工具參數傳、要用模型直接接模型商的 API、log 寫到 stderr 或用 OpenTelemetry。
其他值得知道的:清單類回覆要附快取提示(可以快取多久、能不能被中間層共享),伺服器應該用固定順序回傳工具清單(這能提高模型端的提示快取命中率);斷線重送機制拿掉,斷了客戶端要自己重發;授權那邊也收緊了幾條(要驗發行者、動態註冊改為次要)。
對接 MCP 的人,實際上要注意什麼
分兩種情況。
你接的是別人的 server。先看它支援哪個版本,兩邊不合會直接錯,錯誤訊息會寫版本不支援,不要當成「壞了」。用到 Roots 或 Sampling 的 server,接下來一年會陸續改,改版時行為會變,接的時候把版本記下來。Codex 9 月已經支援這個版本,Claude Code 的支援狀況以官方文件為準。
你的工具是「多輪往返」的一方。如果 server 開始回「還需要輸入」,你的工具會把問題轉給你或自己補。這跟「誰當總指揮」那篇是同一個問題:哪些輸入可以讓 AI 自己補,哪些要問你?預設請保守,涉及權限、路徑、對外的,讓它問。
三條安全規則沒變:不裝來源不明的、金鑰不進對話、先唯讀再開寫。這次改版加了一條實務上的:server 換版本時重做一次唯讀測試,因為無狀態化之後有些 server 的行為會跟你記得的不一樣。
動手做
盤點你接的 MCP:
下面是我目前接的 MCP server 清單。請幫我逐一列出: 1. 它宣告支援的 MCP 協定版本是哪一個(2025-11-25 或 2026-07-28 或更早)? 2. 它有沒有用到已棄用的功能(Roots、Sampling、Logging)? 3. 它會不會反問我(多輪往返)?如果會,哪些問題我希望它停下來問我,而不是自己補? 4. 換版本後我該做的唯讀測試是什麼? 清單:(貼上,或叫它去讀 MCP 設定檔)
Claude Code 打 /mcp 看接了哪些、狀態如何;/context 看它們佔多少。
做對了的樣子:你接的每個 server 你都知道它是哪個版本;用到棄用功能的你有記下來、知道要追它改版;server 反問你的情況你決定過哪些讓它自己補;換版本後你重做過一次唯讀測試。
站內延伸
- 三個協定各是什麼 → MCP、A2A、AP2
- 哪些輸入該讓 AI 自己補、哪些要問你 → 誰當總指揮
- 接了外部資料之後的另一種風險 → 找方法Prompt Injection 防護
來源: Model Context Protocol:2026-07-28 Key Changes(無狀態化、server/discover、多輪往返、resultType、棄用 Roots/Sampling/Logging、快取提示、斷線重送移除、授權變更、十二個月棄用政策);OpenAI Codex changelog(MCP 相關支援)。
這次改版動的是骨架:無狀態、多輪往返、三個功能棄用。接 server 的人要知道自己接的是哪個版本、它會不會反問、反問時哪些該你答。三條安全規則不變,多一條:換版本重做唯讀測試。
你接的外接工具,
會分成改過和沒改的
什麼時候看這張:你接的外接工具突然行為變了,或說版本不支援。
- 它不再記得上一輪,每次請求都是全新的一次
- 三個舊功能進入淘汰,至少還留十二個月
- 以後它會正式反問你缺什麼,不再自己亂補
第一個動作列一張表寫下你接了哪些外接工具、各是哪個版本,不確定的先標問號。打 /mcp 看清單,三分鐘。