
官方信息表
| 项目 | 内容 |
|---|---|
| 项目名称 | Model Context Protocol (MCP) |
| 仓库地址 | modelcontextprotocol/modelcontextprotocol |
| 官方文档 | modelcontextprotocol.io |
| 开源协议 | MIT |
| 最新更新 | 2026-10-26 |
| 定位 | AI 应用连接工具的开放标准 |
项目背景
MCP 由 Anthropic 发起,是一个开放协议标准,用于统一 LLM 应用与外部工具、数据源的对接方式。你可以把它理解为「AI 应用的 USB-C 接口」:once you implement MCP server,任意支持 MCP 的客户端(Claude Desktop、Cursor、各 IDE)都能直接用你的工具。本仓库包含协议规范、TypeScript Schema 和官方文档。
核心特性
- 三种原语:Tools(可调用函数)、Resources(可读取数据)、Prompts(预设提示模板)
- 客户端-服务器架构:MCP Server 暴露能力,MCP Client 发现并调用
- JSON-RPC 基础:支持流式、权限、采样
- 开放标准:MIT 协议,OpenAI、Google、Cursor 等均已宣布兼容
- 多语言 SDK:官方提供 TypeScript 和 Python SDK
协议能力
MCP 定义了三种原语:Tools(可调用函数)、Resources(可读取数据)、Prompts(预设提示模板)。客户端启动时发现 server 提供的能力,用户或 LLM 按需调用。协议支持权限协商、流式响应、采样(client 替 server 调用 LLM)。
环境要求
这是协议仓库,本身不是应用。开发 MCP server 需要 TypeScript 或 Python。
部署步骤
仓库本身只需阅读:
git clone https://github.com/modelcontextprotocol/modelcontextprotocol.git
开发一个 MCP server:
npx @modelcontextprotocol/create-server my-server
使用方法
- 在 MCP 客户端(如 Claude Desktop)配置文件中加入你的 server 命令。
- 客户端启动时自动发现 server 提供的工具、资源、提示模板。
- LLM 即可在对话中调用这些工具。
常见问题 FAQ
Q:MCP 和 Function Calling 是什么关系? A:Function Calling 是单次模型调用约定,MCP 是跨应用跨厂商的协议层标准。
Q:谁在支持 MCP? A:Anthropic 发起,OpenAI、Google、Cursor 等均已宣布兼容。
Q:写一个 MCP server 难吗? A:官方提供 TS 和 Python SDK,几十行代码即可暴露一个工具。
开发 MCP Server
npx @modelcontextprotocol/create-server my-server
cd my-server
npm install
npm run dev
在 Claude Desktop 配置文件中添加:
{
"mcpServers": {
"my-server": {
"command": "node",
"args": ["/path/to/my-server/dist/index.js"]
}
}
}
重启 Claude Desktop 后,server 提供的工具即可在对话中使用。