Hermes Agent v0.8.0 大幅提升了 MCP(Model Context Protocol)的安全性和可用性,MCP 现在是 Hermes 扩展工具能力最核心的机制。这篇文章讲如何用 MCP 让 Hermes 真正连接到你的工具生态。
MCP 是什么?为什么重要?
MCP(Model Context Protocol) 是 Anthropic 推出的开放协议,让 AI Agent 能够标准化地调用外部工具和服务。
对 Hermes 用户来说,MCP 意味着:
- 让 Hermes 操作你的 GitHub 仓库(不只是看代码,还能创建 PR、管理 Issue)
- 连接你的数据库,直接查询和分析数据
- 调用内部 API,访问公司专有工具
- 使用任何团队自己开发的能力
MCP 的角色:标准化接口层。一个 MCP Server 封装了某种能力,Hermes(MCP Client)通过标准协议调用,不需要为每个工具写专属适配器。
基础配置
安装 MCP Server
# 安装常用 MCP Server
hermes mcp install github # GitHub 操作
hermes mcp install filesystem # 文件系统扩展权限
hermes mcp install postgres # PostgreSQL 直接查询
hermes mcp install slack # Slack 消息操作
hermes mcp install brave-search # Brave 搜索(比默认搜索更强)
hermes mcp install puppeteer # 浏览器自动化
# 查看已安装的 MCP Servers
hermes mcp list
# 查看某个 Server 提供的工具
hermes mcp describe github手动配置(适合自定义 Server)
# ~/.hermes/config.yaml
mcp:
servers:
- name: github
type: npx
command: "@modelcontextprotocol/server-github"
env:
GITHUB_PERSONAL_ACCESS_TOKEN: your-token-here
- name: my-internal-api
type: http
url: "http://localhost:8080/mcp"
# v0.8.0 新增:OAuth 2.1 PKCE 认证
auth:
type: oauth2
client_id: your-client-id
scopes: ["read:data", "write:tasks"]
- name: postgres-prod
type: npx
command: "@modelcontextprotocol/server-postgres"
env:
POSTGRES_CONNECTION_STRING: "postgresql://user:pass@host:5432/db"v0.8.0 新增:MCP OAuth 2.1 PKCE
v0.8.0 为需要认证的 MCP Server 实现了完整的 OAuth 2.1 PKCE 流程。
为什么重要:之前连接需要认证的企业内部 API(Jira、Salesforce、内部系统),只能把长期 API Key 明文写进配置文件——安全风险很高。
现在的方式:
mcp:
servers:
- name: jira
type: http
url: "https://your-company.atlassian.net/mcp"
auth:
type: oauth2_pkce
client_id: "hermes-jira-client"
authorization_endpoint: "https://auth.atlassian.com/authorize"
token_endpoint: "https://auth.atlassian.com/oauth/token"
scopes: ["read:jira-work", "write:jira-work"]首次连接时触发 OAuth 授权流程(浏览器弹窗),之后 Token 自动刷新,不保存长期密钥。
v0.8.0 新增:OSV 恶意软件扫描
安装 MCP 扩展包时自动扫描 OSV(Open Source Vulnerabilities)数据库:
hermes mcp install some-third-party-server
# [扫描中] 检查 some-third-party-server@1.2.3 是否有已知漏洞...
# ✅ 未发现已知漏洞,继续安装
# 或
# ⚠️ 发现 2 个漏洞:CVE-2026-XXXX (HIGH),是否继续?[y/N]对于从 npm/pypi 安装的第三方 MCP Server,这层扫描很重要——MCP Server 在 Hermes 内以较高权限运行。
实用场景:GitHub 完整操作
配置好 GitHub MCP Server 后,Hermes 可以做的事情远超"看代码":
# 创建 PR
把 feature/user-auth 分支的改动整理成一个 PR,
标题简洁,描述包含改动列表和测试情况,
打上 enhancement 标签,请求 @teamlead review
# 批量处理 Issues
把所有超过 30 天没有更新的 open issue 标记为 stale,
发评论询问是否还需要处理,
如果 7 天没有回复自动关闭
# 生成 Release Notes
基于 v1.2.0 和 v1.3.0 之间的所有 commit,
生成用户友好的 Release Notes,
按功能/修复/性能/破坏性变更分类,
发布到 GitHub Releases
# 代码搜索和分析
搜索所有用了已废弃 API createUser() 的文件,
列出文件路径和行号,
评估迁移到 users.create() 的工作量实用场景:数据库直接查询
# 使用 PostgreSQL MCP Server
分析用户留存数据:
查询过去 30 天注册的用户,
统计 7 天内回访率、30 天留存率,
按注册渠道(utm_source)分组,
生成对比表格,找出转化率最高的渠道
检查慢查询:
查询 pg_stat_statements,
找出过去 24 小时平均执行时间超过 100ms 的查询,
分析是否缺少索引,给出优化建议安全提示:生产数据库建议用只读账号连接,避免 Agent 意外执行破坏性 SQL。
自己开发 MCP Server
需要 Hermes 连接内部工具?用 MCP SDK 快速实现:
# 用 Python MCP SDK 写一个简单的内部工具 Server
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("internal-tools")
@mcp.tool()
def get_deployment_status(service: str, env: str) -> dict: