# @seekdaseek/agentfeed-mezo 中文文档

规范地址：https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/

版本：0\.2\.0
npm 元数据更新时间：2026-11-02T08:46:12.610Z
中文译文更新时间：2026-11-02T10:41:12.341Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40seekdaseek/agentfeed-mezo
原文对照：https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/?lang=original
项目主页：https://mezo.ochinimus.app/
源码仓库：https://github.com/seekdaseek/agentfeed-mezo

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：130 kB，21 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=22
- 运行依赖：3 个
- 首次发布：2026-11-02T08:44:33.914Z
- 最新版本发布：2026-11-02T08:46:12.188Z
- 已发布版本数：2（近 12 个月 2 个）

## 中文简介

在Mezo和Base的MUSD上，每次呼叫都向AgentFeed付费。MCP服务器和用于代理的CLI，以及mezo.ochinimus.app背后的HTTP 402网关。

## 安装

```sh
npm install @seekdaseek/agentfeed-mezo
```

也可以使用：`pnpm add @seekdaseek/agentfeed-mezo`、`yarn add @seekdaseek/agentfeed-mezo`、`bun add @seekdaseek/agentfeed-mezo`

## README

# agentfeed-mezo

**人工智能代理支付 [AgentFeed](https://x402.ochinimus.app/) 在Mezo的比特币支持的稳定币MUSD的电话中。**

AgentFeed是一个实时的，为代理付费的加密数据API：清算，资金，价格，索拉纳交易前检查和语言任务，83条付费路线，MCP服务器和elizaOS插件，已经解决了真正的USDC。这个回购是允许购买相同数据的网关 **穆德在梅佐**：代理签署一个EIP-2612许可，网关将其在链上结算并支付gas，数据在同一个HTTP调用中返回。

-   网关: **[https://mezo.ochinimus.app](https://mezo.ochinimus.app/)** （Mezo测试网，区块链31611）
-   已结清的付费电话： **67个电话，1.26百万美元**，每一笔交易就上 [级别的探险家](https://explorer.test.mezo.org/)． 完整的列表如下 [`evidence/paid-calls.csv`](https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/evidence/paid-calls.csv)，生活在 [`/payments.csv`](https://mezo.ochinimus.app/payments.csv).
-   第二部分，访问和分发：代理不需要账户，不需要API密钥，不需要gas，只需要MUSD。

```
$ curl -i https://mezo.ochinimus.app/api/sol-price
HTTP/2 402
payment-required: eyJ4NDAyVmVyc2lvbiI6Mi...   (base64 JSON: MUSD, eip155:31611, 0.01 MUSD, treasury, nonce)
```

## 五分钟后判断

步骤1到步骤3不需要钱包。

1.  **参见402挑战。** `curl -s https://mezo.ochinimus.app/api/sol-price | head -40`． 它将令牌命名为MUSD `0x118917a4...Ac503`)，网络(`eip155:31611`)、魏价、财政部和hmac绑定的nonce。
2.  **看看真正的定居点。** 开放 [`/stats`](https://mezo.ochinimus.app/stats) 和 [`/payments.csv`](https://mezo.ochinimus.app/payments.csv)，然后单击任意 `transfer_tx_url`． 资源管理器显示 `transferFrom` 从网关的结算者从代理钱包移动0.01到0.05 MUSD到库，以及匹配 `permit` 事务。
3.  **看一下舱单。** [`/.well-known/x402`](https://mezo.ochinimus.app/.well-known/x402) 列出了8条票价为MUSD的路线。
4.  **你自己去拜访** （约3分钟，需要一个Mezo测试网钱包）：
    
    ```sh
    git clone https://github.com/seekdaseek/agentfeed-mezo && cd agentfeed-mezo && npm install
    # 1. testnet BTC to your address: https://faucet.test.mezo.org  (0.05 BTC)
    # 2. mint testnet MUSD by opening a trove on Mezo Borrow (about 0.042 BTC in, 1850 MUSD out):
    AGENT_PRIVATE_KEY=0x... TARGET_ICR_PCT=165 node scripts/fund-musd.mjs --send
    # 3. pay for data:
    AGENT_PRIVATE_KEY=0x... node src/client.js sol-price
    AGENT_PRIVATE_KEY=0x... node src/client.js liquidations limit=5 symbol=SOL
    AGENT_PRIVATE_KEY=0x... node src/client.js summarize url=https://mezo.org
    ```
    
    客户端打印状态、延迟、答案和资源管理器链接。 `--scheme transfer` 用普通的MUSD转账支付，而不是许可证。
5.  **运行测试：** `npm test` （62次测试，不需要网络）。
6.  **对链条重新检查证据：** `node scripts/verify-evidence.mjs` 从Mezo测试网读取公共分类账的每一行（接收状态，MUSD） `Transfer` 从付款人到财政部，金额)和印刷品 `verifiedOnChain` 还有财政收支。

## 它是如何工作的

```
agent                         gateway (mezo.ochinimus.app)                  Mezo testnet         AgentFeed
  | GET /api/liquidations          |                                              |                    |
  |------------------------------->|                                              |                    |
  | 402 + PAYMENT-REQUIRED         |                                              |                    |
  |<-------------------------------|  MUSD, 0.02, treasury, spender, nonce        |                    |
  | read nonces(agent) -------------------------------------------------------->|                    |
  | sign Permit(agent -> settler, 0.02 MUSD, deadline)   (off-chain, no gas)     |                    |
  | GET + PAYMENT-SIGNATURE        |                                              |                    |
  |------------------------------->| verify: network, token, payTo, nonce, sig,   |                    |
  |                                |         balance, eth_call permit()  -------->|                    |
  |                                | GET /api/liquidations (prepaid key) --------------------------->  |
  |                                |<-------------------------------------------------- data ---------|
  |                                | permit() + transferFrom(agent -> treasury) ->| (gateway pays gas) |
  | 200 + data + explorer link     |                                              |                    |
  |<-------------------------------|                                              |                    |
```

顺序很重要：网关获取数据 **之前** 它解决了，所以如果AgentFeed关闭，代理永远不会收费，可以用相同的签名付款(`upstream_unavailable`， `charged:false`）. 在一个好的回答之后失败的解决方案保留了数据。

### 为什么允许，而不是x402“确切”

x402挣值管理的都 `exact` 方案使用EIP-3009 `transferWithAuthorization`． MUSD不实现它。已检查部署的测试网令牌 `0x118917a40FAF1CD7a13dB0Ef56C86De7973Ac503` (OpenZeppelin `ERC20Permit`， `"Mezo USD"`,版本 `"1"`（18位小数）：字节码有 `permit` 和 `nonces` 选择器和none `transferWithAuthorization`， `receiveWithAuthorization`， `authorizationState`． 所以网关在同一个402上定义了两种方案：

| 计划 | 代理 | 由 | 如何验证 |
| --- | --- | --- | --- |
| `permit` (默认) | 签署EIP-2612 `Permit(owner, settler, price, nonce, deadline)` | **网关** | 签名从活域和链上nonce恢复，平衡读取， `permit()` 模拟与 `eth_call`,然后 `permit` + `transferFrom` 从设置键 |
| `transfer` | 发送一个普通的MUSD `transfer` 对库，表示tx哈希加上签名的索赔 | 代理 | 接收成功，有足够的确认，比挑战更新，有MUSD `Transfer` 事件至少将价格发送到库中，并且索赔签名恢复到该转账的发送方（因此没有人可以索赔其他人的转账） |

Permit是默认值，因为它为代理提供了一次无gas的调用：代理唯一必须保持的是MUSD。

### 重放和滥用保护

每笔付款都被记录在sqlite中，并在第二次使用时被拒绝，在所有这些密钥下：签名哈希 `(owner, permit nonce)` 对，挑战nonce，和每个结算tx哈希（因此结算许可证） `transferFrom` 不能被重新呈现为 `transfer` 付款)。保留是原子性的，重新启动后仍然有效。现在的挑战是 `issuedAt.expiresAt.random.hmac`，一条路线，一个价格，在300年到期，许可证的截止日期可能不会超过它。每个所有者地址一次只有一个许可证在运行。拒绝超额付款，因此不会留下任何津贴。失败的付款永远不会调用AgentFeed。

## 路线

| 路线 | 每次呼叫的费用 | 什么 |
| --- | --- | --- |
| `/api/sol-price` | 0.01 | 溶胶/美元现货 |
| `/api/btc-price` | 0.01 | BTC /美元现货 |
| `/api/liq-pulse` | 0.01 | 现在清算的是什么 |
| `/api/funding-pulse` | 0.01 | 最极端的犯罪资助率 |
| `/api/liquidations` | 0.02 | 实况清算磁带(`symbol`， `scope`， `limit`， `min_usd`） |
| `/api/market-snapshot` | 0.02 | 一次通话即可了解市场行情 |
| `/api/trade-context` | 0.03 | 价格，资金和清算在一个呼叫 |
| `/api/summarize` | 0.05 | 语言任务：总结 `?url=` |

在转移呼叫之前，删除未知查询参数。 `HEAD`， `POST` 其余的都被拒绝了405，所以没有自由动词。

## 地址（Mezo测试网，链31611）

|  | 地址 |
| --- | --- |
| 令牌相对应国家 | [`0x118917a40FAF1CD7a13dB0Ef56C86De7973Ac503`](https://explorer.test.mezo.org/address/0x118917a40FAF1CD7a13dB0Ef56C86De7973Ac503) |
| 库务署（接受国防开支） | [`0xf01d65DBd1B946C48b7dB1f0A02AaBd021c89227`](https://explorer.test.mezo.org/address/0xf01d65DBd1B946C48b7dB1f0A02AaBd021c89227) |
| 定居者（持证消费，付油钱） | [`0xaB7323cB6aaB188D7Dca697496534BA6C95ddbC2`](https://explorer.test.mezo.org/address/0xaB7323cB6aaB188D7Dca697496534BA6C95ddbC2) |
| Demo代理钱包 | [`0x9691FedC701cD8bbDF4D0b06Dd7C9ABf2e9037B4`](https://explorer.test.mezo.org/address/0x9691FedC701cD8bbDF4D0b06Dd7C9ABf2e9037B4) |
| Mezo Borrow（用于制造测试网MUSD） | [`0xCdF7028ceAB81fA0C6971208e83fa7872994beE5`](https://explorer.test.mezo.org/address/0xCdF7028ceAB81fA0C6971208e83fa7872994beE5) |

令牌地址来源： `solidity/artifacts/deployments/matsnet/MUSD.json` 在 [mezo-org musd](https://github.com/mezo-org/musd)。这个 `mainnet` 和 `ethereum` 该repo列表中的部署文件夹 `0xdD468A1DDc392dcdbEf6db6e34E89AA338F9F186`和一个名为“Mezo USD / MUSD”的合同，18位小数，相同 `permit` 选择器，在基础主网上的那个地址的答案(由 `eth_getCode` 和 `eth_call` 反对 `mainnet.base.org`）. 下面是第二波的目标。

## 支付交易样本

| 路线 | 计划 | MUSD | 解决(`transferFrom` /转移) | 允许tx |
| --- | --- | --- | --- | --- |
| `liquidations` | 许可证 | 0.02 | [`0xeb5a798a…01972d`](https://explorer.test.mezo.org/tx/0xeb5a798a1aa0fe7039cd429f0b2fa21e2fd0b35a7eb1d75ee734672d3401972d) | [`0xe1c3029d…935ce6`](https://explorer.test.mezo.org/tx/0xe1c3029d3d198d3eec4bce260c0afaee981b25a5b7251f117ac5ad3583935ce6) |
| `summarize` | 许可证 | 0.05 | [`0xa5326990…590264`](https://explorer.test.mezo.org/tx/0xa532699004c6fb0c7444e69ae482de72507f367f9cfde6f587945fc06c590264) | [`0xc7feba69…3b1c14`](https://explorer.test.mezo.org/tx/0xc7feba69ab0cc640a0b497faabd1125fd3d6181e534bbc10feecbc59c33b1c14) |
| `trade-context` | 许可证 | 0.03 | [`0xa7bfc89e…db27d0`](https://explorer.test.mezo.org/tx/0xa7bfc89e66b4425b9b8964915c78bb258712cbc0ce4b69e3965c98047ddb27d0) | [`0xf8a292bf…d9fdfd`](https://explorer.test.mezo.org/tx/0xf8a292bf36568ec1b8ab9d2ac26958485297dd99ca27f2d95c0782bd01d9fdfd) |
| `funding-pulse` | 转移 | 0.01 | [`0xf05aa01b…00de4e`](https://explorer.test.mezo.org/tx/0xf05aa01bfb4f32ba72a6f5efcb556772b97a18bf1e949c11b3332d4fe000de4e) | 没有，代理人付了汽油费 |

那么，演示代理是如何获得其MUSD：水龙头BTC的呢 [`openTrove`](https://explorer.test.mezo.org/tx/0x3449564ce5f35584f9ca424c5565a45bc8e6653252b35adf51eb4b75a335a45c) 在Mezo Borrow （0.042 BTC抵押品，ICR为165%，卖出1850万美元），同样的流量 `scripts/fund-musd.mjs` 自动化。

## 对于座席：客户端和MCP工具

什么都不安装：MCP客户端可以直接从npm运行服务器(在官方MCP注册表中列出为 `io.github.seekdaseek/agentfeed-mezo`):

```json
{ "mcpServers": { "agentfeed-mezo": { "command": "npx", "args": ["-y", "@seekdaseek/agentfeed-mezo"],
  "env": { "NETWORK": "base", "AGENT_PRIVATE_KEY": "0x...", "MAX_PRICE_MUSD": "0.10" } } } }
```

`NETWORK` 是 `mezo-testnet` （默认，测试MUSD）， `base` 或者 `mezo-mainnet` (真正的)相对应国家。使用专用钱包，带有少量的MUSD余额：服务器每次呼叫签署一个许可证，并拒绝上述任何价格 `MAX_PRICE_MUSD`． 没有 `AGENT_PRIVATE_KEY` 服务器仍然启动并 `list_routes` (免费)。

工具: `list_routes` 和 `call_route { route, params?, scheme? }`，它以MUSD支付并返回结算的数据和资源管理器链接。 `node scripts/mcp-smoke.mjs` 通过工作室从克隆驱动相同的服务器。

从克隆中，命令行客户端在没有MCP的情况下执行相同的操作：

```sh
AGENT_PRIVATE_KEY=0x... NETWORK=base node src/client.js <route> [key=value ...] [--scheme permit|transfer] [--n 5] [--pretty]
```

[`src/client.js`](https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/src/client.js) 拒绝为另一个网络或令牌或以上的网络或令牌签名质疑 `MAX_PRICE_MUSD` 0.10(默认)。已注册的代理应该使用默认值 `permit` 方案，可阅读 `GET /agents/<address>` 首先是剩余预算。

## 它如何扩展AgentFeed

AgentFeed ([x402.ochinimus.app](https://x402.ochinimus.app/)， 83付费路线，MCP服务器上的官方注册表，elizaOS插件 `@seekdaseek/plugin-agentfeed`)已经在Solana， Base, Polygon， Arbitrum和Arc上使用了USDC，但这些轨道中的每一个都依赖于EIP-3009或SPL传输。MUSD是一种不同类型的令牌：ERC-20加上EIP-2612许可。这条通道增加了那条铁轨 **无需接触生产服务器**：它是一个独立的服务，从AgentFeed购买预付API密钥（价格的一半），并以1到5美分的价格在MUSD转售。中没有 `/opt/agentfeed` 已重新启动或编辑。

## 经营自己的公司

```sh
npm install && npm test
cat > .env <<'EOF2'
TREASURY_ADDRESS=0x...        # receives the MUSD
SETTLER_PRIVATE_KEY=0x...     # permit spender; needs a little testnet BTC for gas
CHALLENGE_SECRET=<random hex> # HMAC key for challenge nonces
UPSTREAM_KEY=afk_...          # an AgentFeed prepaid key (x402.ochinimus.app/keys)
PUBLIC_URL=http://localhost:3034
EOF2
chmod 600 .env && npm start
```

可选: `PORT`， `HOST`， `MEZO_RPC_URL`， `MUSD_ADDRESS`， `UPSTREAM_URL`， `DB_PATH`， `CHALLENGE_TTL_SEC`， `CONFIRMATIONS`， `DAILY_UPSTREAM_CAP` (默认值 [`src/config.js`](https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/src/config.js)）. 作为PM2部署在这里 `agentfeed-mezo` 在它自己的Cloudflare隧道后面的3034端口。

## 测试

`npm test` 使用Node的内置运行器运行62个测试。52在假的链适配器和假的AgentFeed上运行真实的网关代码，具有真实的EIP-712和EIP-191签名；10开始 `src/mcp.js` 使用MCP SDK客户端对环回假网关(工具注释， `list_routes`， `call_route` 拒绝更高的价格 `MAX_PRICE_MUSD`错误的令牌或网络、不可达的网关、错误的参数以及任何工具输入模式中没有数组类型)。它们涵盖了两个方案的快乐路径，重播（相同的许可证，相同的挑战，相同的tx哈希，结算tx重新表示为转移），付款不足，付款过多，错误的令牌，错误的链（网络字段和为另一个链id签名的许可证），错误的收件人，错误的支出者，过期的许可证nonce，其他人的签名，过期的nonce，另一条路由的nonce， RPC down， AgentFeed down（清洁502，付款人未收费，恢复后相同的付款工作），结算失败，并发双重支出。mock只在这里使用；以上的付费通话证据都不是模拟的。

## 地位和诚实的界限

-   在代理付款后，有一笔付款被拒绝了：第一笔 `transfer`scheme调用命中未索引收据的Mezo RPC节点并获得 `tx_not_found`． 0.01百万美元作为无与伦比的灰尘留在宝库中([`evidence/unclaimed.md`](https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/evidence/unclaimed.md)）. 网关现在重新尝试丢失的收据大约8秒，客户端重新尝试拒绝相同的付款；6 `transfer` 之后的呼叫都成功了。
-   来自多个节点的公共Mezo RPC应答和相同的接收可以在一次调用中读取为空，而在下一次调用中出现（已测量）。因此，门户网站的读者很少会拒绝一笔丰厚的报酬；拒绝从不把钱放在眼里 `permit` 计划。
-   Testnet。Mezo测试网上的MUSD没有美元价值；关键是，完整的支付路径与真正的合同和链背道而驰。
-   用于结算的燃气由网关的结算密钥支付，资金来自水龙头。在主网上，该费用必须在通话中定价或预先支付费用，参见第二波。
-   每个代理地址一张飞行许可证。需要并行调用的代理使用多个地址或 `transfer` 计划。
-   网关使用一个预付密钥和每日上限调用AgentFeed (`DAILY_UPSTREAM_CAP`（默认为5000次）。

## 第二波计划

1.  **Mezo主机MUSD。** 相同的代码与主网链id， RPC和token地址从Mezo文档；增加每个电话的煤气附加费。
2.  **MUSD在基地。** MUSD已经在Base上进行交易，因此在Base上生活的代理可以在没有桥接的情况下付款。在402中添加Base网络 `accepts`，以及针对基本池的只读价格检查。
3.  **一个电报机器人，充值并为代理商花费100万美元。** 一个人以MUSD为机器人持有的预算提供资金，设置每天的上限，机器人为其代理签署许可，因此交易机器人或eliza代理无需持有密钥即可获得数据。这是轨道2的分布面。
4.  一、 `permit`基于每个座席的花费限额（一次签名，多次呼叫），以取消一次飞行限制。

## 已知的报告

-   **萨德,GHSA-mrhx-c7xc-m3w5** （high）：当没有长度限制的数组模式验证大量失败元素时耗尽内存；影响 `< 4.6.6`，在4.6.6补丁。这个repo是在zod 3.25.76上，它在2026年10月29日被依赖项扫描标记(扫描列出没有补丁版本；GitHub咨询数据库和 `npm audit` Do list 4.6.6)。现在取决于 **萨德4.6.7**，当前版本，带有 `@modelcontextprotocol/sdk` 1.32.2(对等体范围为 `^3.25 || ^4.0`）。 `npm audit --omit=dev` 报告0个漏洞和所有62个测试通过zod4.6.7。
-   与版本无关，从这个repo的输入无法访问易受攻击的路径：没有MCP工具输入模式包含数组(`list_routes` 需要什么; `call_route` 接受一个字符串、一个可选的字符串到字符串记录和一个enum； `test/mcp.test.js` 断言没有 `array`， `items` 或者 `prefixItems` 在JSON模式中)，并且MCP服务器在用户自己的代理上通过studio本地运行。门户(`src/server.js`)不导入zold或MCP SDK；它解析自己的标头和查询字符串。
-   未验证：zod副本仍安装在网关中 `node_modules` VPS上的值为3.25.76。没有网关代码导入它（从源代码读取，而不是在运行时测试），因此它被保留原样，而不是重新部署。

## 许可证

麻省理工学院,看到 [许可证](https://npmcn.com/package/%40seekdaseek/agentfeed-mezo/LICENSE).

## 常见问题

### @seekdaseek/agentfeed-mezo 是什么？

在Mezo和Base的MUSD上，每次呼叫都向AgentFeed付费。MCP服务器和用于代理的CLI，以及mezo\.ochinimus\.app背后的HTTP 402网关。

### 如何安装 @seekdaseek/agentfeed-mezo？

在项目目录运行 npm install @seekdaseek/agentfeed-mezo，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 agentfeed-mezo、agentfeed-mezo-mcp，可以用 npx agentfeed-mezo 直接运行。

### @seekdaseek/agentfeed-mezo 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/seekdaseek\_\_agentfeed-mezo 是否存在。

### @seekdaseek/agentfeed-mezo 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @seekdaseek/agentfeed-mezo 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @seekdaseek/agentfeed-mezo 可以商用吗？

@seekdaseek/agentfeed-mezo 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @seekdaseek/agentfeed-mezo 还在维护吗？

最新版本 0\.2\.0 发布于 2026/11/02（1 天前）；至今共发布 2 个版本，其中过去 12 个月发布了 2 个；首次发布于 2026/11/02。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

