mcpField
I
Interline

Interline

本地服务
github.com/Choppaaahh金融数据03 周前更新

关于 Interline

Interline 是已归档且不再维护的 Agent 间支付路由器,可在 x402 和 MPP 支付通道间路由,并提供用于发现端点和付款的 MCP 路由器。

主要功能

  1. 01在 x402 与 MPP 通道间路由
  2. 02发现端点并付款
  3. 03用 Paywall.gate() 保护端点
  4. 04结算收据账本
  5. 05Google AP2 入站适配器

适用场景

  1. 01让买方 Agent 为卖方工作付款
  2. 02为服务端点设置付费门控
  3. 03记录 Agent 支付结算

MCP 相关

Interline 内含 MCP 路由器,可让 Agent 发现端点并付款。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"interline-routes": {
"command": "uvx",
"args": [
"interline"
],
"env": {
"APV0_BUYER_PRIVATE_KEY": "<APV0_BUYER_PRIVATE_KEY>",
"APV0_NETWORK": "<APV0_NETWORK>"
}
}
}
}
启动命令uvx interline
需要配置的环境变量
APV0_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+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiinterline0.1.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

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 测试网)

  1. 准备两个测试网钱包(买方签名,卖方收款):

    python3 -c "from eth_account import Account; a=Account.create(); print('addr', a.address); print('key', a.key.hex())"
    

    执行两次。将密钥保存在 Git 仓库之外(使用 .env)。

  2. 为买方充值 Base Sepolia 测试网 USDC(Circle 水龙头),并准备少量测试网 ETH,以支付 facilitator 代为转发时产生的 Gas 费。

  3. 配置 .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
    
  4. 实际运行:

    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 任务,使用的都是同一种基本机制。

评论

支持 Markdown

第一次接触 MCP?

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

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