mcpField
H
hosannaith-mcp

hosannaith-mcp

本地服务
hosannaith.com金融数据0今天更新

关于 hosannaith-mcp

Hosannaith 为 Agent 和开发者提供 x402 服务可靠性检查,依据持续监测历史评估端点的可用性、支付行为和延迟。其 MCP 服务支持单个及批量查询,付费结果通过 Algorand 上的 USDC 结算。

主要功能

  1. 01可用性与延迟可靠性评分
  2. 02检查 402 行为是否正确
  3. 03持续积累端点监测记录
  4. 04检查单个端点可靠性
  5. 05单次批量检查最多 50 个端点

适用场景

  1. 01将付款路由到 x402 端点前评估其可靠性
  2. 02比较多个端点的可靠性
  3. 03通过 MCP 客户端查询端点可靠性

MCP 相关

MCP 服务提供免费信息工具,以及付费的单个和批量可靠性检查工具。付费检查通过 Algorand 上的 x402 USDC 微支付结算。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cameron4316-hosannaith": {
"command": "npx",
"args": [
"-y",
"hosannaith-mcp"
],
"env": {
"AVM_MNEMONIC": "<AVM_MNEMONIC>"
}
}
}
}
启动命令npx -y hosannaith-mcp
需要配置的环境变量
AVM_MNEMONIC密钥25-word mnemonic of a funded, USDC-opted-in Algorand account used to pay for reliability scores. Use a low-balance throwaway account.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmhosannaith-mcp0.2.1

工具

3

收录的工具列表 · 更新于 1 周前

此工具无需参数。

详细介绍

Hosannaith

基于 x402、按调用付费的可靠性预言机——已在 Algorand 主网运行。

🔗 在线应用: hosannaith.com · API: api.hosannaith.com · 代码仓库: github.com/cameron4316/x402-oracle-server

问题

随着 x402 将 API 变为按请求付费的服务,Agent 越来越常需要向自己并未构建的端点付费——却无法在发送真实 USDC 前判断端点是否可靠。失效或行为异常的端点会悄无声息地浪费资金,并导致自动化流程中断。

功能

Hosannaith 本身就是一个 x402 端点。它会独立、持续地监控其他 x402 端点,并按需出售经过验证的可靠性评分:正常运行时间、正确的 402 行为以及延迟百分位数;评分由真实累积的历史记录支撑——每个响应都会标示其置信度("history" 表示评分有历史记录支撑,"one-shot" 表示首次查询该目标)。这是 x402 对 x402 的监控。

GET https://api.hosannaith.com/reliability?target=<x402-endpoint-url>

未付款的请求会收到 402 Payment Required 响应和付款说明;已付款请求会通过 GoPlausible facilitator 在 Algorand 上以 USDC 结算,并返回类似以下内容的 JSON:

可在链上验证: 首笔主网结算 — 3F2ATV3NCRVOI45IEL6OUKAWED3NQX246WJADESJB5CFR6LIXGCQ

{
  "target": "https://x402.example.com/api",
  "status": "pass",
  "score": 98.7,
  "detail": {
    "observations": 1439,
    "windowHours": 24,
    "uptimePct": 100,
    "correct402Pct": 100,
    "p50LatencyMs": 88,
    "p95LatencyMs": 127,
    "confidence": "history"
  }
}

在你自己的代码中使用

一个精简的 TypeScript SDK 封装了完整的 x402 按调用付费握手流程(402 → 签署 USDC 付款 → 重试),无需自行实现:

import { getReliability } from 'hosannaith-client';

const result = await getReliability('https://some-x402-endpoint/api', {
  mnemonic: process.env.AVM_MNEMONIC!, // 25-word Algorand mnemonic, funded with USDC
});

console.log(result.score, result.detail.confidence);

参见 sdk/typescript/,了解客户端、可运行示例和完整使用文档。

从任意 MCP Agent(Model Context Protocol)使用

本代码仓库还提供了一个 MCP 服务,位于 mcp/——已发布到 npm,名称为 hosannaith-mcp,并列入官方 MCP Registry,名称为 io.github.cameron4316/hosannaith-mcp。 它让任何 Model Context Protocol 客户端(Claude Desktop、Cursor 和其他 MCP Agent)都能在为 x402 端点付款前,评估其可靠性。

该服务基于官方 MCP TypeScript SDK(@modelcontextprotocol/sdk)构建,提供三个 MCP 工具:

  • get_hosannaith_info — 免费;说明评分结构以及如何使用评分。
  • check_x402_reliability — 付费;查询单个端点的可靠性评分,并通过 x402 在 Algorand 上以 USDC 小额付款结算。
  • check_x402_reliability_batch — 付费;单次调用最多评估 50 个端点。

将其添加到 MCP 客户端的配置中:

{
  "mcpServers": {
    "hosannaith": {
      "command": "npx",
      "args": ["-y", "hosannaith-mcp"],
      "env": { "AVM_MNEMONIC": "<25-word Algorand mnemonic, funded with USDC>" }
    }
  }
}

参见 mcp/,了解 MCP 服务、其工具和完整设置文档。

架构与愿景

该架构刻意设计为可插拔:每个付费产品都实现 Check 契约(参见 src/checks/types.ts)。可靠性功能率先推出;面向代币化的合规/证明产品——这是机构将现实世界资产引入链上所需的信任层——计划作为第二个 Check 加一条路由推出,无需重写支付流程。

监控器(pnpm monitor,在生产服务器上持续运行)会按间隔为每个目标记录一次观测结果,以仅追加的方式写入 data/observations.jsonl。这些历史记录会不断累积,且之后无法重建——以上每项评分都有真实、持续的观测记录支撑,而非合成估算。


开发者指南

以下内容均为在本地运行 Hosannaith(默认使用测试网)的设置和参考资料,或用于了解代码库——使用上文的在线 API 无需这些内容。


1. 安装

pnpm install
# runtime deps (exact packages from the official Algorand tutorial):
pnpm add @x402/core @x402/avm @x402/hono @x402-avm/extensions hono @hono/node-server dotenv

2. 配置

cp .env.example .env

然后编辑 .env:

  • AVM_ADDRESS — 一个测试网账户,需存入 ALGO 并选择加入测试网 USDC。
  • 目前保持 NETWORK=testnet 和 GoPlausible 的 FACILITATOR_URL 不变。
  • MONITOR_TARGETS 已指向 Foundation 的公开示例端点。

测试网设置(账户、水龙头、USDC 选择加入)请参照官方教程: https://dev.algorand.co/resources/x402-on-algorand/

3. 运行(两个终端)

pnpm monitor   # terminal 1 — starts collecting observations immediately
pnpm dev       # terminal 2 — starts the paid resource server on :4021

完整性检查:

curl http://localhost:4021/health                 # -> {"ok":true,...}  (free)
curl -i "http://localhost:4021/reliability?target=https://x402.goplausible.xyz/examples/weather"
#  -> HTTP 402 Payment Required  (correct: it's a PAID route)

如需付款并获取返回的 JSON,请将教程中的客户端指向 http://localhost:4021/reliability?target=...(客户端代码: https://dev.algorand.co/resources/x402-on-algorand/#part-1-build-the-client)。


文件结构

src/
  index.ts              Hono app + x402 wiring (edit sparingly)
  monitor.ts            Standalone monitor process (pnpm monitor)
  config.ts             Network/asset/facilitator config; testnet<->mainnet switch
  routes.config.ts      Paid routes + Bazaar discovery metadata  <-- add compliance route here
  checks/
    types.ts            The pluggable Check contract (shared by all products)
    registry.ts         Maps check id -> implementation
    reliability/
      monitor.ts        probe() + startMonitor()
      store.ts          Observation type + append-only JSONL store (swappable)
      score.ts          Turns observations into a 0-100 score
      index.ts          The reliability Check (reads store, computes score)
data/
  observations.jsonl    Append-only history (git-ignored; compounding)

主网已上线——准确说明 CAIP-2 覆盖项

src/config.ts 中的 FACILITATOR_TESTNET_CAIP2 和 MAINNET_CAIP2 是硬编码的,并非从 @x402/avm 导入——这是有意为之,并非疏忽。实际情况如下:

@x402/avm 导出的 ALGORAND_TESTNET_CAIP2 / ALGORAND_MAINNET_CAIP2 是符合规范的截断版 CAIP-2 格式(依据 Algorand CAIP-2 命名空间配置文件;已在上游 x402-foundation/x402 issue #2904 / PR #2931 中修复)。问题不在这个包。在线的 GoPlausible facilitator(facilitator.goplausible.xyz)运行的是 GoPlausible/x402-avm,这是一个比上游落后数百次提交的分支,早于该修复——因此,其 /supported 端点在测试网和主网上仍会公布旧版、不符合规范的完整创世哈希格式。本服务硬编码了 facilitator 实际要求的值,这些值已通过 curl https://facilitator.goplausible.xyz/supported 在线验证,并非猜测,也不是包中的常量。

如果 GoPlausible 将其分支同步到上游修复,则必须将这两个常量恢复为从 @x402/avm 导入——完整说明请参阅 src/config.ts 中各常量旁的注释。我们已向上游 x402-foundation/x402 提交跟踪报告(GoPlausible 自己的分支限制创建 issue,因此无法在该处提交)。

如需自行在主网上运行此服务:设置 NETWORK=mainnet,并将 AVM_ADDRESS 设为已选择加入主网 USDC 的固定收款地址(ASA 31566704,已在 src/config.ts 中设置)。routes.config.ts 的 extra 属性中的 tag 字段用于将活动归属到 Algorand Global x402 Challenge。

注意事项

  • 跟踪 x402 协议 2.26.0(package.json 为 @x402/core、@x402/avm 和 @x402/hono 固定了 ^2.26.0;Algorand discovery/Bazaar 包 @x402-avm/extensions 的版本单独管理,目前为 ^2.6.1——运行 pnpm ls 查看确切解析版本)。
  • 在 pnpm install 后运行 pnpm typecheck,以便在升级依赖版本时检查 API 是否发生变化。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。