MCP 完整解析:協定怎麼運作、能做什麼、有哪些風險
MCP 是 Anthropic 提出的開放協定,讓 AI 應用以統一方式連接外部工具與資料源。這篇拆解它解決的問題、三種能力,以及權限與安全上的注意事項。
本文重點
- MCP 把「每個 AI 應用各自寫整合」的 M × N 問題,變成 M + N。
- 它提供三種能力:工具(可執行的動作)、資源(可讀取的資料)、提示範本。
- 它讓接上新工具從工程專案降級成一段設定,這直接擴大了 AI Agent 的可行範圍。
- 權限是真的權限:接上能寫入的 server,就是真的給了寫入權。
它解決的問題
在 MCP 出現之前,要讓一個 AI 應用連上一個外部系統,得為那個特定組合單獨寫一份整合。
有 M 個 AI 應用、N 個資料源,最壞情況要寫 M × N 份整合。而且任何一端改版,對應的整合就要跟著修。這個數字增長得很快,也是為什麼過去「讓 AI 連上公司內部系統」總是一個專案而不是一個設定。
MCP(Model Context Protocol)的做法是在中間插一層標準:資料源實作一次 MCP server,AI 應用實作一次 MCP client,兩邊就能互通。M × N 變成 M + N。
三種能力
一個 MCP server 可以對外提供三類東西:
| 類型 | 是什麼 | 例子 |
|---|---|---|
| Tools(工具) | 模型可以呼叫的動作 | 查詢資料庫、建立檔案、送出 API 請求 |
| Resources(資源) | 模型可以讀取的資料 | 檔案內容、資料表、API 回傳結果 |
| Prompts(提示範本) | 預先寫好的提示樣板 | 「用這個格式產出週報」這類固定流程 |
差別在於:工具會做事,資源只是被讀。這個區分在權限設計上很重要——你可能願意讓 AI 讀取某個資料庫,但不願意讓它寫入。
為什麼它對 Agent 特別關鍵
AI Agent 的價值,取決於它能碰到什麼。一個接不到任何外部系統的 agent,能做的事非常有限——它只能靠訓練時記住的東西講話。
MCP 真正改變的是接工具的成本。當「接上一個新資料源」從一個需要排期的工程專案,變成一段設定檔,可行的應用範圍就整個不同了。
而且因為協定是開放的,社群可以各自實作 server,不必等平台方逐一支援。這是它擴散得比多數企業標準快的原因。
安全上要注意的事
MCP 讓連接變簡單,也讓「不小心開放太多」變簡單。三件事值得認真對待:
一、權限是真的權限。 接上一個能寫入資料庫的 MCP server,就是真的給了 AI 寫入權。設定時用最小必要權限,不要為了省事直接給管理員帳號。
二、來源要可信。 安裝第三方 MCP server 等於在你的環境裡跑別人的程式碼。裝之前先看清楚它做什麼、由誰維護、原始碼公不公開。
三、注意間接注入的風險。 當 AI 能讀取外部內容(網頁、檔案、郵件),那些內容裡可能藏著針對 AI 的指令。這類攻擊叫 prompt injection,而 MCP 擴大了 AI 能讀到的東西,也就擴大了攻擊面。AI 讀到的內容應該一律當作資料,而不是命令。
目前的狀態
MCP 相對年輕,規格和生態都還在演進。做深度整合之前,先確認你依賴的部分是否穩定,並預期未來可能需要跟著規格調整。
延伸閱讀:MCP 的術語定義、AI Agent 完整指南。
常見問題
- MCP 會取代 API 嗎?
- 不會。MCP 是架在 API 之上的一層標準,用來描述「有哪些工具可用、要傳什麼參數」,實作背後往往仍在呼叫原本的 API。它取代的是「每個 AI 應用各自寫一份整合」這件事,不是 API 本身。
- 我不是工程師,需要了解 MCP 嗎?
- 不用懂細節,但知道它存在有幫助。當你在 AI 工具裡看到「連接器」或 connectors 這類設定,能把 AI 接上你的雲端硬碟或內部系統時,底下往往就是 MCP。知道這件事,你比較清楚自己開放了什麼權限。
- 安裝第三方的 MCP server 安全嗎?
- 要看來源。安裝一個 MCP server 等於在你的環境裡執行別人寫的程式碼,而且通常還給了它存取某些資料的權限。裝之前先確認它由誰維護、原始碼公不公開、要求哪些權限。
延伸閱讀
AI Agent 完整指南:三個要件、實際用途與現階段限制
AI Agent 能自己拆解任務、呼叫工具、依結果調整做法。這篇說明它的三個要件、和自動化的差異,以及現階段真正做得起來的應用有哪些。
Claude Code 教學:從安裝到第一次真正派上用場
Claude Code 是在終端機裡運作的 AI 編程工具。這篇從安裝、基本操作講到專案設定與實際工作流,包含常見的踩雷點。