Anthropic Workshop - 基於 MCP 構建 Agents

最近,我觀看了 Anthropic 應用 AI 團隊的 Mahesh 關於模型上下文協議 (MCP) 的精彩演講,這是一場關於如何利用 MCP 構建更強大 AI Agents 的深度技術探討。在 AI 快速發展的今天,MCP 作爲一個開放協議,正在改變 AI 應用和 Agents 與工具、數據源交互的方式。

MCP 的核心理念

MCP 的基本理念非常簡單:模型只有在我們提供給它們的上下文中才能發揮作用。過去一年中,我們見證了 AI 系統從簡單的聊天機器人快速進化爲具備豐富數據和上下文接口的強大系統,爲用戶提供更加個性化的體驗。

MCP 正是爲解決這一需求而誕生的開放協議,它讓 AI 應用和 Agents 能夠與各種工具和數據源無縫對接。這一協議的靈感主要來自語言服務器協議 (LSP),通過規範化 AI 應用與外部系統的交互方式,MCP 建立了三個核心接口:用戶控制的預定義模板 (提示)、模型控制的功能調用 (工具),以及應用程序控制的數據 (資源)。

MCP 的價值所在

MCP 引入的標準化 AI 開發模式爲整個生態系統創造了顯著價值。應用開發者只需確保客戶端兼容 MCP,就能輕鬆連接到任何服務器;工具和 API 提供者只需構建一次 MCP 服務器,就能被各類 AI 應用廣泛採用;終端用戶則能體驗到功能更強大、上下文更豐富的 AI 應用;而企業內部則可以明確劃分團隊職責,加速開發流程,避免重複工作。

MCP 的快速採納

令人振奮的是,短短几個月內,MCP 就獲得了廣泛採納。Cursor 和 WindSurf 等應用程序和 IDE 爲開發者提供了優質的上下文支持;社區已構建並開源了約 1100 個服務器;多家公司發佈了官方集成方案;衆多開源項目也爲核心協議和基礎設施層貢獻了力量。這種迅速的生態系統擴張證明了 MCP 解決了行業中的關鍵痛點。

MCP 的核心概念

MCP 的架構圍繞着三個核心概念展開,它們相互協作,爲 AI 系統提供強大的上下文能力。

工具 (Tools) 是由模型控制的功能接口。當服務器向客戶端應用程序公開工具時,客戶端中的模型可以智能地決定何時調用這些工具。工具的範圍極其廣泛,從讀取數據、寫入數據到執行各類操作,幾乎可以涵蓋任何功能。Mahesh 在演講中特別強調,工具讓模型能夠 "看見" 並 "操作" 外部世界,大大擴展了 AI 系統的能力邊界。

資源 (Resources) 則是暴露給應用程序並由其控制的數據。這些資源可能是文本文件、JSON 文件,或者記錄用戶與服務器交互的日誌。與僅通過聊天機器人進行文字交流不同,資源提供了一個豐富的接口,使應用程序和服務器之間能夠進行更復雜的數據交換。在 Claude for desktop 中,資源以附件形式呈現,用戶可以選擇將其添加到聊天中併發送給模型。

提示詞 (Prompts) 是用戶控制的預定義模板,專爲與特定服務器的常見交互而設計。例如,在一個支持 MCP 的 IDE 中,開發者可以使用簡單的斜槓命令如/ghpr <PR_ID>與 Agent 互動,觸發一個完整的提示模板,幫助總結 PR 工作進展。

打造 Agents 的關鍵功能

MCP 不僅提供了基礎組件,還引入了幾個關鍵功能,使構建真正智能的 Agents 系統成爲可能。

最引人注目的是採樣 (Sampling) 功能,它允許 MCP 服務器請求客戶端進行 LLM 推斷,而不必自己實現 LLM 交互邏輯。這種設計巧妙地實現了請求的聯邦化,讓客戶端保持對隱私和成本的完全控制,同時服務器仍能獲得所需的智能決策支持。

可組合性 (Composability) 則打開了系統架構的新維度。在 MCP 中,任何應用程序、API 或 Agent 都可以同時充當客戶端和服務器,形成鏈式交互系統。這使得開發者能夠構建層次化的 LLM 系統,每一層專注於特定任務,共同協作解決複雜問題。

爲了解決服務器發現和驗證問題,MCP 註冊表 (Registry) 正在積極開發中。這一中央化元數據服務將幫助用戶和開發者找到並安全使用可靠的 MCP 服務器,同時支持服務器版本控制,並允許 Agent 動態發現新功能和數據源。

已知 MCP 服務 (Well-known MCP) 則是一種優雅的補充機制,允許網站或服務通過標準路徑 (.well-known/mcp.json) 暴露其 MCP 端點。這使得 Agent 可以直接發現並使用這些服務,無需通過註冊表,爲自上而下的服務發現提供了便捷途徑。

生動的實際演示

Mahesh 首先演示了 Claude for desktop(一個 MCP 客戶端)如何與 Github 服務器無縫連接,自動分類倉庫中的問題並將它們添加到 Asana 項目中。整個過程展示了 Agent 如何智能地決定調用哪些工具、何時調用,以及如何處理多系統協作的複雜工作流程。

更爲深入的是使用 MCP Agent 框架創建研究 Agent 的演示,該 Agent 被賦予研究量子計算對網絡安全影響的任務。令人印象深刻的是,這個框架只需約 80 行代碼就能定義一個複雜的 Agents 系統,包括研究 Agent、事實覈查 Agent 和報告撰寫 Agent,它們協同工作完成任務。Mahesh 強調,MCP 讓開發者能夠專注於 Agent 的核心任務和循環邏輯,而不必擔心底層系統的連接細節。

這些演示生動展示了 MCP 如何簡化不同系統間的集成,讓 Agents 能夠訪問和利用它以前從未 "見過" 的系統,大大擴展了 AI 應用的可能性邊界。

未來與展望

隨着 MCP 生態系統的快速發展,Mahesh 分享了幾個令人期待的未來方向。協議將進一步完善有狀態和無狀態連接的處理,提升流媒體傳輸能力,支持協議中的首次傳遞,改進命名空間管理,以及增強服務器的主動行爲能力。

特別值得關注的是 MCP 與計算機使用能力 (Computer Use) 的結合前景。Mahesh 描繪了一個 Agent 能夠同時通過 API 和用戶界面與系統交互的未來,這將爲那些沒有開放 API 的系統提供解決方案。想象一下,Agent 不僅能通過標準化接口調用功能,還能在需要時 "點擊" 用戶界面,這將極大擴展 Agents 的能力範圍。

開放協作的未來

MCP 作爲 AI Agents 系統的基礎協議正在改變遊戲規則。它最令人興奮的方面在於使 Agents 能夠自我進化——通過發現並選擇合適的工具,Agents 可以不斷增強自身能力,無需重新編程。正如 Mahesh 所強調的,MCP 的開放性是其核心價值,它鼓勵跨組織協作和創新,共同推動 AI 應用的邊界不斷擴展。

這種開放協議的出現,將使我們從爲特定任務構建專用 Agents,轉變爲創建能夠適應各類挑戰的通用 Agents 平臺。隨着註冊表的完善和遠程服務器的普及,我們有望看到一個繁榮的 Agents 生態系統,它們能夠協同工作,解決過去難以想象的複雜問題。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/jovLtdgir-N5YPJ8ahXKAg