一、了解MCP的基礎知識
1.函數調用Function Calling
????????Function Calling是openai在2023年推出的一個非常重要的概念:Function Calling(函數調用)本質上就是提供了大模型與外部系統的交互能力,類似于給大模型安裝了一個“外掛工具箱“,當大模型自己無法直接回答問題時,他會主動調用預設的函數(如查詢天氣、計算數據、訪問外部數據庫)、獲取實時的或者精準信息后再生成回復。
????????如果需要使用Function Calling功能,首先大模型要支持Function Calling功能。openAI在提出Function Calling時并沒有提出函數調用的標準。
Function Calling的核心特點:
????????模型專屬:不同模型的調用規則不同。
? ? ? ? 即時觸發:解析用戶意圖后直接調用工具,簡單直接。
? ? ? ? 協議碎片化:需要為每個模型單獨開發適配層。?
? ? ? ? 功能擴展難:新增工具需要重新調整接口。?
2.MCP(model context protocol)模型上下文協議
????????MCP(model context protocol)模型上下文協議是由Anthropic公司推出的一個開放標準協議,目的是為了解決AI模型與外部數據源工具交互的問題。
? ? ? ? MCP就像一個“通用插頭”或者“USB接口”,制定了統一的規范,不管連接數據庫、第三方API,還是本地文件等各種外部資源,都可以通過這個“通用接口”來完成,讓AI模型與外部工具或者數據源之間的交互更加標準化、可復用,最近,openai也宣布了對MCP提供了支持。
????????開發者按照 MCP 協議進行開發,無需為每個模型與不同資源的對接重復編寫適配代碼,可以大大節省開發工作量,另外已經開發出的 MCP Server,因為協議是通用的,能夠直接開放出來給大家使用,這也大幅減少了開發者的重復勞動。
比如,你如果想開發一個同樣邏輯的插件,你不需要在 Coze 寫一遍,再去 Dify 寫一遍,如果它們都支持了 MCP,那就可以直接使用同一個插件邏輯。
核心特點
- 協議標準化:統一工具調用格式(請求/響應/錯誤處理)
- 生態兼容性:一次開發即可對接所有兼容MCP的模型
- 動態擴展:新增工具無需修改模型代碼,即插即用
核心價值,解決三大問題
- 數據孤島 → 打通本地/云端數據源
- 重復開發 → 工具開發者只需適配MCP協議
- 生態割裂 → 形成統一工具市場
類比
- USB-C 接口:手機/電腦/外設通過統一標準互聯????????
二、MCP的基本使用
從上面 MCP 的架構圖中我們可以看到,想要使用 MCP 技術,首先就是得找到一個支持 MCP 協議的客戶端,然后就是找到符合我們需求到 MCP 服務器,然后在 MCP 客戶端里調用這些服務。
2.1 MCP 客戶端(Host)
在 MCP 官方文檔中,我們看到已經支持了 MCP 協議的一些客戶端/工具列表:
https://modelcontextprotocol.io/clients
從表格里,我們可以看到,MCP 對支持的客戶端劃分了五大能力,這里我們先簡單了解即可:
- Tools:服務器暴露可執行功能,供 LLM 調用以與外部系統交互。
- Resources:服務器暴露數據和內容,供客戶端讀取并作為 LLM 上下文。
- Prompts:服務器定義可復用的提示模板,引導 LLM 交互。
- Sampling:讓服務器借助客戶端向 LLM 發起完成請求,實現復雜的智能行為。
- Roots:客戶端給服務器指定的一些地址,用來告訴服務器該關注哪些資源和去哪里找這些資源。
目前最常用,并且被支持最廣泛的就是?Tools
?工具調用。
對于上面這些已經支持 MCP 的工具,其實整體劃分一下就是這么幾類:
- AI 聊天工具:如 5ire、LibreChat、Cherry Studio
- AI 編碼工具:如 Cursor、Windsurf、Cline
- AI 開發框架:如 Genkit、GenAIScript、BeeAI
2.2 MCP Server
MCP Server
?的官方描述:一個輕量級程序,每個程序都通過標準化模型上下文協議公開特定功能。
簡單理解,就是通過標準化協議與客戶端交互,能夠讓模型調用特定的數據源或工具功能。常見的?MCP Server
?有:
- 文件和數據訪問類:讓大模型能夠操作、訪問本地文件或數據庫,如 File System MCP Server;
- Web 自動化類:讓大模型能夠操作瀏覽器,如 Pupteer MCP Server;
- 三方工具集成類:讓大模型能夠調用三方平臺暴露的 API,如 高德地圖 MCP Server;
下面是一些可以查找到你需要的?MCP Server
?的途徑:
第一個是官方的?MCP Server
?集合 Github 倉庫(https://github.com/modelcontextprotocol/servers),里面包含了作為官方參考示例的?MCP Server
、被官方集成的?MCP Server
?以及一些社區開發的第三方?MCP Server
:
另外一個是 MCP.so(https://mcp.so/):一個三方的 MCP Server 聚合平臺,目前收錄了 5000+ MCP Server:
其提供了非常友好的展示方式,每個 MCP Server 都有具體的配置示例:
- MCP Market(https://mcpmarket.cn/),訪問速度不錯,可以按工具類型篩選: