在 LLM 快速普及的今天,越來越多應用想把 AI 與真實世界結合,讓 LLM 變得更實用也更貼近生活,像是從資料庫查詢紀錄、讀取 Notion 筆記或 Google Drive 的內容、直接下指令到 GitHub 等。
但有一個問題是,如果想讓 LLM 主動操作應用,讓他能存取外部資源,通常需要為每個服務各自設計 API、金鑰、封裝邏輯等,這樣的開發模式既繁瑣又難以維護。
因此模型上下文協定(Model Context Protocol, MCP)的誕生,正是為了解決這個問題,MCP 希望能成為 AI 世界的USB-C 標準,讓不同的模型、應用與工具之間可以用一套統一規範彼此連接。
MCP 是由 Anthropic 在2024年11月發佈的開放協定,他定義了一組標準,讓 AI 模型能夠存取外部資料(Resources)、呼叫外部功能(Tools)、以及使用預先定義的互動模板(Prompts),不論模型來自哪間公司(Claude、GPT、Gemini、LLaMA),只要遵守 MCP 規範,就能共用相同的工具與資料來源,這樣就可以避免換一個模型就要重寫一次的問題。
MCP 採用 Client–Server 架構,主要由三個角色組成:Host、Client、Server。
[LLM Host] <-> [MCP Client] <-> [MCP Server] <-> [External Data / Tools]
MCP 目前支援兩種主要的傳輸模式:
stdio 模式
SSE(Server-Sent Events)模式