Agent工坊

【Agent工坊】MCP Server 接入 Hermes Agent 完全指南:4 步配置模板,让你的 AI 操控一切

2026 年,MCP(Model Context Protocol)已成为 AI Agent 连接外部世界的标准协议。本文提供从零到生产环境的完整配置模板,包含可复制的代码片段和避坑清单。

为什么你的 AI Agent 需要 MCP?

如果你只让 Hermes Agent 在沙盒里写写代码、搜搜网页,那你只用到了它 30% 的能力。

MCP 的真正价值在于:让你的 Agent 成为操作系统级的自动化中枢。通过 MCP Server,Agent 可以:

  • 📊 操控数据库:查询 PostgreSQL、MongoDB,生成报表
  • 📁 管理文件系统:跨服务器读写文件、批量处理
  • 🔗 调用第三方 API:Notion、Slack、GitHub、飞书——任何有 API 的服务
  • 🖥️ 执行系统命令:部署服务、重启容器、监控告警

一句话总结:MCP 把「Agent 只能聊」变成了「Agent 能做事」。

Hermes Agent 从 v0.9.0 开始原生支持 MCP 协议。你只需要一个 JSON 配置文件,就能让 Agent 获得数十个新工具。

第一步:选一个 MCP Server 快速启动(30 秒)

MCP 生态已经有上百个现成的 Server。你不需要自己写——直接挑现成的。

最常用的三个 MCP Server(开箱即用)

MCP Server 功能 安装命令 适合场景
@anthropic/mcp-server-filesystem 文件系统读写 npx @anthropic/mcp-server-filesystem /path 批量文档处理
@anthropic/mcp-server-postgres PostgreSQL 查询 npx @anthropic/mcp-server-postgres $DB_URL 数据分析和报表
@anthropic/mcp-server-github GitHub 仓库操控 npx @anthropic/mcp-server-github 自动 PR、Code Review

一行命令启动文件系统 MCP Server

npx @anthropic/mcp-server-filesystem /home/agent/projects

输出:

MCP Server running on stdio
Available tools: read_file, write_file, list_directory, search_files, move_file

你的 Agent 现在可以读、写、搜索 /home/agent/projects 下的任何文件了。

⚠️ 安全提醒:MCP Server 的文件系统权限由启动参数决定。务必限定目录范围(如 /home/agent/projects),不要暴露 / 根目录。

第二步:配置 Hermes Agent 的 MCP 连接(核心步骤)

Hermes Agent 通过一个 JSON 配置文件连接 MCP Server。配置文件的路径取决于你的部署方式。

配置模板(直接复制)

在 Hermes Agent 的项目目录下创建 mcp_servers.json

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@anthropic/mcp-server-filesystem",
        "/home/agent/projects"
      ],
      "description": "项目文件管理:读写、搜索、批量操作"
    },
    "postgres": {
      "command": "npx",
      "args": [
        "-y",
        "@anthropic/mcp-server-postgres",
        "postgresql://user:pass@localhost:5432/mydb"
      ],
      "description": "数据库查询和分析"
    },
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@anthropic/mcp-server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
      },
      "description": "GitHub 仓库管理"
    }
  }
}

配置字段说明

字段 说明 必填
command 启动 MCP Server 的命令(node、python、npx 等)
args 命令行参数数组
env 环境变量(如 API Key、数据库密码)
description 工具描述,Agent 会用它来理解何时调用 ❌(但强烈建议填)

让 Hermes Agent 加载配置

方式一:启动时指定(推荐)

hermes-agent --mcp-config ./mcp_servers.json

方式二:在 Skill 中声明

# 在你的 Skill 文件(如 ai-neican-hotspot.md)的 frontmatter 中
---
mcp_servers:
  - filesystem
  - postgres
---

启动完成后,Agent 会自动发现所有配置的 MCP 工具。你可以在会话中输入:

列出你当前可用的所有工具

Agent 会输出包括 MCP 工具在内的完整工具列表。

第三步:测试你的 MCP 工具——一个真实的自动化场景

理论讲完了,来一个实战。场景:「每天早上 8 点,自动查询昨天的新增用户数,写入日报文件,推送到企业微信群。」

完整配置

mcp_servers.json 追加

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@anthropic/mcp-server-postgres", "postgresql://..."],
      "description": "生产数据库只读分析"
    },
    "filesystem": {
      "command": "npx", 
      "args": ["-y", "@anthropic/mcp-server-filesystem", "/home/agent/reports"],
      "description": "日报文件写入"
    }
  }
}

在 Hermes Agent 会话中输入

请完成以下每日任务:
1. 用 postgres 工具查询昨天的用户注册数:SELECT COUNT(*) FROM users WHERE created_at >= DATE('now', '-1 day')
2. 将结果格式化为「昨日新增用户:XXX 人」
3. 用 filesystem 工具写入 /home/agent/reports/daily-{日期}.md
4. 如果新增用户 > 100,标记为 📈 增长日;否则标记为 📊 平稳日

Agent 会依次调用:
1. postgres.query(sql="SELECT COUNT(*) FROM users...") → 返回 {count: 247}
2. filesystem.write_file(path="/home/agent/reports/daily-2026-06-25.md", content="📈 昨日新增用户:247 人")

实测结果:从输入指令到完成日报写入,全程 8 秒。

如何确认 MCP 工具已生效

在 Hermes Agent 中输入:

使用 filesystem 工具列出 /home/agent/reports 目录下的所有文件

如果返回了文件列表,说明 MCP 连接正常。

常见问题排查

问题 原因 解决方案
MCP Server not found npx 未安装或网络问题 先手动跑 npx @anthropic/mcp-server-filesystem 确认能启动
Tool not available 配置文件路径错误 检查 --mcp-config 参数是否指向正确路径
Permission denied 文件系统权限受限 确认 MCP Server 的目录参数存在且有读写权限
Connection timeout MCP Server 启动慢 args 增加超时参数,或换用本地安装而非 npx

第四步:生产环境优化——3 个关键配置

测试环境跑通了,上生产前还需要做这些:

1. 用环境变量管理敏感信息

❌ 错误做法:把 API Key 写死在 JSON 里

{
  "env": {
    "GITHUB_TOKEN": "ghp_abc123"  // 危险!
  }
}

✅ 正确做法:用系统环境变量

{
  "env": {
    "GITHUB_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}"
  }
}

然后在启动 Hermes Agent 前设置:

export GITHUB_PERSONAL_ACCESS_TOKEN="ghp_xxxx"
hermes-agent --mcp-config ./mcp_servers.json

2. 限制 MCP 工具的权限范围

MCP Server 的能力 = Agent 的能力。如果给了文件系统 / 根目录权限,你的 Agent 就能删除系统文件。

最小权限原则

// ✅ 只给项目目录
"args": ["-y", "@anthropic/mcp-server-filesystem", "/home/agent/projects"]

// ❌ 给了整个服务器
"args": ["-y", "@anthropic/mcp-server-filesystem", "/"]

对于数据库,建议创建只读账号

CREATE USER mcp_reader WITH PASSWORD 'secure_password';
GRANT SELECT ON ALL TABLES IN SCHEMA public TO mcp_reader;

3. 启用 MCP 工具日志

生产环境中需要追踪 Agent 调用了哪些 MCP 工具、传递了什么参数。在 mcp_servers.json 顶层增加:

{
  "mcpServers": { ... },
  "logging": {
    "level": "info",
    "file": "/home/agent/.hermes/logs/mcp.log"
  }
}

进阶:动态 Schema 路由——解决 MCP 工具设计的终极瓶颈

如果你要接入的不是标准数据库或文件系统,而是参数类型在运行时才知道的复杂 API,标准 MCP 的静态 JSON Schema 就不够用了。

这是 MCP 社区最近热议的「Dependent Types」问题(HN 73 分讨论):

举例:你有一个「编辑 3D 模型」的工具。不同的模型文件(.glb vs .fbx)有不同的可编辑属性。你无法预先在 JSON Schema 里穷举所有可能性。

解决方案:两阶段 Schema 路由

阶段1: LLM 选择目标资源
   get_model_type("scene.glb") 
   返回: {type: "glb", properties: ["vertices", "textures", "animations"]}

阶段2: 程序动态生成 JSON Schema
   generate_schema(type="glb", properties=[...])
   返回: {"type": "object", "properties": {"vertices": {...}, ...}}

阶段3: LLM 生成编辑指令
   edit_model("scene.glb", {vertices: [...]})

这套模式已经在 Defold 3D 编辑器的 MCP 接入中验证可行。如果你在做需要操控复杂数据结构的 AI Agent 产品,这个设计模式可以直接复用。

总结:你今天就能做的 3 件事

  1. 花 5 分钟启动你的第一个 MCP Server:选文件系统或数据库,一行 npx 命令就搞定
  2. 配置 Hermes Agent 连接:复制本文的 mcp_servers.json 模板,改路径和密钥即可
  3. 写一个自动化任务:从「查询数据库 → 生成报表 → 写入文件」这个经典三段式开始

核心认知:MCP 不是锦上添花的功能——它是 AI Agent 从「聊天机器人」升级为「自动化中枢」的唯一通道。2026 年的 AI 创业者,必须掌握 MCP。


下一篇预告:【Agent工坊】Hermes Agent Cron 定时任务:让你的 AI 流水线全自动运行

Agent工坊 #MCP协议 #HermesAgent #AI自动化 #一人公司