模型上下文協定(Model Context Protocol, MCP)是 Anthropic 在 2024 年 11 月提出的一項開放原始碼標準,其核心目標是為大型語言模型(LLM)應用程式建立一個統一、標準化且安全的介面,讓 AI 能夠直接連接外部系統、資料來源與工具。
如果你想像 LLM 是一台智慧裝置,那麼 MCP 就像是 AI 的 USB-C 連接埠——不管外部設備怎麼變,只要支援 MCP,AI 都能理解並順利互動。
MCP 為什麼重要?
MCP 的推出,是為了解決 LLM 的兩大核心限制:
1. 知識無法即時更新(訓練資料是靜態)
傳統 LLM 的知識停留在訓練時點,容易因過時資訊而產生「幻覺」(Hallucination)。
MCP 允許模型從外部即時取用資料,讓 AI 的資訊更準確。
2. LLM 無法主動執行動作
AI 通常只能給建議,卻不能真的去:
-
查詢資料庫
-
建立會議
-
更新 CRM 紀錄
-
寄 email
-
操作工具
MCP 讓 AI 能直接「呼叫動作」,正式跨入智能代理(AI Agent)時代。
MCP 的三大角色
MCP 採取 Client–Server 架構,由三個關鍵角色組成:
| 角色 | 說明 | 範例 |
|---|---|---|
| MCP Host(主機) | 使用者實際互動的 AI 應用程式,負責協調與管理多個 MCP 客戶端。 | Claude Code、Claude Desktop、VS Code |
| MCP Client(客戶端) | Host 內部負責與伺服器溝通的組件,將 LLM 指令轉為 MCP 訊息。 | VS Code 中的 MCP 客戶端物件 |
| MCP Server(伺服器) | 實際提供資料或工具的端點,可連接資料庫、檔案系統等。 | File System Server、Database Server、Sentry MCP Server |
MCP Server 可以是:
-
本地端:透過 STDIO 溝通
-
遠端:透過 Streamable HTTP(含 SSE)溝通
MCP 的結構:資料層與傳輸層
1. 資料層(Data Layer)
-
基於 JSON-RPC 2.0
-
包含 Lifecycle management(能力協商、連線建立)
-
定義 MCP 的核心功能:Primitives(基元)
2. 傳輸層(Transport Layer)
支援兩種傳輸方式:
Stdio
-
用於本地程式之間
-
無網路延遲、最高效能
Streamable HTTP
-
用於遠端 Server
-
透過 HTTP POST + Server-Sent Events (SSE)
-
支援 OAuth、Bearer Token 等驗證方式
MCP 的核心:Primitives(基元)
基元是 MCP 的靈魂,定義了 LLM 能讀取什麼、能做什麼。
一、伺服器提供給客戶端的基元
1. Tools(工具)
可呼叫的函式,用於執行動作,例如:
-
查資料庫
-
呼叫 API
-
修改檔案
→ LLM 可主動決定何時呼叫。
2. Resources(資源)
唯讀資料來源,例如:
-
檔案內容
-
資料庫 schema
-
日曆事件
→ Host 決定要如何使用這些資訊。
3. Prompts(提示)
可重複使用的模板
例如:
-
系統提示
-
任務流程模板
→ 使用者或程式需手動調用。
二、客戶端提供給伺服器的基元
1. Sampling(採樣)
伺服器可以「借用」客戶端的 LLM 能力生成文字,
不需要自己集成模型或付費。
2. Elicitation(引導)
伺服器可向使用者要求更多資訊以完成任務。
3. Roots(根)
設定伺服器可操作的「檔案系統範圍」。
4. Logging(日誌)
伺服器可向客戶端傳遞 debug 或運行紀錄。
MCP vs. RAG
MCP 與 RAG(檢索增強生成)常被混為一談,但其目的完全不同。
| 功能 | MCP | RAG |
|---|---|---|
| 主要目標 | 標準化 AI 與外部系統雙向互動 | 提升文本生成正確性 |
| 能否執行動作 | ✔ 可以直接操作外部工具 | ✘ 不行 |
| 互動方式 | 主動呼叫工具、接收結果 | 被動擷取文件後生成文字 |
| 結果型態 | 可能是工具結果 + 敘述 | 純文字生成 |
簡單來說:
RAG 讓 AI「讀懂知識」
MCP 讓 AI「能動手做事」
結語:MCP 讓 AI 成為真正的智能代理
過去的 AI 只能回答問題、給建議。
但有了 MCP:
-
AI 可以查資料、改資料
-
可以整合任何外部工具
-
可以主動執行任務
-
可以與外界保持即時連動
-
開發者不再需要為不同模型做多套整合
這代表 AI 正式邁向更成熟的 Agent 時代。
未來無論是企業內部流程、軟體開發工具、自動化系統、個人助理,
只要支援 MCP,AI 就能像插上 USB-C 一樣直接運作。