你让 Hermes Agent「帮我搜一下最新的行业报告」,它回了一句:「我没有联网搜索的能力,你可以把内容粘贴过来」。
或者你让它「帮我读一下这个本地文件」,它说:「我无法直接访问你电脑上的文件」。
这不是 Hermes Agent 的 bug,是默认配置的工具集就这些。而 MCP 是给它接上新工具的方式。
MCP 是什么:一句话理解
MCP 全称 Model Context Protocol(模型上下文协议),是 Anthropic 在 2023 年底开源的一个标准接口。
最直观的比喻:MCP 是 AI 工具的 USB 接口。
在 MCP 出现之前,每个 AI 框架都要自己写工具适配代码——接 GitHub 写一套、接数据库写一套、接浏览器写一套,互不通用。有了 MCP,工具开发者只需按 MCP 标准写一次,所有支持 MCP 的 AI 客户端(包括 Hermes Agent、Claude Desktop、Cursor 等)都能直接用。
结果:现在有数千个现成的 MCP 服务器,覆盖了几乎你能想到的每种工具。
它在技术上怎么工作的(可以跳过)
你的消息
↓
Hermes Agent(MCP 客户端)
↓ MCP 协议(JSON-RPC)
MCP 服务器(本地进程 or 远程 API)
↓
实际工具(文件系统 / 搜索引擎 / GitHub API / 数据库...)
↓
结果返回给 Hermes → 组织成回复发给你
Hermes Agent 本身是 MCP 客户端,MCP 服务器是独立运行的小程序,负责把外部工具翻译成 Hermes 能调用的格式。两者通过标准协议通信,互相不需要了解对方的内部实现。
先安装 MCP 支持
如果你是通过 pip install hermes-agent 安装的,需要额外装 MCP 依赖:
pip install "hermes-agent[mcp]"
一键部署的版本通常已经包含这个依赖,可以跳过。确认方法:
hermes --version
# 如果输出里包含 "mcp: enabled" 就不用装
实操:接入网页搜索能力
用 Brave Search MCP 举例——这是目前对中国用户最友好的免费搜索 MCP(不需要翻墙,有免费额度)。
第一步:申请 Brave Search API Key
访问 brave.com/search/api,注册后选免费套餐(每月 2000 次查询,够个人用)。把 API Key 复制备用。
第二步:确认本地有 Node.js
node --version
看到版本号(如 v20.x.x)就行。没有的话去 nodejs.org 装 LTS 版本。
第三步:编辑 Hermes 配置文件
# 打开配置文件
nano ~/.hermes/config.yaml
# 或者用你习惯的编辑器
在文件里加入(注意缩进):
mcp_servers:
brave_search:
command: "npx"
args:
- "-y"
- "@modelcontextprotocol/server-brave-search"
env:
BRAVE_API_KEY: "你的 API Key 填这里"
保存,重启 Gateway:
hermes gateway stop
hermes gateway start
第四步:验证工具已接通
hermes tools list
输出里应该能看到 mcp_brave_search_brave_web_search 这个工具名。看到了就说明接通了。
测试效果
现在在 Telegram 里发:
搜索「2026 年 AI Agent 最新进展」,给我一个 3 条要点的摘要
这次 Hermes 会调用 Brave Search 查询,然后组织结果给你——而不是说「我没有联网能力」。
常用 MCP 服务器推荐
本地工具类
文件系统(读写本地文件)
mcp_servers:
filesystem:
command: "npx"
args:
- "-y"
- "@modelcontextprotocol/server-filesystem"
- "/Users/你的用户名/Documents" # 只允许访问这个目录
接通后,可以让 Hermes「读一下桌面上的会议记录」「整理 Documents 里的文档」。
GitHub(读写代码仓库、Issues、PR)
mcp_servers:
github:
command: "npx"
args:
- "-y"
- "@modelcontextprotocol/server-github"
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_你的Token"
接通后,可以让 Hermes「帮我看看仓库最近的 Issues 里有没有 bug 反馈」「把这个改动写成 PR 描述」。
Puppeteer(控制浏览器、截图、填表单)
mcp_servers:
puppeteer:
command: "npx"
args:
- "-y"
- "@modelcontextprotocol/server-puppeteer"
接通后,可以让 Hermes「打开这个网页截图给我」「填写这个表单」。适合自动化网页操作。
远程 HTTP 类(不需要本地安装 Node.js)
如果工具提供商直接给了一个 MCP API 地址,用这个格式:
mcp_servers:
my_remote_tool:
url: "https://api.example.com/mcp"
headers:
Authorization: "Bearer 你的ApiKey"
同时接多个 MCP
可以在 mcp_servers 下写多个,Hermes 会同时加载所有:
mcp_servers:
brave_search:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-brave-search"]
env:
BRAVE_API_KEY: "xxx"
filesystem:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/Documents"]
github:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"
工具会自动以 mcp_服务器名_工具名 的格式注册,互不干扰。
只暴露部分工具(进阶)
如果某个 MCP 服务器提供了很多工具,但你只需要其中几个,可以用白名单过滤:
mcp_servers:
github:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"
tools:
include:
- "list_issues"
- "create_issue"
- "get_pull_request"
# 其他 GitHub 工具不暴露给 Agent
工具越少,Agent 调用时的决策越准确,响应也更快。
常见错误
错误:npx: command not found
说明没装 Node.js,或者 Node.js 不在 PATH 里。
node --version # 检查是否安装
which npx # 检查 npx 是否可用(Linux/macOS)
装好 Node.js 之后重新运行 hermes gateway start。
错误:MCP server 'xxx' failed to start
第一次运行会下载 MCP 包,可能需要 1-2 分钟。如果是在国内网络,npm 下载慢,换镜像源:
npm config set registry https://registry.npmmirror.com
然后重启 Gateway 重试。
错误:工具列表里没有出现新工具
检查配置文件缩进是否正确(YAML 对缩进很敏感,必须用空格,不能用 Tab):
mcp_servers: # 顶级 key,无缩进
brave_search: # 2 个空格缩进
command: "npx" # 4 个空格缩进
args: # 4 个空格缩进
- "-y" # 6 个空格缩进
错误:工具调用报 API Key invalid
检查 API Key 有没有多余的空格或换行,直接复制粘贴最安全。
去哪里找更多 MCP 服务器
- 官方列表:modelcontextprotocol.io/servers——按类别浏览,数据库、通讯、云服务都有
- 社区目录:mcp.so——第三方收录,按使用量排序
- GitHub 搜索:搜
mcp-server关键词,很多个人开发者写了特定场景的 MCP
只要 README 里写了支持 stdio 或者 HTTP MCP 协议,就能按本文方法接入 Hermes Agent。
MCP 的核心价值在于「一次学会,处处能用」。接完 Hermes Agent 之后,同样的 MCP 服务器也能接进 Claude Desktop 或 Cursor——配置格式几乎一样,不需要重新学。
想实际用起来?试试这个完整场景:接入 GitHub MCP + Brave Search,让 Hermes 每天自动监控竞品的 GitHub 动态并发报告——参考 Vibe Coder #1:竞品监控机器人