关于 hashnet
hashnet 是面向 HOL Registry Broker 生态的 MCP 服务,用于发现、交流和注册 Agent,并提供工作流自动化。它支持 stdio 与 HTTP 传输方式。
主要功能
- 01搜索与向量搜索 Agent
- 02聊天会话与消息历史
- 03注册 Agent 并跟踪完成状态
- 04发现、委派和注册工作流
- 05支持 stdio 与 HTTP 传输
适用场景
- 01按能力或查询查找 Agent
- 02开始或恢复 Agent 对话
- 03向注册中心注册 Agent
- 04通过工作流委派任务
MCP 相关
向 MCP 客户端提供发现、聊天、注册和工作流工具。支持 stdio、Streamable HTTP,以及带 SSE 的旧版 HTTP。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Hashnet MCP JS
适用于 HOL Registry Broker 生态系统的通用 MCP 服务,支持发现、聊天、注册、积分和工作流自动化。
生态系统
| 界面 | 链接 |
|---|---|
| npm 包 | @hol-org/hashnet-mcp |
| GitHub 仓库 | hashgraph-online/hashnet-mcp-js |
| GitHub 版本发布 | 版本发布 |
| 文档 | hol.org/mcp |
| CodeSandbox | 在浏览器中打开示例 |
快速入门
pnpm install
cp .env.example .env
pnpm dev:http
常见的启动模式:
pnpm dev:stdiopnpm dev:httppnpm dev:http:compatnpx @hol-org/hashnet-mcp --helpnpx @hol-org/hashnet-mcp --stdionpx @hol-org/hashnet-mcp --http --host 127.0.0.1 --port 3333
全局安装或在本地链接后,可执行文件为 hashnet-mcp。
支持的传输方式
| 传输方式 | 端点 | 说明 |
|---|---|---|
| stdio | 进程 stdin/stdout | 最适合本地 Agent 运行时 |
| Streamable HTTP | /mcp、/mcp/stream | 推荐的 HTTP 传输方式 |
| 旧版 HTTP + SSE | /mcp/sse、/mcp/messages | 通过 FEATURE_LEGACY_SSE=1 启用 |
运行时实用端点:
/healthz/readyz/metrics
工具
- 发现:
hol.stats、hol.capabilities、hol.search、hol.vectorSearch、hol.resolveUaid - 聊天:
hol.chat.readiness、hol.chat.createSession、hol.chat.sendMessage、hol.chat.retry、hol.chat.history、hol.chat.resume、hol.chat.end - 注册:
hol.getRegistrationQuote、hol.registerAgent、hol.waitForRegistrationCompletion - 工作流:
workflow.discovery、workflow.delegate、workflow.registration
工具成功响应会在 structuredContent 中使用结构化封装:
okdatameta
工具失败时会返回 isError: true,并附带结构化、机器可读的错误字段(code、category、retryable)。
配置
| 变量 | 必需 | 备注 |
|---|---|---|
REGISTRY_BROKER_API_URL | 否 | 默认值为 https://hol.org/registry/api/v1 |
REGISTRY_BROKER_API_KEY | 否 | 使用静态 Broker API 密钥启用付费工具 |
BROKER_REQUEST_TIMEOUT_MS | 否 | 上游请求超时默认值为 60000 |
MCP_TRANSPORT | 否 | http(默认)或 stdio |
MCP_HOST | 否 | 默认值为 127.0.0.1 |
MCP_PORT | 否 | 默认值为 3333 |
MCP_ALLOWED_ORIGINS | 否 | 以逗号分隔的允许列表 |
MCP_SERVER_BEARER_TOKEN | 否 | 绑定到非本地主机时必需(例如 0.0.0.0) |
MCP_SESSION_IDLE_TTL_MS | 否 | 默认值为 900000 |
MCP_SESSION_MAX_COUNT | 否 | 默认值为 250 |
MCP_SESSION_REAP_INTERVAL_MS | 否 | 默认值为 60000 |
LEDGER_ACCOUNT_ID | 否 | 通用账本身份备用值 |
HEDERA_ACCOUNT_ID | 否 | Hedera 账户 ID |
HEDERA_NETWORK | 否 | 例如 hedera:testnet |
HEDERA_PRIVATE_KEY | 否 | Hedera 私钥 |
EVM_LEDGER_NETWORK | 否 | 例如 eip155:1 |
ETH_PK | 否 | EVM 私钥 |
安全默认设置
- 默认绑定到
127.0.0.1。 - 对存在
Origin的 HTTP 请求进行验证。 - 绑定到非本地主机时强制执行 Bearer 令牌身份验证。
- 清理空闲 HTTP 会话,并限制活跃会话数量。
- 在日志中隐藏敏感值。
开发
| 命令 | 用途 |
|---|---|
pnpm build | 编译可分发构件 |
pnpm start | 运行已编译的服务 |
pnpm lint | 运行 ESLint |
pnpm typecheck | 运行 TypeScript 检查 |
pnpm test:run | 运行一次 Vitest |
pnpm test:coverage | 运行带覆盖率统计的 Vitest |
pnpm check:no-stubs | 强制执行无存根约定 |
pnpm smoke:http | 可流式传输的 HTTP 冒烟测试 |
pnpm smoke:stdio | stdio 冒烟测试 |
发布说明自动化
GitHub 发布版本会根据已合并的拉取请求自动生成:
- 在发布期间创建发布标签(
vX.Y.Z) - 使用 GitHub 的发布说明引擎生成 GitHub 发布说明
- 通过
.github/release.yml控制变更日志分类 - 为每个发布版本附加规范文档链接
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。