OpenClaw 集成 MCP 协议:构建自托管 AI 助手工具链
MCP(Model Context Protocol)正逐渐成为连接 AI 应用与外部系统的标准接口。作为开源 AI 助手框架,OpenClaw 率先支持了 MCP 集成,这为开发者打造能连接任意工具的超级 AI 助手提供了便利。
什么是 MCP?
简单来说,MCP 就像是 AI 的 USB-C 接口。就像 USB-C 让电脑能连接显示器、硬盘一样,MCP 让 AI 助手能连接数据库、文件系统、API 等各种工具。
核心架构
MCP 采用客户端 - 服务器模式,主要包含三个角色:
| 角色 | 说明 | 示例 |
|---|---|---|
| MCP Host | AI 应用,管理多个 MCP 客户端 | Claude Desktop、VS Code、OpenClaw |
| MCP Client | 维护与服务器的连接 | 由 Host 创建 |
| MCP Server | 提供上下文数据的程序 | 文件系统服务器、数据库服务器 |
三大能力
MCP Server 主要暴露三种核心能力:
- Tools(工具):可执行的函数,AI 调用后执行操作,如文件读写、API 请求。
- Resources(资源):提供上下文信息的数据源,如文件内容、数据库记录。
- Prompts(提示词):可复用的交互模板,用于标准化系统提示或 Few-shot 示例。
为什么选择 OpenClaw + MCP?
OpenClaw 的优势
OpenClaw 是一个自托管的 AI 助手网关,核心价值在于:
- 多渠道接入:支持飞书、Telegram、Discord、微信等。
- 数据主权:完全自托管,数据掌握在自己手中。
- 技能扩展:通过插件机制实现功能扩展。
- 多代理路由:支持多工作空间隔离。
结合后的价值
两者结合实现了'一个入口,无限可能'。你在飞书发送一条消息,AI 助手就能通过 MCP 协议查询数据库、操作 GitHub 或读写文件。这种标准化连接方式避免了重复开发,复用性强。
实战配置指南
1. 安装环境
首先确保 Node.js 环境正常,然后全局安装 OpenClaw:
npm install -g openclaw@latest
2. 配置 MCP Server
OpenClaw 通过 ACP(Agent Communication Protocol)模式支持 MCP 服务器集成。你需要编辑配置文件 ~/.openclaw/openclaw.json。
这里以配置文件系统服务器和 GitHub 服务器为例。注意权限控制,建议限制访问目录:
{
"acp": {
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/dir"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "your-github-token"
}
}
}
}
}
3. 启动网关
配置完成后,启动 Gateway 服务:
openclaw gateway --port 18789
4. 连接渠道
最后连接你的即时通讯工具,例如:
# 飞书
openclaw channels login feishu
# Telegram
openclaw channels login telegram
现在,你在飞书或 Telegram 发送消息,AI 助手就能通过 MCP 访问配置的工具了。
常用 MCP Server 推荐
官方服务器
| 服务器 | 功能 | 安装命令 |
|---|---|---|
| filesystem | 文件系统读写 | npx @modelcontextprotocol/server-filesystem |
| github | GitHub API 操作 | npx @modelcontextprotocol/server-github |
| postgres | PostgreSQL 数据库 | npx @modelcontextprotocol/server-postgres |
| slack | Slack 消息操作 | npx @modelcontextprotocol/server-slack |
社区服务器
- mcp-server-brave-search:Brave 搜索
- mcp-server-puppeteer:浏览器自动化
- mcp-server-sentry:Sentry 错误监控
- mcp-server-google-calendar:Google 日历
实战案例:日报自动生成
场景需求
每天自动从 GitHub 获取提交记录,从 Sentry 获取错误报告,生成日报发送到飞书。
配置要点
在配置文件中添加定时任务(cron)和对应的 MCP 服务器:
{
"acp": {
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_TOKEN": "xxx" }
},
"sentry": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sentry"],
"env": { "SENTRY_TOKEN": "xxx" }
}
}
},
"cron": {
"dailyReport": {
"cron": "0 9 * * *",
"task": "生成昨日工作报告"
}
}
}
运行效果
每天早上 9 点,AI 助手会自动执行以下流程:
- 从 GitHub 拉取昨天的 commits。
- 从 Sentry 抓取昨天的错误报告。
- 汇总信息并生成日报文本。
- 将结果推送到飞书群。
MCP vs 传统插件方案
| 对比项 | MCP | 传统插件 |
|---|---|---|
| 标准化 | ✅ 统一协议 | ❌ 各自实现 |
| 生态 | ✅ 跨平台复用 | ❌ 平台绑定 |
| 开发成本 | ✅ 一次开发 | ❌ 每个平台单独开发 |
| 维护 | ✅ 社区维护 | ❌ 自己维护 |
| 安全 | ✅ 权限可控 | ⚠️ 依赖实现 |
最佳实践建议
1. 安全配置
默认情况下不要开放所有权限。对于文件系统服务器,建议设置为只读模式,并限制特定目录:
{
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/safe-dir"],
"readOnly": true
}
}
2. 按需加载
只配置实际需要的 MCP Server,避免过度授权带来的风险。
3. 日志监控
定期检查 MCP 调用日志,排查异常行为:
openclaw logs --filter mcp
总结
OpenClaw 配合 MCP 协议,为 AI 助手提供了标准化的工具接口能力:
- 一次配置,多渠道使用:飞书、Telegram、Discord 通用。
- 标准化工具生态:复用 Claude、VS Code 等平台的 MCP 服务器。
- 自托管,数据安全:所有数据都在自己的服务器上。
- 可扩展:随时添加新的 MCP Server。
通过这种方式,你可以逐步构建起属于自己的自动化工作流,让 AI 真正融入日常开发与管理中。
