跳到主要內容
Foxyko
AI Agent

MCP 完整解析:協定怎麼運作、能做什麼、有哪些風險

MCP 是 Anthropic 提出的開放協定,讓 AI 應用以統一方式連接外部工具與資料源。這篇拆解它解決的問題、三種能力,以及權限與安全上的注意事項。

Foxyko 編輯部2 分鐘

本文重點

  • 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 等於在你的環境裡執行別人寫的程式碼,而且通常還給了它存取某些資料的權限。裝之前先確認它由誰維護、原始碼公不公開、要求哪些權限。