关于 Interline
Interline 是已归档且不再维护的 Agent 间支付路由器,可在 x402 和 MPP 支付通道间路由,并提供用于发现端点和付款的 MCP 路由器。
主要功能
- 01在 x402 与 MPP 通道间路由
- 02发现端点并付款
- 03用 Paywall.gate() 保护端点
- 04结算收据账本
- 05Google AP2 入站适配器
适用场景
- 01让买方 Agent 为卖方工作付款
- 02为服务端点设置付费门控
- 03记录 Agent 支付结算
MCP 相关
Interline 内含 MCP 路由器,可让 Agent 发现端点并付款。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx interlineAPV0_BUYER_PRIVATE_KEY密钥Your own wallet private key (0x...). Stays in your env; the server never holds funds. Required only for pay_for_resource, not for discovery.APV0_NETWORKbase-sepolia (testnet) or base (mainnet). Default base-sepolia.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Interline — Agent-to-Agent 支付路由器
已归档(2026-10-10)。 Interline 已停止维护。代码保留在此供参考;不再进行任何开发,也无人监控测试网演示。
一个 Agent-to-Agent 支付路由器:一个 Agent 完成工作,另一个 Agent 为此付款,无需人工输入银行卡信息。Interline 是一个中立、非托管的路由器,构建在碎片化的 Agent 支付通道栈之上——“面向 Agent 支付的 OpenRouter。” 基于 x402(HTTP-402 微支付、USDC)构建,采用聚合器架构,因此新增支付通道只需添加一个适配器,无需重写。
目前,它可通过 三种已上线的支付通道 路由付款——EVM(Base Sepolia)和 Solana(devnet)上的 x402 USDC,以及 Tempo(Moderato testnet)上的 MPP——统一通过一次 Paywall.gate() 调用完成。三种通道上均已确认真实的链上 Agent-to-Agent 结算。项目提供一个 MCP 路由器,让 Agent 能发现并支付端点费用;还包含一个 Google-AP2 入站适配器——签名后的 AP2 委托(经过验证、约束检查和时效性校验)可在这些支付通道上以非托管方式完成结算。
运行演示(无需钱包、无需水龙头、零风险)
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python3 run_demo.py
预期结果:DEMO PASS — agent paid agent, settlement receipt issued。
刚才发生的情况(x402 “exact-evm” 流程):
buyer GET /work
-> seller 402 + PaymentRequirements {amount, asset=USDC, payTo, network}
-> buyer signs an EIP-3009 transferWithAuthorization (gasless USDC auth)
-> buyer retries with X-PAYMENT header (base64 signed payload)
-> facilitator VERIFIES the signature (real signer-recovery) + checks policy
-> facilitator SETTLES (mock: fake tx hash; live: on-chain USDC transfer)
-> seller 200 + work product + X-PAYMENT-RESPONSE receipt (tx hash)
即使在模拟模式下,facilitator 的验证步骤也使用了 真实密码学——它会恢复 EIP-712 签名者,并将其与授权信息进行匹配。只有链上广播是模拟的。因此,演示通过即证明买方的签名符合协议规范,可用于真实 USDC。
文件
| 文件 | 作用 |
|---|---|
router/paywall.py | 可复用的 Paywall 基元——只需调用一次 .gate(),即可在任何端点前设置 x402 门禁 |
router/ledger.py | 结算回执账本 → logs/agent_payment_settlements.jsonl(审计跟踪) |
router/seller.py | 销售工作的 FastAPI Agent——定义要求和工作内容,并接入一次 Paywall.gate() |
router/buyer.py | 自动支付 402 请求的 Agent(pay_and_get),带有客户端支出限额 |
router/eip3009.py | 唯一涉及加密细节的文件:EIP-3009 类型化数据,由买方和 facilitator 共享,避免双方实现偏离 |
router/facilitator_mock.py | 进程内验证和结算(真实签名检查,模拟链)——用于试运行的支付通道 |
router/facilitator_real.py | 通过 x402 SDK 自带的客户端,经 HTTP 连接真实 x402 facilitator;get_facilitator() 根据配置选择模拟或真实实现 |
router/config.py | 网络和资产信息,以及 .env 加载器;只需修改一行环境变量,即可在模拟、测试网和主网之间切换 |
run_demo.py | 端到端冒烟测试(临时密钥、模拟 facilitator) |
run_live.py | 实际运行器——在 Base Sepolia 上结算真实 x402 付款 |
上线(Base Sepolia 测试网)
-
准备两个测试网钱包(买方签名,卖方收款):
python3 -c "from eth_account import Account; a=Account.create(); print('addr', a.address); print('key', a.key.hex())"执行两次。将密钥保存在 Git 仓库之外(使用
.env)。 -
为买方充值 Base Sepolia 测试网 USDC(Circle 水龙头),并准备少量测试网 ETH,以支付 facilitator 代为转发时产生的 Gas 费。
-
配置
.env(将.env.example复制为.env;该文件已被 Git 忽略,并会自动加载):APV0_NETWORK=base-sepolia APV0_BUYER_PRIVATE_KEY=0x... # buyer testnet key (signs) APV0_SELLER_ADDRESS=0x... # seller address (receives) APV0_FACILITATOR_URL=https://x402.org/facilitator -
实际运行:
python3 run_live.py卖方现在会使用
RealFacilitator(x402 SDK 自带的 facilitator 客户端),买方会自动支付 402 请求,x402.org 会在链上广播 EIP-3009 USDC 转账。你将获得真实交易哈希 →https://sepolia.basescan.org/tx/<hash>。免 Gas:使用 EIP-3009 时,facilitator 会代付 Gas,因此买方只需要测试网 USDC,不需要 ETH。
为自己的端点设置门禁(产品基元)
from router.paywall import Paywall
from router.facilitator_real import get_facilitator
paywall = Paywall(get_facilitator(), my_requirements_fn) # mock ↔ real by env
@app.get("/my-endpoint")
def my_endpoint(request: Request):
return paywall.gate(request, lambda: do_expensive_work())
一次 .gate() 调用即可处理完整的 x402 V2 流程——402 挑战 → 验证 →
结算 → 记录回执 → 交付——并将每笔结算追加到回执账本中。部署者无需接触协议,也无需持有密钥。
v1 内测 — 付费让 Agent 完成实际工作
v0 验证了付款。v1 验证了闭环:买家 Agent 付款 → 卖家 Agent 执行实际推理 → 返回结果和结算凭证。卖家的 _do_the_work(task) 是产品的集成点(接入你自己的模型/算力/服务)。
APV0_OPENROUTER_KEY=sk-or-... python3 run_v1_dogfood.py "your task here"
→ V1 DOGFOOD PASS — agent paid agent for real work ✅(默认使用模拟付款 + 真实模型调用;设置 APV0_NETWORK=base-sepolia,即可在同一闭环中进行真实的链上结算)。如果没有密钥,则返回存根结果,确保产品仍可运行。
这就是完整的闭环:Agent 执行实际工作,通过 x402 计量并付费——无论工作是模型调用、计算任务,还是其他任何可计费的 Agent 任务,使用的都是同一种基本机制。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。