MCP 协议教程:让 AI Agent 标准化连接工具(USB-C 类比)
🎯 本节目标
Section titled “🎯 本节目标”学完这一节,你能:
- 理解 MCP(Model Context Protocol) 协议
- 说清 MCP vs Function Calling 的区别
- 用官方 MCP Server 给 Agent 加一个标准化工具
🍎 生活化类比
Section titled “🍎 生活化类比”MCP = AI 工具的 USB 接口。
在 USB 出现前,每个外设(鼠标、键盘、打印机)都有自己专用的接口,电脑要装一堆驱动。
Function Calling 就是“专用接口”——每个模型、每个工具的对接方式都不一样,换个模型就要重写。
MCP 是 AI 界的 USB-C:一个标准协议,任何工具按 MCP 规范实现一次,所有支持 MCP 的客户端(Claude Desktop / Cursor / Dify / 你的 Agent)都能直接用。
📖 概念讲解
Section titled “📖 概念讲解”MCP 三原语
Section titled “MCP 三原语”| 原语 | 作用 | 例子 |
|---|---|---|
| Tools | 让模型执行动作 | 查数据库、发邮件、调 API |
| Resources | 给模型提供数据 | 读文件、读数据库表 |
| Prompts | 预设的提示词模板 | 代码审查模板、SQL 生成模板 |
MCP vs Function Calling
Section titled “MCP vs Function Calling”| Function Calling | MCP | |
|---|---|---|
| 谁定义工具 | 开发者写代码 | 工具方按 MCP 标准实现 |
| 复用性 | 每个应用重写 | 实现一次,处处可用 |
| 标准化 | 各家不一 | 统一协议 |
| 生态 | 零散 | 官方 + 社区 65+ Server |
一句话:Function Calling 是“自己接电线”,MCP 是“用标准插座”。
🛠️ 动手实操:用官方 Filesystem MCP Server
Section titled “🛠️ 动手实操:用官方 Filesystem MCP Server”Step 1:装 MCP 客户端(Claude Desktop 或自建)
Section titled “Step 1:装 MCP 客户端(Claude Desktop 或自建)”最简单:用 Claude Desktop。配置文件 claude_desktop_config.json:
{ "mcpServers": { "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/你/fde-learn"] } }}Step 2:重启 Claude Desktop
Section titled “Step 2:重启 Claude Desktop”现在 Claude 能读你指定目录的文件了。问它:“读 fde-learn 里的 llm.py 并解释”,它会自动调 MCP filesystem 工具。
Step 3:自己写个 MCP Server(进阶)
Section titled “Step 3:自己写个 MCP Server(进阶)”pip install mcpfrom mcp.server.fastmcp import FastMCPmcp = FastMCP("my-tools")
@mcp.tool()def get_weather(city: str) -> str: """获取城市天气(简化版)""" return f"{city} 今天晴,25度"
if __name__ == "__main__": mcp.run()这个 get_weather 工具,任何 MCP 客户端都能调——你写一次,全生态可用。
⚠️ 常见错误
Section titled “⚠️ 常见错误”| 问题 | 原因 | 解决 |
|---|---|---|
| MCP Server 启动后客户端连不上 | stdio 传输配置错/端口冲突 | 检查 claude_desktop_config.json 路径,看日志 |
| 工具不被模型调用 | 工具描述写得太模糊 | 工具的 docstring 要写清楚“什么时候该用我” |
| 和 Function Calling 混淆 | 以为要二选一 | MCP 底层也是 Function Calling,只是标准化了工具暴露方式 |
1. MCP 的三原语是哪三个?
Tools(执行动作)、Resources(提供数据)、Prompts(预设模板)。2. MCP 相比 Function Calling 的核心优势是什么?
**一次实现,处处可用**——工具按 MCP 标准写一次,任何支持 MCP 的客户端(Claude/Cursor/Dify/你的 Agent)都能直接用,不用每个应用重写。MCP 是 AI 工具的 USB-C,标准化让工具一次实现处处可用。2026 年是 Agent 生态的连接层基石。
🏋️ 配套自练
Section titled “🏋️ 配套自练”- MCP 官方规范 — 读 Quickstart,跑通第一个 MCP server(免费)
- Glama MCP Servers 目录 — 浏览 65+ 现成 MCP server,挑一个装到 Claude Desktop 试(免费)
- 官方参考 Servers — 跑 filesystem server,让 AI 读你指定目录的文件(免费)