1. MCP 的動機與背景
核心概念:模型的能力很大程度上取決於其接收到的上下文信息。
演進路徑:從早期 Chatbot 需要手動輸入所有上下文,發展到模型能夠直接連接數據源和工具,從而實現更強大、更個性化的 AI 應用。
MCP 的目標:作為一個開放協議,旨在實現 AI 應用、Agent 與各種工具、數據源之間的無縫集成。
圖1: AI 上下文能力演進示意圖
2. MCP 的類比與構成
類比 API: 如同 API 標準化了 Web 應用前後端的交互。
類比 LSP (Language Server Protocol): 如同 LSP 標準化了 IDE 與編程語言工具的交互。
MCP 定義了 AI 應用與外部能力交互的標準方式,主要包含三個核心接口。
圖2: MCP 類比與三大核心接口
接口 1: Prompts (提示)
控制方:「用戶」 👤
預定義的模板,由用戶手動觸發,用於常見的、可預測的交互模式。
例如:文檔問答模板、代碼總結模板。
接口 2: Tools (工具)
控制方:「模型」 🧠
模型 (LLM) 可以根據需要自主決定何時調用這些工具來完成任務。
例如:檢索數據、發送郵件、更新數據庫。
接口 3: Resources (資源)
控制方:「應用」 🖼️
應用控制的數據源,應用可以靈活決定何時以及如何使用這些數據。
例如:圖片、文本文件、JSON 數據、即時數據流。
3. MCP 解決的問題:碎片化
當前痛點:不同團隊、不同應用構建 AI 系統的方式各異,導致嚴重的碎片化和重複開發。
MCP 的願景:標準化 AI 開發流程。應用開發者只需兼容 MCP,即可零成本連接到任何支持 MCP 的 Server。
- MCP Server (服務器端): 封裝各種系統和工具 (數據庫、CRM、API、版本控制等),為 LLM 提供標準訪問接口。
- MCP Clients (客戶端): 需要上下文和工具能力的 AI 應用 (如 Cursor, Windsurf, Goose 等)。
圖3: MCP 如何解決集成碎片化問題
4. MCP 的核心價值
- 應用開發者 👨💻: 一次兼容,處處連接。應用可無縫接入任何 MCP Server,無需定製開發。
- 工具/API 提供者 🛠️: 構建一次 MCP Server,即可被眾多 AI 應用集成和使用。
- 最終用戶 😊: 獲得功能更強大、上下文感知能力更強的 AI 應用體驗。
- 企業 🏢: 明確團隊職責(如基礎設施團隊維護 Server,應用團隊專注應用),加速 AI 落地。
圖4: MCP 為生態系統帶來的價值
5. MCP 採用情況
已在多個領域獲得關注和採用:
- AI 應用/IDE: Github, 文檔站點等。
- MCP Server: 社區已構建超千個 Server,Cloudflare、Stripe 等公司提供官方集成。
- 開源社區:貢獻活躍。
圖5: MCP 生態採用概覽
6. 構建 MCP 應用
MCP Client (客戶端):
- 調用
Tool
執行操作。 - 查詢
Resource
獲取數據。 - 填充
Prompt
模板與用戶交互。
MCP Server (服務器端):
- 暴露
Tool
、Resource
和Prompt
供 Client 使用。
7. Tool, Resource, Prompt 詳解
圖7: MCP 三大接口詳解
Tool (模型控制)
- LLM 自主決定調用時機。
- 用途:檢索/發送數據、更新數據庫、寫文件、執行代碼等。
Resource (應用控制)
- 應用決定如何使用。
- 內容:圖片、文本、JSON、結構化數據等。
- 支持靜態和動態資源。
- 支持資源變更通知 (Server 可主動通知 Client 更新)。
Prompt (用戶控制)
- 用戶手動選擇並觸發。
- 用途:定義常用交互模板,簡化用戶操作。
8. MCP 與 Agent 的關係
MCP 是 Agent 的基礎協議。
增強型 LLM (Augmented LLM): 指 LLM 與檢索系統、工具、記憶等外部組件的結合。MCP 正是提供了 LLM 與這些組件交互的標準化方式。
Agent 核心循環: Agent 本質上是在一個循環中運行的 Augmented LLM,不斷執行任務、調用工具 (通過 MCP)、分析結果、規劃下一步。
MCP 的作用:賦予 Agent 可擴展性,使其能在運行時動態發現和使用新的能力 (通過連接不同的 MCP Server)。
圖8: MCP 在 Agent 運行循環中的作用
9. mcp-agent
框架 (by LastMile AI)
展示瞭如何利用 MCP 構建 Agent 系統。
- 提供一套構建 Agent 的組件 (Agent, Task)。
- 簡化 Agent 構建過程,讓開發者專注於 Agent 核心邏輯。
- 通過聲明式方式定義 Agent 任務及其可用的 MCP Server 和 Tool。
圖9: mcp-agent
框架簡化 Agent 開發
10. Agent 協議能力
Sampling (推斷請求)
MCP Server 可以請求 Client (應用) 執行 LLM 推理調用,Server 無需自己集成 LLM。
Composability (可組合性)
任何應用或 API 都可以同時作為 MCP Client 和 MCP Server,實現能力的嵌套和組合。
11. MCP 路線圖
- 遠程服務器與 Auth: 支持 OAuth 2.0 認證,Server 負責處理認證流程。實現遠程託管的 Server,無需用戶手動安裝和配置。通過 Session Token 實現 Client 和 Server 的安全交互。
- 註冊表 (Registry): 統一託管的元數據服務,用於發現和管理 MCP Server。解決 Server 的發現和發佈問題。支持版本控制、身份驗證、安全驗證等功能。
- 開發者體驗 & 生態: 強調提升開發者體驗和完善文檔。
圖11: MCP 未來發展路線圖