什么是 MCP?
MCP(Model Context Protocol,模型上下文协议)是 Anthropic 于 2024 年底发布的开放标准协议。它解决了一个长期存在的痛点:AI 模型要调用外部工具(搜索、数据库、代码执行等),每家厂商的接口都不一样,集成成本极高。
MCP 提供了统一的协议层,让任何 AI 模型都能通过标准化方式调用任何工具,开发者只需实现一次 MCP Server,即可兼容所有支持 MCP 的 AI 框架。
MCP 与传统 API 的区别
| 对比维度 | 传统 API 集成 | MCP 协议 |
|---|---|---|
| 接口标准 | 各自不同,需单独对接 | 统一标准,一次实现处处可用 |
| 工具发现 | 需手动编写 Schema | 自动暴露工具列表 |
| 模型兼容 | 绑定特定模型 | 任何支持 MCP 的模型均可用 |
| 维护成本 | 接口变更需同步修改 | 协议稳定,上下游解耦 |
MCP 的三种资源类型
1. Resources(资源) MCP Server 向模型暴露可读取的数据,例如文件内容、数据库记录、API 响应等。模型可以主动请求读取这些资源。
2. Tools(工具) 模型可以调用的函数,例如发送邮件、提交代码、搜索网页。Tools 是 MCP 最常用的能力。
3. Prompts(提示词模板) 预定义的提示词模板,可以让用户快速启动常见工作流,例如「帮我 Code Review 这段代码」。
在 OpenClaw 中配置 MCP Server
在 openclaw.json 中添加 mcpServers 配置:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "your-github-token"
}
},
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/documents"]
}
}
}
重启 gateway 后,模型即可自动发现并调用这些 MCP Server 提供的工具。
常用 MCP Server 推荐
- @modelcontextprotocol/server-github:操作 GitHub 仓库、PR、Issue
- @modelcontextprotocol/server-filesystem:读写本地文件系统
- @modelcontextprotocol/server-postgres:查询 PostgreSQL 数据库
- @modelcontextprotocol/server-slack:发送和读取 Slack 消息
- @modelcontextprotocol/server-brave-search:调用 Brave 搜索引擎
完整列表可在 MCP 官方仓库 查看,目前已有数百个社区实现。
MCP 和 Skills 的关系
MCP 和 Skills 在 OpenClaw 中是互补关系:
- Skills 是封装好的工作流模板,通过斜杠命令触发,适合复杂的多步骤任务
- MCP Tools 是模型可以自主调用的底层工具,适合动态决策场景
两者可以组合使用:一个 Skill 的执行过程中,模型可以自动调用 MCP Tools 完成子任务。
常见问题
Q:MCP Server 在哪里找?
官方维护的 MCP Server 列表在 GitHub 的 modelcontextprotocol/servers 仓库,社区贡献的可在 npm 搜索 @modelcontextprotocol 前缀的包。
Q:配置 MCP 需要重启吗?
是的,修改 openclaw.json 中的 MCP 配置后需要重启 gateway 服务,新的 MCP Server 才会被加载。
延伸阅读
- OpenClaw 支持哪些 AI 模型? — 模型配置完整指南
- 什么是 AI Agent? — 理解 Agent 与工具调用的关系