title: “Mpp Agent — Pay HTTP 402 APIs via Machine Payments Protocol (MPP)” sidebar_label: “Mpp Agent” description: “Pay HTTP 402 APIs via Machine Payments Protocol (MPP)”
{/* 此页面由 website/scripts/generate-skill-docs.py 根据技能的 SKILL.md 文件自动生成。请修改源文件 SKILL.md,而非此页面。 */}
Mpp Agent
通过机器支付协议(MPP)为返回 HTTP 402 状态码的 API 进行支付。
技能元数据
| 来源 | 可选 — 使用 hermes skills install official/payments/mpp-agent 安装 |
| 路径 | optional-skills/payments/mpp-agent |
| 版本 | 0.1.0 |
| 开发者 | Teknium (teknium1)、Hermes Agent |
| 许可协议 | MIT |
| 支持平台 | linux、macos |
| 标签 | Payments、MPP、HTTP-402、Tempo、Stripe |
| 相关技能 | stripe-link-cli、stripe-projects |
参考:完整的 SKILL.md 文件
MPP Agent 技能
该技能对机器支付协议(MPP,https://mpp.dev)客户端进行了封装,使得 Hermes 能够针对那些返回 HTTP 402 Payment Required 状态码的服务器,为每次请求的 API 访问付费。
共有三种客户端选项,均通过 npm 分发。请选择最符合用户需求的轻量级选项。目前该技能仅支持 [linux, macos] 平台,未来随着更完善的 Windows 支付工具的成熟,支持范围将扩大。
适用场景
- 商家 API 返回带有
www-authenticate标头的HTTP 402响应 —— 用户希望实际完成支付,而不仅仅是记录响应信息。 - 用户要求“按请求付费”、“设置代理钱包”、“使用 Tempo / Privy / AgentCash”,或希望查找按 MPP 定价的服务。
- 使用 Stripe Link 进行消费后产生了共享支付令牌(SPT),且代理需要将其附加到 402 请求中 —— 在此类场景下,建议使用
link-cli mpp pay(参见stripe-link-cli技能)。
客户端选择指南
| 工具 | 适用场景 | 设置方式 |
|---|---|---|
link-cli | 用户已配置 Stripe Link,或 402 请求指定了 method="stripe" | 参见 stripe-link-cli 技能的说明 |
| Tempo Wallet | 需要消费控制及服务发现的 MPP 服务 | 执行 tempo wallet login |
| Privy Agent CLI | 多链钱包、基于浏览器的充值功能 | 执行 privy-agent-wallets login |
| AgentCash | 通过一个 USDC.e 账户访问 300 多种预定价 API | 执行 npx agentcash onboard |
mppx | 开发与调试用途,依赖项最少 | 先执行 npm install -g mppx,再执行 mppx account create |
默认选择:如果用户已配置 Stripe Link,或 402 请求指定了 method="stripe",则使用 link-cli mpp pay(即 stripe-link-cli 技能)。否则,一次性付费调用及调试时选用 mppx;若用户需要持续的消费控制功能,则选择 Tempo Wallet。
先决条件
PATH环境变量中已安装 Node.js 20+ 版本- 已充值的钱包(Tempo / Privy / AgentCash)或
mppx账户 - 对于 Tempo / Privy / AgentCash,需按照各自的入门技能文档进行操作:
https://tempo.xyz/SKILL.mdhttps://agents.privy.io/skill.mdhttps://agentcash.dev/skill.md
如果用户选择了其中某款工具,可使用 web_extract 功能获取对应的 SKILL.md 文件。
操作步骤(mppx,最快路径)
所有命令均通过 terminal 工具执行。
1. 安装并创建账户
npm install -g mppx
mppx account create
请将生成的账户凭证存储在 CLI 指定的位置(CLI 会将其保存在自己的配置文件中——切勿将其粘贴到代理的记录中)。
2. 检查商家的 402 挑战请求
如果用户提供了某个 URL,请先对其进行探测,以确认该 URL 确实使用的是 MPP 协议:
curl -i <url>
真正的 MPP 402 看起来如下:
HTTP/1.1 402 Payment Required
www-authenticate: tempo amount=0.1 currency=...
3. 提交请求以进行支付
mppx <url>
对于非 GET 方法或请求体:
mppx <url> --method POST --data '<json>'
mppx 会自动处理 402 挑战与凭证验证流程,成功时还会输出商家的实际响应内容。
4. 验证收据
mppx 会自动添加收据头部信息。如需查看该信息:
mppx <url> -v
操作步骤(Tempo 钱包)
官方参考文档为 https://tempo.xyz/SKILL.md 中的 Tempo 钱包技能说明;请使用 web_extract 工具获取该文档并据此操作。标题:
tempo wallet login
tempo wallet pay <url>
支出控制功能与服务发现功能均集成在 https://wallet.tempo.xyz 的钱包用户界面中。
常见问题
- 若请求未设置
method="stripe"且返回HTTP 402,则 Stripe Link 无法完成支付。 如果验证页面仅支持 Tempo 其他支付方式,请使用mppx(或对应其他钱包的客户端)——否则 Stripe Link 会拒绝该请求。反之,若验证页面明确标注了method="stripe",建议通过stripe-link-cli技能使用 Stripe Link,以便通过用户已授权的信用卡完成支付。 - 一个请求头中包含多种支付方式。
www-authenticate请求可能列出多种支付方式(例如tempo, stripe)。Stripe Link CLI 的mpp decode功能会优先选择 Stripe 方式,而mppx则会选择 Tempo 方式。并不存在唯一的“正确”客户端——需根据用户已充值的使用钱包来选择。 - 零金额验证请求。 某些 MPP 接口会收取
$0.00的费用,仅需要用户的认证凭证即可。此类请求无需使用已充值的钱包即可处理,不应将其视为“故障”而予以拒绝。 - 钱包密钥绝不会进入智能体上下文。 四种客户端都会将密钥存储在各自的配置目录中(Privy 客户端则会为每次会话生成临时密钥对),切勿使用
cat/read_file命令读取这些密钥。 - 服务器端 MPP 是独立的技能模块。 如果用户希望在自己的 API 中集成 402 功能,此技能模块并不适用——请引导他们前往 https://mpp.dev/quickstart/server,以及
mppx/nextjs/mppx/hono/mppx/express/mppx/elysia等中间件文档。未来可能会推出专门的mpp-server技能模块。
验证方式
mppx --version && mppx account list
退出码为 0 表示该组件已成功安装且存在对应账户。