最近 MCP 这个词在开发者圈里频繁出现。Cursor、Claude Desktop、各种 AI 编程工具都开始支持它。但它到底是什么,解决了什么问题,值不值得现在就上手?
这篇文章从开发者视角把它说清楚。
MCP 是什么
MCP(Model Context Protocol)是 Anthropic 在 2024 年底开源的一个协议,全称"模型上下文协议"。
你可以把它理解成 AI 应用和外部工具之间的标准接口。类比一下:以前 AI 能做的事仅限于"读文本、写文本",MCP 出现之后,AI 可以直接调用本地文件、数据库、外部 API、系统工具——而且是标准化的调用方式,不是临时凑的 hack。
核心概念就三个:
- Host:运行 AI 的宿主应用(比如 Claude Desktop、Cursor)
- Client:Host 内部的连接管理器
- Server:提供能力的服务端(本地进程或远端服务)
Host 通过 MCP 协议与 Server 通信,AI 就能感知并调用 Server 提供的工具(Tools)、资源(Resources)、提示词模板(Prompts)。
它解决了什么问题
在 MCP 出现之前,如果你想让 AI 助手查你的数据库,你得:
- 自己写 API wrapper,把数据库查询封装成接口
- 把接口文档喂给 AI,让它知道怎么调用
- 写 function calling 的适配层
- 每换一个 AI 服务商就重写一遍
这套流程每个项目都要重复一次,而且没有标准——OpenAI 的 function calling 和 Claude 的 tool use 格式不一样,迁移成本高。
MCP 统一了这一层。你只需要实现一个 MCP Server,所有支持 MCP 协议的 AI Host 都能直接用。一次实现,多处复用。
实战:接一个 MCP Server
以 Node.js 为例,接一个读取文件系统的 MCP Server:
npm install @modelcontextprotocol/sdk
基础结构:
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = new Server(
{ name: "my-fs-server", version: "1.0.0" },
{ capabilities: { tools: {} } }
);
// 注册工具
server.setRequestHandler("tools/list", async () => ({
tools: [{
name: "read_file",
description: "读取指定路径的文件内容",
inputSchema: {
type: "object",
properties: { path: { type: "string" } },
required: ["path"]
}
}]
}));
// 处理调用
server.setRequestHandler("tools/call", async (req) => {
const { path } = req.params.arguments;
const content = fs.readFileSync(path, "utf-8");
return { content: [{ type: "text", text: content }] };
});
const transport = new StdioServerTransport();
await server.connect(transport);
在 Claude Desktop 的配置文件(~/Library/Application Support/Claude/claude_desktop_config.json)里加上:
{
"mcpServers": {
"my-fs-server": {
"command": "node",
"args": ["/path/to/your/server.js"]
}
}
}
重启 Claude Desktop,你的 AI 就能直接读你的本地文件了。
配合 AI API 使用
写 MCP Server 的过程中需要频繁测试——让 AI 帮你生成代码、调试逻辑、理解协议细节。这里就需要一个稳定可用的 AI API 服务。
国内开发者用 OpenAI 官方 API 有网络和支付问题,产灵 API(xdhdancer.top/?aff=Hysv)是… GPT-5、Claude Opus 等主流模型,OpenAI 协议兼容,直接替换 base_url 就能用,不用改其他代码。
现在值不值得学
值得,理由如下:
生态已经起来了。 Cursor、Windsurf、Claude Desktop 都已原生支持,GitHub、Cloudflare、Stripe 等主流服务都在发布官方 MCP Server。
协议足够简单。 核心接口就三个(Resources/Tools/Prompts),一个下午能上手,一周能写出生产可用的 Server。
先发优势明显。 现在公司里能写 MCP Server 的还是少数,这是差异化能力。
MCP 不是 AI 应用的终点,但它大概率会成为 AI 工具集成的基础协议层——就像 REST 之于 HTTP 时代的 Web 服务。
关注我,持续更新 AI 开发者实战内容。有问题欢迎评论区交流。