GDM
36.48M · 2026-03-29
MCP(Model Context Protocol)是 Anthropic 开源的开放标准协议,旨在为 AI 助手提供一种通用、安全、双向的方式连接外部数据源和工具,打破信息孤岛,让 AI 真正"看得见"外部世界。
随着大模型能力的飞速提升,AI 助手已经能够进行复杂的推理和对话。然而,再强大的模型也受限于训练数据的时效性和封闭性:
| 方案 | 问题 |
|---|---|
| Function Calling | 每个平台实现不同,缺乏互操作性 |
| 插件系统 | 封闭生态,难以跨平台复用 |
| API 集成 | 每个数据源都需要单独开发适配器 |
MCP 采用客户端-服务器架构,灵感来自语言服务器协议(LSP):
┌─────────────────────────────────────────┐
│ MCP Client (AI 应用) │
│ (Claude Desktop / IDE 等) │
└──────────────┬──────────────────────────┘
│ MCP Protocol
▼
┌─────────────────────────────────────────┐
│ MCP Server (数据源) │
│ (文件系统、数据库、API、业务系统等) │
└─────────────────────────────────────────┘
1. 用户提问:"分析我桌面上的 sales_data.csv"
2. AI 发现需要文件系统访问
→ 查询可用的 MCP Servers
3. AI 向 Filesystem MCP Server 请求资源
→ URI: file:///Users/xxx/Desktop/sales_data.csv
4. MCP Server 读取文件并返回内容
5. AI 分析数据并生成回答
6. AI 调用 DataViz MCP Server 生成图表
7. 最终呈现:分析结论 + 可视化图表
| 特性 | Function Calling | 插件系统 | MCP |
|---|---|---|---|
| 标准化 | 各平台不同 | 封闭生态 | 开放标准 |
| 跨平台 | 难以复用 | 绑定特定产品 | 一次开发,到处运行 |
| 双向通信 | 单向调用 | ️ 有限支持 | 完整双向 |
| 类型安全 | ️ 依赖实现 | ️ 依赖实现 | JSON Schema 强类型 |
| 社区生态 | 碎片化 | 封闭 | 开源社区驱动 |
| 安全性 | ️ 依赖实现 | ️ 依赖实现 | 内置安全机制 |
Anthropic 已开源多个常用 MCP Server:
| Server | 功能 |
|---|---|
| Filesystem | 本地文件系统访问 |
| GitHub | 代码仓库操作 |
| Git | 版本控制集成 |
| Postgres | 数据库查询 |
| Slack | 消息发送与读取 |
| Google Drive | 云端文档访问 |
| Puppeteer | 浏览器自动化 |
# 1. 下载 Claude Desktop
#
# 2. 配置 claude_desktop_config.json
# 添加你需要的 MCP Servers
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Desktop"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<your-token>"
}
}
}
}
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
const server = new Server({
name: "my-custom-server",
version: "1.0.0"
}, {
capabilities: {
resources: {},
tools: {}
}
});
// 定义资源
server.setRequestHandler(ListResourcesRequestSchema, async () => {
return {
resources: [
{
uri: "custom://data",
name: "My Data",
mimeType: "application/json"
}
]
};
});
// 定义工具
server.setRequestHandler(CallToolRequestSchema, async (request) => {
if (request.params.name === "my_tool") {
return {
content: [{ type: "text", text: "Result" }]
};
}
});
就像 USB-C 统一了设备连接标准,MCP 有望成为 AI 与外部世界连接的通用语言:
MCP 的推出标志着 AI 生态从**"模型竞赛"向"连接竞赛"**的转变。
过去两年,行业焦点一直在训练更大的模型、追求更高的 benchmark 分数。但 Anthropic 敏锐地意识到:模型的能力再强,如果无法连接到真实世界的数据,也只是"纸上谈兵"。
MCP 的价值不仅在于技术本身,更在于它代表了一种开放、协作的哲学:
对于开发者而言,MCP 降低了构建 AI 应用的门槛。以前需要为每个工具写适配代码,现在只需实现一次 MCP 接口。
对于企业而言,MCP 提供了一条渐进式 AI 转型的路径。不需要推倒重来,只需将现有系统包装成 MCP Server,就能让 AI 访问。
MCP 可能是 2025 年最重要的 AI 基础设施创新之一。
本文基于 Anthropic 2024年11月发布的 MCP 官方文档整理,持续更新中
#MCP #AIAgent #Anthropic #开放标准 #工具调用