先说结论
MCP(Model Context Protocol)是 Anthropic 提出的开放协议,旨在让 AI 智能体(比如 Claude)标准化地连接外部工具、数据库和 API。简单说,它就像 AI 世界的 USB-C 接口——统一了连接方式,让不同模型和工具能即插即用。目前已有多个工具和平台支持,对普通用户来说,以后用 AI 完成复杂任务(比如查股票、发邮件、操作数据库)会变得前所未有的简单。
为什么需要 MCP?
在 MCP 出现之前,让 AI 调用外部工具简直是一场噩梦。每个工具都有自己的 API、认证方式和数据格式,开发者需要为每个工具写一堆胶水代码。比如你想让 AI 查天气,就得写一个函数获取天气 API 数据,再手动注入到 AI 的上下文里。而且每个 AI 模型(GPT、Claude、Gemini)对工具的描述方式还不一样,导致代码无法复用。
MCP 解决了这个问题:它定义了一套标准协议,让 AI 模型和工具服务器之间通过统一的 JSON-RPC 消息通信。你只需要实现一个 MCP 服务器,任何支持 MCP 的 AI 客户端都能直接调用,无需额外适配。
MCP 的核心概念
1. 架构
MCP 采用客户端-服务器架构:
- MCP 客户端:通常是 AI 应用(如 Claude Desktop),负责与用户交互并协调工具调用。
- MCP 服务器:提供具体功能(如文件系统、数据库、API)的轻量级服务,暴露标准接口。
两者通过标准传输层(目前支持 stdio 和 SSE)交换消息。例如,在本地开发时,客户端以子进程方式启动服务器,通过标准输入/输出通信;在远程场景,则通过 HTTP SSE。
2. 核心能力
MCP 定义了三种主要能力:
- Resources:暴露数据资源(如文件、数据库记录),类似 RESTful 的 GET 请求。
- Tools:暴露可执行操作(如发送邮件、创建文件),类似 POST 请求,AI 可主动调用。
- Prompts:提供预定义的提示模板,用户可一键触发复杂工作流。
此外,MCP 还支持采样(Sampling),允许服务器请求 AI 生成响应,实现双向交互。
一个实际例子:用 MCP 查股票
假设你想用 Claude 查当前苹果股价。传统方式可能需要写 Python 脚本调用 Yahoo Finance API,再把结果贴给 Claude。有了 MCP,你只需要一个股票查询服务器:
// MCP 服务器示例(简化)
{
"tools": [{
"name": "get_stock_price",
"description": "获取股票实时价格",
"inputSchema": {
"type": "object",
"properties": {
"symbol": {"type": "string"}
}
}
}],
"handler": async (request) => {
const { symbol } = request.params;
const price = await fetchStockPrice(symbol);
return { content: [{ type: "text", text: `${symbol} 当前价格: $${price}` }] };
}
}然后你在 Claude Desktop 中配置该服务器,直接说"查苹果股价",Claude 就会自动调用 get_stock_price 工具,返回结果。
现在哪些工具支持?
截至 2025 年 4 月,已有多个平台和工具支持 MCP:
- Claude Desktop:Anthropic 官方客户端,原生支持 MCP。
- Zed:代码编辑器,已集成 MCP 用于 AI 辅助编程。
- Sourcegraph Cody:代码搜索工具,通过 MCP 提供上下文。
- JetBrains AI Assistant:已支持 MCP 工具调用。
- 社区服务器:GitHub 上有数百个 MCP 服务器,覆盖文件系统、数据库(PostgreSQL、SQLite)、浏览器自动化(Playwright)、Slack、GitHub 等。
Anthropic 官方还提供了 Python 和 TypeScript 的 SDK,方便开发者快速构建 MCP 服务器。
普通用户怎么受益?
对非开发者来说,MCP 的意义在于:
- 一站式操作:你可以在同一个 AI 聊天界面里完成查资料、写文件、发邮件、操作数据库等任务,不用来回切换应用。
- 更智能的自动化:AI 能根据你的指令自动选择工具。比如你说"帮我整理上周的销售数据,生成图表并邮件发给团队",AI 会依次调用数据库查询、图表生成、邮件发送等工具。
- 生态丰富:随着 MCP 普及,会有越来越多第三方服务提供 MCP 接口,就像现在的插件市场。
总结与展望
MCP 还处于早期,但方向很明确:让 AI 智能体真正成为"万能助手",能操控一切工具。目前最大的挑战是安全性和标准化——如何防止恶意工具获取权限?如何协调多个工具的调用顺序?Anthropic 正在推动社区制定最佳实践。
如果你是个开发者,我建议你现在就去试试写一个 MCP 服务器,体验一下"一次开发,多处运行"的快感。如果你只是普通用户,关注支持 MCP 的应用(比如 Claude Desktop),很快就能享受到这种无缝体验。
博主有点懒,啥也没写!
