内置工具
Hermes Agent 内置了大量开箱即用的工具集,每个工具集中包含一到多个工具,如下是几个最核心的内置工具集。
File工具集
File 工具集是 Agent 进行代码开发和系统管理的基础,其设计原则是安全优先,避免使用危险的 shell 命令。包含的主要工具如下:
- read_file:读取文件,支持行号显示和分页读取。
- write_file:写文件,自动创建父目录,但会完全覆盖原文件。
- patch:修改文件,有多种模糊匹配策略,能容忍微小的缩进和空格差异,实现精准的代码修改,是进行代码重构和配置更新的首选工具。
- search_files:查找文件,支持正则表达式搜索。
Terminal工具集
Terminal 工具集提供了完整的进程管理能力,支持前台和后台任务。包含的主要工具如下:
- terminal:执行 shell 命令。支持 background=true运行长时任务。
- process:后台进程管理器。可以 list(查看)、poll(检查状态)、log(获取输出)、kill(终止)后台任务
Browser工具集
Browser 工具集提供了完整的浏览器控制能力,特别适合处理需要 JavaScript 渲染的动态网页。包含主要工具如下:
- browser_navigate:导航到 URL,是所有浏览器操作的起点。
- browser_snapshot:获取页面的无障碍树(Accessibility Tree)。这是理解网页结构的关键——它会将页面转换为带引用 ID(如 @e1)的文本结构。
- browser_click/ browser_type:基于快照中的引用 ID 进行操作,而非脆弱的 XPath 或 CSS Selector。
- browser_vision:对页面进行截图并用视觉 AI 分析,专用于处理验证码或复杂布局验证。
我们可以在 CLI 对话中询问Hermes支持的内置工具:

或者在终端执行“hermes tools list”来查看Hermes支持的内置工具集:

关于Hermes Agent支持的更多工具集可以查看官网:https://hermes-agent.nousresearch.com/docs/zh-Hans/reference/tools-reference
MCP 扩展工具配置
Hermes Agent中,当内置工具无法满足你的定制化需求时(例如需要操作公司内部数据库、调用私有 API 或连接智能硬件),Hermes 提供了 MCP (Model Context Protocol)扩展机制。MCP 是一个开放协议,允许 Hermes 连接到外部的“MCP Server”从而获取海量第三方工具。
Hermes 支持两种类型的 MCP 服务器:Stdio(本地进程)和 HTTP(远程服务)。所有的配置均位于 ~/.hermes/config.yaml文件的 mcp_servers块中,配置的形式如下:
mcp_servers:
<server_name>:
command: "..." # stdio 服务器
args: []
env: {}
# 或者
url: "..." # HTTP 服务器
headers: {}
enabled: true
timeout: 120
connect_timeout: 60以上两种类型的配置参数参考如下:
| 配置项 | 类型 | 含义 |
|---|---|---|
| command | string | stdio MCP服务器的可执行文件 |
| args | list | 传递给stdio服务器的参数 |
| env | mapping | 传递给stdio 服务器的环境变量 |
| url | string | HTTP MCP 端点 |
| headers | mapping | 远程服务器的HTTP头信息 |
| enabled | bool | 为false跳过整个服务器 |
| timeout | number | 工具调用超时时间(秒) |
| conect_timeout | number | 初始连接超时时间(秒) |
使用两种类型的MCP前需要安装MCP支持:
#系统中安装pip 命令
sudo apt install python3-pip
#系统中安装uv
pip3 install uv
#用uv创建虚拟环境并激活环境
cd ~/.hermes/hermes-agent
uv venv
source .venv/bin/activate
#安装mcp支持
cd ~/.hermes/hermes-agent
uv pip install -e ".[mcp]"注意:uv是一个使用Rust编写的python包管理器,速度快(比pip/conda 快5-10倍),完全兼容 pip的命令。
Stdio服务器(本地)
Stdio 服务器作为本地子进程运行,Stdio进程间通过标准输入(stdin)和标准输出(stdout)流进行通信的方式。如下是Hermes Agent 配置 Stdio MCP工具步骤。
配置“~/.hermes/config.yaml”文件
在Ubuntu系统中找到“~/.hermes/config.yaml”文件,在该文件中添加“mcp_servers”字段,如下:
shellmcp_servers: filesystem: command: "npx" args: ["-y", "@modelcontextprotocol/server-filesystem", "/root/.hermes"]注意:@modelcontextprotocol/server-filesystem是由 Anthropic(Claude大模型的开发公司)官方编写并开源,当在命令行中执行 npx -y @modelcontextprotocol/server-filesystem时,npx工具会自动从 npm (Node Package Manager)官方仓库中下载并临时运行这个由 Anthropic 发布的标准化包。更多工具参考:https://github.com/modelcontextprotocol/servers 。

重新启动hermes ,使用 mcp 工具
中文回复我你具备哪些mcp工具?
列出 /root/.hermes 目录下的文件,并总结该目录下的内容结构。
HTTP服务器(远程)
这里以魔塔社区中MCP为例演示Hermes Agent中配置远程MCP 工具服务。登录 https://www.modelscope.cn/mcp/servers/@Joooook/12306-mcp ,启动该服务:

然后将远程URL配置在Hermes Agent中,步骤如下:
配置“~/.hermes/config.yaml”文件
在Ubuntu系统中找到“~/.hermes/config.yaml”文件,在该文件中的“mcp_servers”字段下添加如下内容:
jsonmcp_servers: 12306-mcp: type: streamable_http url: https://mcp.api-inference.modelscope.net/58bf9bfab9314a/mcp filesystem: command: "npx" args: ["-y", "@modelcontextprotocol/server-filesystem", "/root/.hermes"]重新启动hermes ,使用 mcp 工具
中文告诉我你具备哪些mcp工具?
查询今日北京到上海的高铁还有座位的高铁车次