Hermes Agent + Scrapeless MCP:构建一个网络智能助手
Scraping and Proxy Management Expert
TL;DR:
- Hermes Agent 可以将 Scrapeless 加载为本地 stdio MCP 服务器,并在启动时发现其网页工具。
- 一个经过验证的设置向 Hermes 暴露了八个选定的工具,而连接测试发现了服务器上的二十四个工具。
- 工具白名单使代理的可见表面专注于搜索、提取和有限的浏览器工作流程。
- 成功的 MCP 握手证明了连接和模式发现;仍然需要一个有效的 Scrapeless 密钥以进行实时网页调用。
Hermes Agent 已经知道如何推理工具。实用的集成问题更为狭窄:它如何在不将浏览器自动化、搜索和提取逻辑埋在代理内部的情况下获取当前网页证据?
MCP 提供了边界。Hermes 充当客户端。Scrapeless 作为工具服务器运行。该模型看到一组经过过滤的类型化操作,凭据保留在服务器环境中,而不是在提示中。
你可以用 Hermes Agent 和 Scrapeless MCP 做什么
该连接支持一组实用的网页感知代理任务:
- 搜索 Google 并将结构化结果传递回代理;
- 将页面内容提取为 Markdown 以进行研究或总结;
- 为 JavaScript 要求较高的页面创建一个云浏览器会话;
- 导航、检查交互元素、点击、输入和读取可见文本;
- 将网页操作跟踪与模型的解释分开。
Hermes 在其原生工具旁注册 MCP 工具。它的 MCP 指南 记录了本地 stdio 和远程 HTTP 服务器、自动发现和每个服务器过滤。这意味着对于已经支持 MCP 的服务器,不需要自定义 Hermes 插件。
为什么使用 Scrapeless MCP 服务器?
普通的 HTTP 获取适用于静态页面。研究实时网页的代理很快会遇到依赖于 JavaScript、交互控制、位置或维护会话的页面。Scrapeless 服务器将搜索、提取、爬虫和浏览器操作组合在一个 MCP 连接后面。
官方的 Scrapeless MCP 服务器存储库 记录了 stdio 和可流式传输的 HTTP 传输。本指南使用 stdio,因为它为 Hermes 提供了一个具有明确生命周期和小配置占用的本地子进程。
对于通过 CDP 而非 MCP 的直接浏览器连接,请使用单独的 Hermes Agent 和 Scraping Browser 指南。这两种方法解决不同的集成问题:CDP 暴露了浏览器连接;MCP 暴露了 Hermes 可以发现和过滤的类型化工具。
准备工作
在编辑 Hermes 配置之前准备以下内容:
- 在运行 Hermes 的机器上安装 Git、Node.js 和
npx; - 当前 Hermes 版本支持的 Python 版本范围;
- 一个 Scrapeless 帐户和 API 密钥;
- 一个终端,使
hermes能够解析到预期的安装位置。
将 API 密钥保密,不要放在 Markdown、shell 历史记录和代理提示中。Scrapeless 文档 解释了在何处创建和管理凭据。
将 Hermes Agent 连接到 Scrapeless MCP
安装带有 MCP 支持的 Hermes
标准的 Hermes 安装程序已经包括 MCP 支持。对于隔离的源安装,以下序列很有用,因为它将检出和虚拟环境固定在一个目录中。
bash
git clone https://github.com/NousResearch/hermes-agent
cd hermes-agent
python3.12 -m venv .venv
./.venv/bin/pip install -e '.[mcp]'
./.venv/bin/hermes --version
此序列是在 Hermes Agent v0.20.5 上运行,Python 版本为 3.12.13。官方安装指南 仍然是正常终端用户安装的首选路径,因为它管理启动器和支持依赖项。
配置 stdio 服务器
在活动的 Hermes config.yaml 下的 mcp_servers 添加一个 scrapeless 条目。在启动 Hermes 之前,将前提值替换为环境中的真实密钥。
yaml
mcp_servers:
scrapeless:
command: npx
args: ["-y", "scrapeless-mcp-server"]
env:
SCRAPELESS_KEY: "${SCRAPELESS_KEY}"
enabled: true
tools:
include:
- google_search
- scrape_markdown
- browser_create
- browser_goto
- browser_snapshot
- browser_click
- browser_get_text
- browser_close
resources: false
prompts: false
command、args、env 和 tools 密钥遵循 Hermes MCP 配置参考。白名单是经过深思熟虑的。它为研究助理提供了搜索、可读提取和有限的浏览器循环,而不暴露每个可用的操作。
开始使用 Scrapeless 抓取
利用 Scrapeless 提升你的网页抓取和自动化工作流程!
今天注册并获得 5 美元的免费充值 — 无需信用卡。
立即在 Scrapeless Dashboard 索取你的免费信用。
验证连接和工具发现
Hermes 包含一个连接测试,启动配置的服务器,执行 MCP 握手,并列出发现的工具。
bash
hermes mcp list
hermes mcp test scrapeless
经验证的运行报告了以下摘要:
text
scrapeless node ... 8 selected enabled
Connected
Tools discovered: 24
这两个计数描述了不同的表面。“八个已选择”是存储在 Hermes 配置中的允许列表。“二十四个被发现”是连接测试中返回的完整工具目录。在运行时,允许列表是模型所需的表面。
工具名称在 Hermes 中带有一个 MCP 命名空间,用于识别服务器和原生工具。确切的格式由 Hermes 处理;tools.include 中的服务器原生名称保持为 google_search、scrape_markdown 和浏览器操作名称。基础协议交换遵循 模型上下文协议规范。
如果在 Hermes 运行时配置发生更改,请在会话中使用 /reload-mcp。连接测试和凭证测试是分开的。即使后续的网页调用无法进行身份验证,握手在有效模式下也可以成功,因此在加载真实密钥后进行一次只读搜索。
如何实际使用这个:提示你的代理
最佳提示描述证据标准和允许的工具路径,而不是脆弱的点击序列。
你可以粘贴的提示
在网上搜索命名项目的当前安装要求。打开官方文档结果,提取相关部分为 Markdown,并返回一个简短的检查清单。引用源 URL,并区分记录的事实与你的推断。不要使用可写工具。
这个提示给 Hermes 留下了选择工具的空间,同时保持可检查的结果。搜索发现官方页面。Markdown 提取提供了可读的证据。答案带有 URL,并标识任何推断。
一个浏览器支持的提示
打开公共产品页面,检查互动页面结构,并报告可见计划名称及其显示单位。不要登录、提交表单或点击购买控件。包括最终页面的 URL,仅引用支持表格所需的最少文本。
这个版本在重要操作周围建立了负约束。允许列表也有帮助:除非所选的浏览器操作可以表达,否则看不到任何表单提交工具,并且提示禁止该操作。
Scrapeless MCP 工具表面
经过验证的服务器构建返回了二十四个工具,分为四个有用的类别:
| 类别 | 示例 | 在 Hermes 中的使用 |
|---|---|---|
| 搜索 | google_search, google_trends |
发现当前来源和趋势数据 |
| 提取 | scrape_markdown, scrape_html, scrape_screenshot |
将公共 URL 转换为模型可读的证据 |
| 爬虫 | crawl_start, crawl_result, crawl_cancel |
遍历定义的公共网站范围 |
| 浏览器 | 会话、导航、快照、输入、阅读和关闭工具 | 操作需要呈现或交互的页面 |
不要习惯性地暴露完整目录。报告撰写代理可能只需要搜索和 Markdown 提取。浏览器任务需要会话生命周期和页面操作。当这些权限集在实质上有所不同时,保持分开的 Hermes 配置或分开的服务器条目。
Scrapeless AI 代理表面 提供产品上下文,而 定价 有助于将预期的网络操作与账户计划进行映射。
你得到的回报
MCP 工具结果保持结构化消息,而不是隐藏的浏览器状态。搜索可以返回结果记录;提取可以返回 Markdown;浏览器快照可以返回适合下一个模型决策的元素描述。然后,Hermes 将选定的结果放入其任务上下文中。
这种分离改善了诊断。“服务器未能启动”,“工具发现失败”,“凭证被拒绝”和“页面未返回有用内容”是不同的事件。设备可以报告正确的事件,而不是将每个失败都转化为模糊的模型道歉。
结论
Hermes代理和无废MCP在一个干净的边界上契合:Hermes负责推理和协调;MCP服务器负责类型化的网络操作。经过验证的路径是安装、配置一个标准输入输出服务器、应用一个狭窄的允许列表、测试发现,并进行只读凭证限制的调用。
准备好构建一个网络感知的Hermes代理了吗?
加入我们的社区以获取免费计划,并与开发hermes代理研究工作流程的开发者联系:Discord · Telegram。
在app.scrapeless.com注册,并将Hermes连接到最小的有用网络工具界面。
常见问题
问:Hermes代理支持MCP服务器吗?
是的。Hermes代理支持本地标准输入输出和远程HTTP MCP服务器,在启动时发现它们的工具,并可以按服务器过滤可见工具。
问:Scrapeless标准输入输出服务器使用哪个环境变量?
文档中的标准输入输出配置使用SCRAPELESS_KEY。将其放入服务器环境中,并确保该值不出现在提示和提交的配置文件中。
问:为什么连接测试显示的工具比允许列表更多?
连接测试报告了服务器发现的目录,而允许列表定义了为模型所打算的子集。在经过验证的设置中,服务器返回了二十四个工具架构,而配置选择了八个。
问:成功的MCP连接证明API密钥有效吗?
不。成功的握手证明Hermes启动了服务器并发现了其架构。在加载真实密钥后运行只读的网络操作以验证服务认证。
问:是否应该启用每个Scrapeless MCP工具?
不。仅启用代理工作所需的操作。较小的工具集减少选择歧义,并限制错误操作的影响。
问:Hermes可以在没有AI代理框架的情况下使用Scrapeless吗?
Hermes在这种设置中就是代理运行时。它直接连接到Scrapeless MCP服务器,因此不需要额外的代理框架。
问:该设置可以使用HTTP而不是标准输入输出吗?
可以。这两个产品都记录了支持HTTP的MCP连接。标准输入输出在本地子进程中很方便;当服务器生命周期和凭证集中管理时,远程HTTP很有用。
问:MCP会覆盖网站访问规则吗?
不。MCP定义了客户端和工具服务器之间的通信。代理仍然需要获得访问目标的许可,必须使用公共或授权数据,并应遵循适用的条款和法律。
在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。




