MCP(Model Context Protocol)是什麼?完整教學:AI 的 USB-C 如何連接外部工具與服務

Elponcrab
分享
MCP(Model Context Protocol)是什麼?完整教學:AI 的 USB-C 如何連接外部工具與服務

MCP(Model Context Protocol)是 Anthropic 在 2024 年 11 月發表的開源標準,讓 AI 應用程式用同一套方式連接外部工具、資料庫與服務,常被比喻為「AI 的 USB-C」。先講結論:

  • 現在已是業界共通標準:OpenAI、Google、微軟、AWS 都支援,2025 年 12 月起由 Linux Foundation 旗下的 Agentic AI Foundation 治理,不再由 Anthropic 單獨主導。
  • 對一般使用者:在 Claude、ChatGPT、Cursor、VS Code 等工具裡加上 MCP 伺服器,AI 就能讀寫你的檔案、GitHub、Slack、Notion。
  • 對開發者:最新規範是 2026-07-28 版,協定改為無狀態的請求/回應,官方 Tier 1 SDK 有 TypeScript、Python、Go、C#。
  • 協定本身免費開源,費用只來自你使用的 AI 服務或外部 API。

MCP 解決什麼問題

沒有 MCP 之前,每個 AI 應用程式要串接每個外部服務,都得各自開發一套整合:10 個 AI 工具接 10 個服務,就是 100 組客製化程式,維護成本高、品質也參差不齊。MCP 把它變成 M+N:AI 應用程式實作一次 MCP 客戶端、外部服務做一個 MCP 伺服器,兩邊就能互通。就像 USB-C 讓手機、筆電共用同一條線,任何支援 MCP 的 AI 工具都能接上任何 MCP 伺服器。

三種核心功能:工具、資源、提示範本

功能由誰決定使用做什麼例子
工具(Tools)AI 模型可執行的動作,模型依對話決定何時呼叫在 GitHub 建立 Issue、傳 Slack 訊息
資源(Resources)應用程式唯讀的資料,提供模型需要的背景讀取某個檔案或資料表
提示範本(Prompts)使用者預先設計好的互動流程固定格式的程式碼審查

早期規範中的 Roots、Sampling、Logging 在 2026-07-28 版規範被列為棄用,至少還會保留 12 個月,新的實作不建議再採用。

廣告 - 內文未完請往下捲動

架構:主機、客戶端、伺服器

角色是什麼例子
主機(Host)使用者直接操作的 AI 應用程式,負責權限與使用者同意Claude Desktop、ChatGPT Desktop、VS Code、Cursor
客戶端(Client)主機裡負責跟伺服器溝通的模組,通常一對一內建在主機中
伺服器(Server)把外部服務包裝成 MCP 工具與資源GitHub、Slack、檔案系統伺服器
外部服務實際的 API、資料庫或 SaaS,本身不需要支援 MCPGitHub API、PostgreSQL

本機伺服器透過標準輸入輸出(stdio)溝通,適合存取本機檔案;遠端伺服器使用 Streamable HTTP。2026-07-28 版規範把協定改為無狀態,每個請求自帶版本與身分資訊,方便在一般雲端架構上大規模部署;舊的 HTTP+SSE 傳輸方式已棄用,有一年過渡期。一個主機可以同時連多個伺服器,例如讓 AI 先從 GitHub 拿 PR、再讀本機程式碼、最後寫進資料庫。

哪些工具支援 MCP

主機端:Anthropic 的 Claude Desktop 與 Claude Code、OpenAI 的 ChatGPT Desktop 與 Codex、Google 的 Gemini Deep Research(2026 年 4 月起)、微軟的 VS Code(Copilot)與 Copilot Studio,以及 Cursor、Notion Custom Agents 等。透過 Ollama 也能讓本機模型搭配 MCP 工具使用。

伺服器端:官方與社群已有大量預建伺服器,包括檔案系統、Git、GitHub、Slack、Notion、Figma、Salesforce、Asana、HubSpot、Linear、Sentry、PostgreSQL、瀏覽器自動化等。2025 年 9 月起有官方 Registry 可搜尋與安裝。

快速上手:在 Claude Desktop 接上檔案系統

以 Claude Desktop 為例,打開設定檔(macOS:~/Library/Application Support/Claude/claude_desktop_config.json;Windows:%APPDATA%\Claude\claude_desktop_config.json),加入:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Documents"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxx" }
    }
  }
}

存檔後重開 Claude Desktop,輸入框旁會出現工具圖示,試著說「列出我 Documents 裡的檔案」即可確認。只授權需要的資料夾,金鑰放在 env 欄位、不要提交到版本控制。Claude Code 的設定方式見 .claude 資料夾教學。

自己做一個 MCP 伺服器

官方 Tier 1 SDK 有 TypeScript、Python、Go、C#,Rust 為測試版,Ruby SDK 也在 2026 年 7 月達到 1.0。以 Python 為例,一個查天氣的伺服器只要定義工具清單與處理函式:

from mcp.server import Server
from mcp.types import Tool, TextContent

server = Server("weather-server")

@server.list_tools()
async def list_tools():
    return [Tool(name="get_weather", description="取得城市天氣",
                 inputSchema={"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]})]

@server.call_tool()
async def call_tool(name: str, arguments: dict):
    if name == "get_weather":
        return [TextContent(type="text", text=f"{arguments['city']} 目前 25°C")]

完成後可發布到 npm 或 PyPI,並提交到官方 Registry。有基本 Python 或 TypeScript 經驗的開發者,通常幾小時內就能做出第一個可用的伺服器。

MCP 跟 Function Calling 有什麼不同

Function CallingMCP
層級模型的能力應用程式之間的通訊標準
負責什麼模型表達「我要呼叫這個函式、參數是這些」把呼叫送到正確的外部服務並實際執行
誰來執行開發者自己寫程式處理MCP 伺服器
能不能共用每個應用各自定義同一個伺服器可給所有支援 MCP 的工具使用

兩者是互補的:主機通常用 Function Calling 讓模型提出呼叫,再透過 MCP 客戶端把呼叫轉給對應的伺服器。

安全:使用時要注意什麼

  • 只安裝來源可信的伺服器,先看原始碼與社群評價。
  • 最小權限:只開放需要的資料夾,資料庫盡量只給唯讀。
  • API 金鑰放環境變數,不要寫死在檔案或提交到 Git。
  • 保留主機的確認提示,重要動作執行前先看清楚。
  • 企業部署前做安全審查;美國國安局與國防部在 2026 年 6 月發布了 MCP 安全指引可供參考。

2026-07-28 版規範也強化了授權流程:客戶端必須驗證授權伺服器的身分,憑證不能跨授權伺服器重複使用,動態客戶端註冊(DCR)改由 Client ID Metadata Documents 取代。

誰在管 MCP:AAIF 與 A2A

Anthropic 在 2025 年 12 月把 MCP 捐給 Linux Foundation 新成立的 Agentic AI Foundation(AAIF),由 Anthropic、Block、OpenAI 共同創辦,白金會員包括 Amazon、Bloomberg、Cloudflare、Google、微軟,技術路線由技術指導委員會決定。Google 主推的 A2A(Agent-to-Agent)則處理代理與代理之間的溝通,跟 MCP 處理的「代理接工具」是互補關係,兩者可以同時使用。

常見問題 FAQ

MCP 是 Anthropic 專屬的技術嗎?

不是。MCP 由 Anthropic 提出,但是開源標準,2025 年 12 月起由 Linux Foundation 旗下的 Agentic AI Foundation 治理,OpenAI、Google、微軟等都已支援。

使用 MCP 要付費嗎?

協定、官方 SDK 與多數預建伺服器都免費。費用只來自你使用的 AI 服務額度,以及伺服器連接的外部 API 本身的收費。

MCP 支援哪些程式語言?

官方 Tier 1 SDK 有 TypeScript、Python、Go、C#,Rust 為測試版,Ruby SDK 已達 1.0。因為 MCP 建立在 JSON-RPC 上,其他語言也能自行實作。

MCP 能用在公司內部系統嗎?

可以,這是最常見的用途之一。替內部 API、資料庫做 MCP 伺服器並部署在內網,員工就能透過支援 MCP 的 AI 助理存取,資料不必經過外部服務。

MCP 跟 LangChain、LlamaIndex 有什麼關係?

LangChain、LlamaIndex 是開發框架,MCP 是通訊標準,兩者可搭配:用框架建的應用程式可以透過 MCP 客戶端連接各種 MCP 伺服器。

最新的 MCP 規範是哪一版?

目前是 2026 年 7 月 28 日發布的 2026-07-28 版,主要改變是協定改為無狀態、Tasks 移到官方擴充、舊的 HTTP+SSE 傳輸與 Roots、Sampling、Logging 列為棄用。

MCP 發展回顧

  • 2026 年 8 月 22 日:公布新的 MCP 路線圖
  • 2026 年 7 月 28 日:2026-07-28 版規範發布,改為無狀態協定
  • 2026 年 7 月 27 日:官方 Ruby SDK 達到 1.0
  • 2026 年 6 月 2 日:美國國安局與國防部發布 MCP 安全指引
  • 2026 年 4 月 21 日:Google Deep Research Max 支援 MCP
  • 2026 年 2 月:MCP SDK 月下載量突破 9,700 萬次
  • 2026 年 1 月 26 日:Amplitude、Asana、Box、Clay、Hex、Salesforce 同日上架官方 MCP 伺服器
  • 2025 年 12 月:捐贈給 Linux Foundation 的 Agentic AI Foundation
  • 2025 年 11 月:AWS Amazon Bedrock 原生支援 MCP
  • 2025 年 9 月:官方 Registry 預覽上線
  • 2025 年 4 月:OpenAI 在 ChatGPT Desktop 與 API 採用 MCP
  • 2024 年 11 月:Anthropic 發表 MCP

相關指南

風險提示

加密貨幣投資具有高度風險,其價格可能波動劇烈,您可能損失全部本金。請謹慎評估風險。