跳转到内容
搜索文档

Machine Payments Protocol(MPP)概览

最后更新 查看 MarkdownAgent 设置

Machine Payments Protocol (MPP) 是机器对机器支付的协议,由 Tempo LabsStripe 共同编写。它通过正式的身份验证方案标准化 HTTP 402 Payment Required 状态码,并已提交 IETF。MPP 为 Agent、应用和人类提供单一接口,在同一 HTTP 请求中支付任何服务。

MPP 与支付方式无关。单个端点可接受稳定币(Tempo)、信用卡(Stripe)或比特币(Lightning)。

工作原理

  1. 客户端请求资源 — GET /resource
  2. 服务器返回 402 Payment Required,并在 WWW-Authenticate: Payment 头中包含支付挑战。
  3. 客户端完成支付 — 签署交易、支付发票或完成卡支付。
  4. 客户端携带 Authorization: Payment 头(含支付凭证)重试请求。
  5. 服务器验证支付,并返回资源及 Payment-Receipt 头。

支付方式

MPP 通过单一协议支持多种支付方式:

方式 描述 状态
Tempo Tempo 区块链上的稳定币支付,亚秒级结算 生产环境
Stripe 通过 Shared Payment Tokens 支持卡、钱包及其他 Stripe 方式 生产环境
Lightning Lightning Network 上的比特币支付 可用
Card 通过加密网络 token 的卡支付 可用
Custom 使用 MPP SDK 构建自定义支付方式 可用

服务器可同时提供多种方式。客户端选择适合的方式。

支付意图

MPP 定义两种支付意图:

  • charge — 立即结算的一次性支付。用于按请求计费。
  • session — 通过支付通道的流式支付。用于按量或按 token 计费,成本可低于 1 美分,延迟可低于 1 毫秒。

与 x402 的兼容性

MPP 向后兼容 x402。核心 x402 exact 支付流程直接映射到 MPP 的 charge 意图,因此 MPP 客户端可无需修改地使用现有 x402 服务。

对资源收费

HTTP 内容

使用 MPP 中间件对 API、网页和文件进行门控

SDK

MPP 提供三种语言的官方 SDK:

SDK 安装
TypeScript mppx npm install mppx
Python pympp pip install pympp
Rust mpp-rs cargo add mpp

TypeScript SDK 包含 HonoExpressNext.jsElysia 的框架中间件,以及用于测试付费端点的 CLI

相关

这篇文档对您有帮助吗?