代理框架
LangChain 1.4 將 MCP 納入核心套件,支援無狀態協定、工具清單快取與中途詢問
新的 `langchain.mcp` 以 FastMCP 統一連線、驗證及協定協商,取代獨立的 adapter 套件。伺服器可在工具執行途中要求補充資料或核准,LangChain 則把暫停點映射成可恢復的 LangGraph interrupt。

LangChain 釋出 1.4 系列後,MCP 用戶端不再主要依賴獨立的 `langchain-mcp-adapters`,而改由核心套件中的 beta 命名空間 `langchain.mcp` 提供。`MCPAdapter` 可接收 HTTP URL、本機 stdio 程式、記憶體內伺服器、多伺服器設定或 FastMCP `ClientGroup`,再把探索到的工具轉成一般 LangChain tools,供 `create_agent`、Deep Agents 或自訂 graph 使用。
架構上的關鍵改變是底層改用 FastMCP 4。它負責 streamable HTTP、stdio、OAuth 2.1、bearer token、連線池與協定協商,因此舊式 handshake/session 伺服器和採用 MCP `2026-07-28` 無狀態核心的伺服器可以共存。若使用 `ClientGroup`,每個後端能各自協商支援的協定版本與憑證;若把新舊伺服器混在單一舊式設定中,最舊後端仍可能使整組連線失去新版限定能力。
新版也補上兩個實際影響代理執行的功能。其一,伺服器可為工具清單提供 TTL,客戶端透過 `cache_mode` 選擇使用、更新或繞過快取,減少每輪代理開始前重抓 catalog 的延遲。其二,MCP elicitation 能在工具缺少參數、需要確認刪除等情況下暫停;LangChain 將其轉成 LangGraph interrupt,把狀態寫入 checkpointer,收到人工回答後再重試呼叫,而不必長時間維持同一條連線。
遷移並非只改 import:`MultiServerMCPClient` 收斂為 `MCPAdapter`,工具列舉 API、metadata 結構及 elicitation 流程都有調整,安裝也需 `langchain[mcp]>=1.4.0` 與 FastMCP 4。現階段只有 Python 版本且介面標示為 beta;工程團隊應特別測試舊伺服器協商、快取失效、暫停後程序重啟,以及同名工具的伺服器前綴是否會破壞既有提示或政策。