mcpField
B
Boundra — Payment Approval Gateway for AI Agents

Boundra — Payment Approval Gateway for AI Agents

远程服务
boundra.io金融数据05 天前更新

关于 Boundra — Payment Approval Gateway for AI Agents

Boundra 是面向 AI Agent 的支付审批网关,在签名前依据用户定义的策略评估每笔支付。它返回允许、询问或拒绝的决定并记录审计轨迹;策略由用户钱包签名。

主要功能

  1. 01将自然语言规则编译为策略
  2. 02通过分阶段策略流程评估支付
  3. 03对受质询的支付要求人工签名审批
  4. 04跟踪支出、策略版本和审计记录
  5. 05撤销策略并立即恢复默认拒绝

适用场景

  1. 01阻止 Agent 违反支出规则的付款
  2. 02要求特定付款先经人工审批
  3. 03查看 Agent 的支出和审批记录
  4. 04需要停止支付授权时撤销策略

MCP 相关

MCP 服务向 Agent 提供支付评估、策略管理、支出报告、审计记录和模板工具。Agent 在签署付款前调用 evaluate_payment;用户可用所需的钱包签名提交或撤销策略。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://api.boundra.io/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
pypiboundra-mcp0.1.1

工具

详细介绍

Boundra · 面向 AI Agent 的付款审批网关

Boundra on mcprush — Grade A, Trust 95/100

Boundra(boundra.io)— 为 Agent 付款划定边界。 Agent 付款的边界层:每笔款项转出前,先回答 “这笔付款到底该不该发生?”

我们的主张:Agent 付款的机会不在于“如何付款”(协议已解决这个问题),而在于“是否付款”。

一条自然语言规则 → 编译为策略 → 真正评估 Agent 尝试的每笔付款 → 放行 / 询问人工 / 否决,并留下完整的审计记录。

两种运行模式:

  • 离线模拟(demo.py):仅使用标准库、自包含的模拟商户和钱包、零依赖、无需联网
  • 真实协议(demo/demo_real.py):标准 MCP 服务 + 真实 x402 SDK + Base Sepolia 测试网

数据流

Boundra 数据流

策略和密钥由用户保管;网关只读;只有哈希承诺会上链。撤销始终免费,没有例外。

要将 Boundra 集成到你的 Agent 中? 请参阅 docs/INTEGRATION.md — 托管 API、x402 SDK 钩子 和 MCP 接入方式,均附有经过测试的代码。

60 秒内运行演示

# 1. Hit the hosted evaluation API — a real, public x402 merchant
curl -X POST https://api.boundra.io/evaluate/basic \
  -H 'Content-Type: application/json' \
  -d '{"intent":{"amount":0.01,"recipient":"api.weather.com","purpose":"weather data"}}'
# → {"decision":"ALLOW",...}  ·  semantic layer: 100 free calls per agent,
#   then $0.003 via x402 — settled for real on Base mainnet (USDC)

# 2. Local end-to-end simulation — a data-procurement agent's day
.venv/bin/python demo/simulate_agent.py
# signed policy publish → ALLOW / DENY (limit) / ASK → user-signed approval token
# → prompt-injection blocked → audit trail, plus a dogfood call to api.boundra.io

# 3. One-line MCP install + 2-minute policy wizard
uvx --from git+https://github.com/gobeyondfj-cmd/boundra boundra-mcp     # stdio server
uvx --from git+https://github.com/gobeyondfj-cmd/boundra boundra-init    # wallet → template → sign → anchor
uvx --from git+https://github.com/gobeyondfj-cmd/boundra boundra-approve # sign an ASK challenge

完整流程,一步步来

约 10 分钟即可从零开始,创建并签署一项强制执行的策略。无需账户或控制面板 — 你的钱包密钥就是你的身份。

0 · 试用托管 API (30 秒,无需安装)

curl -X POST https://api.boundra.io/evaluate/basic \
  -H 'Content-Type: application/json' \
  -d '{"intent":{"amount":0.01,"recipient":"api.weather.com","purpose":"weather data"}}'

1 · 绑定身份 — 钱包就是账户

uvx --from git+https://github.com/gobeyondfj-cmd/boundra boundra-init

创建或导入 Base 钱包。无需注册,也无需邮箱 — 私钥绝不会离开你的设备,而你的地址就是你在整个系统中的身份。

2 · 设置策略

向导提供模板(个人助手 / 旅行 / 开发 API / 采购),也允许你用简单英语编写自己的规则,然后编译规则并准确展示将强制执行的内容 — 在签署任何内容之前。

3 · 签署并发布

你使用钱包密钥(EIP-191)签署策略文档。文档会以带版本的形式发布,并将哈希承诺锚定到链上。从此刻起,网关对所有 Agent 都是只读的 — 没有你的密钥,就无法更改策略。

4 · 将 MCP 服务挂载到你的 Agent 中

托管式(无需安装、支持多租户;发布已签署的策略前默认拒绝):

{ "mcpServers": { "boundra": { "url": "https://api.boundra.io/mcp" } } }

或自行托管:

{ "mcpServers": { "boundra": { "command": "uvx",
  "args": ["--from", "git+https://github.com/gobeyondfj-cmd/boundra", "boundra-mcp"] } } }

5 · 每笔付款都必须在签署前获得裁决

你的 Agent 调用 evaluate_payment;5 阶段流水线会给出结果: ALLOW(签署并结算)/ DENY(签署前中止,链上不留任何痕迹)/ ASK(绑定到这笔确切付款的挑战)。

6 · Agent 发起询问时,由你来决定

uvx --from git+https://github.com/gobeyondfj-cmd/boundra boundra-approve

粘贴 ASK 挑战,在你的设备上签署 — Agent 随后会携带已签署的批准令牌重试。伪造、重新绑定或重放的令牌都会被拒绝。

7 · 查看、更新、撤销

get_spend_report / get_audit_trail / get_policy_versions 让你在日常使用中始终掌控全局。每次策略变更都会生成一个新的已签署版本(set_policy);revoke_policy 会立即启用默认拒绝,而且永久免费。

快速开始(从源码安装)

cd boundra

# Mode 1: offline simulation (run this first — the full flow in 30 seconds)
python demo/demo.py

# Mode 2: real x402 + MCP
python -m venv .venv && .venv/bin/pip install \
    "x402[evm,httpx]" mcp eth-account fastapi uvicorn
.venv/bin/python tests/test_mcp_client.py    # MCP protocol-level tests
.venv/bin/python demo/setup_wallets.py       # generate Base Sepolia test wallets + faucet guide
.venv/bin/python demo/demo_real.py           # real protocol end-to-end (settles on-chain after funding)

架构:网关所处的位置

Agent framework (Claude / custom)
   │  MCP protocol (stdio)
   ▼
mcp_server.py  ──→  policy.py 5-stage evaluation pipeline
(policy decision     semantic → whitelist → limit → approval → budget
 point)
   ▲
   │ on_before_payment_creation hook (x402 SDK v2 native interception point)
x402_buyer.py ──sign (EIP-3009)──→ x402 server ──→ facilitator ──→ Base Sepolia

关键发现:x402 SDK v2 原生提供 on_before_payment_creation 钩子,以及 register_policy / set_spend_controls — 策略层并非后加的功能,而是官方协议栈预留的扩展点。这验证了切入点的价值。

文件一览

boundra/
├── policy.py                 intent compilation (NL→Policy, bilingual CN/EN) + 5-stage pipeline + platform red lines
├── signed_policy.py          ★ signed policy documents + version chain + revocation (keccak)
├── approval.py               ★ signed approval tokens (challenge → user signs → gateway verifies)
├── mandate.py                ★ task Mandates: single-use authorization, burned after use (pipeline layer 4)
├── templates.py              ★ policy template library (personal assistant / travel / dev API / procurement)
├── chain_anchor.py           ★ anchor backends: local simulation + real Base Sepolia (web3)
├── gateway.py                gateway core v3: 4-layer stacking + token verification + Mandate + revocation
├── rail_adapters.py          ★ rail adapter layer: evaluation core decoupled from settlement rails (x402 first)
├── mcp_server.py             ★ standard MCP server (11 tools, stdio)
├── boundra_cli.py            ★ boundra-init (policy wizard) + boundra-approve (challenge signer)
├── contracts/
│   └── PolicyAnchor.sol      ★ on-chain commitment contract (owner-write, anyone-read)
├── demo/
│   ├── simulate_agent.py     ★ end-to-end user journey simulation (MCP + hosted API dogfood)
│   ├── demo_policy.py        signed-policy demo (impersonation / unsigned / tampering attacks all blocked)
│   ├── demo_real.py          real-protocol end-to-end orchestration
│   ├── x402_resource_server.py  real x402 paywall server (FastAPI middleware)
│   ├── x402_buyer.py         real x402 buyer, evaluated by the MCP gateway before signing
│   ├── setup_wallets.py      Base Sepolia test wallet generation
│   └── demo.py / merchant.py / agent.py   offline simulation (zero dependencies)
├── tests/
│   ├── test_product.py       ★ product tests (22 assertions)
│   └── test_mcp_client.py    MCP protocol-level tests
├── docs/
│   ├── dataflow.png          data-flow diagram (English)
│   └── render_*.py           diagram renderers (architecture / flow / use-case / data flow)
└── state/audit.jsonl         audit trail (generated at runtime, gitignored)

签名策略:信任根是用户的密钥,而不是网关的数据库(v2)

策略是由用户的钱包签名的文档,而不是网关配置中的一条记录:

user private key signature ──→ PolicyDocument (NL rule + compiled artifact + prev_hash + version)
                      │  three checks: signer == owner, versions sequential, prev_hash unbroken
                      ▼
              PolicyStore (version chain) ──→ LocalAnchor (simulated commitment; production writes to contract)
                      │
                      ▼  check_integrity before every evaluation (signature + anchor)
              5-stage pipeline; audit records cite policy version + hash
  • Agent 只能读取:没有用户的私钥,set_policy 总会失败——冒充、未签名和篡改后的提交都会被拦截(demo/demo_policy.py 中有 7 种情形)
  • 两个叠加的作用域:用户级(适用于所有 Agent 的规则)× Agent 级(针对各个 Agent 的规则);以最严格的判定为准
  • 每次版本升级都需要签名:v2 必须引用 v1 的哈希;篡改任何历史版本都会导致签名无效、链条断裂
  • 隐私设计:只有哈希承诺会上链;除非用户选择披露,否则策略明文永远不会离开设备

运行:.venv/bin/python demo/demo_policy.py

判定凭证:每项决策都附有签名回执(v4)

每个 evaluate_payment 响应都包含一个 credential——由平台密钥(EIP-191)签名的 boundra.verdict/v1 回执。它回答了这样一个问题:“谁能证明这次 ALLOW / DENY / ASK 确实发生过,并且是在此策略下,针对这一确切支付意图作出的?”

  • 绑定意图:intent_hash = 对规范化的 {amount, recipient, purpose} 计算 sha256;凭证无法重新附加到另一笔支付上
  • 绑定策略:policy_refs 列出所用策略版本的哈希,可与链上锚点进行比对
  • 绑定审计日志:audit_id 链接到服务端审计记录
  • 任何人都可离线验证:去除 proof,将负载规范化(键排序、紧凑分隔符),恢复 EIP-191 签名者——其地址必须与 issuer 以及平台地址相同: 0xF30955B6Be768370Da13fca237A5f252F6081d1C(这也是接收 x402 收入的地址——签名和结算使用同一身份)。密钥发布于 GET https://api.boundra.io/verdict-key。
from verdict_credential import verify_credential
ok, why = verify_credential(verdict["credential"])   # offline, no API call

除非设置了 BOUNDRA_VERDICT_KEY,可自托管网关不会附加凭证——未签名模式仍完全向后兼容。

MCP 服务工具

工具用途调用方
evaluate_payment支付前评估。ALLOW 则继续 / DENY 则中止 / ASK 则返回由用户签名的质询;使用 approval_token 重试Agent
set_policy特权操作:提交新的策略版本;需要所有者的 EIP-191 签名仅限用户
revoke_policy特权操作:撤销策略链(立即默认拒绝,永久免费)仅限用户
get_policy_versions策略版本历史(链和哈希,可与链上承诺进行比对)任何人
get_policy查看旧版回退策略任何人
get_spend_report今日支出 / 剩余预算Agent
get_audit_trail审批审计记录Agent
request_policy_changeAgent 请求用户更改策略(进入队列,绝不自行应用)Agent
list_templates / render_template策略模板辅助工具Agent
挂载到 Claude Desktop

只需一行——uvx 会解析依赖项并启动服务:

{
  "mcpServers": {
    "boundra": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/gobeyondfj-cmd/boundra", "boundra-mcp"]
    }
  }
}

首次运行时,使用 boundra-init 向导(同一软件包):创建 / 导入钱包 → 选择策略模板 → 签名 → 通过 MCP 发布,约需 2 分钟。 当 Agent 遇到 ASK 时,运行 boundra-approve 并粘贴质询,即可生成签名的批准令牌。

⚠️ 已知的信任边界简化(生产环境必须修复)

  1. 由 Agent 自行声明 human_approved 已解决(v3):人工批准现在使用签名批准令牌(approval.py)——ASK 会返回一个绑定到精确付款意图的质询;用户的设备会对其签名;网关会验证签名、逐字段匹配意图,并防止 nonce 重放。旧版自行声明路径仍保留,但标记为 approve(legacy-deprecated)。
  2. MCP 层拦截仅供参考——Agent 框架可以绕过网关,直接与钱包通信。缓解措施:配合 x402 的原生钩子使用(见 demo/demo_real.py 中的演示;该钩子在 SDK 内部、签名前触发)。最终目标:将策略的确定性部分编译到智能合约钱包模块中,并在结算层强制执行。
  3. 语义检测基于正则表达式——生产环境应改用 LLM 评估并锚定意图。
  4. 锚定默认写入本地日志——真实合约(contracts/PolicyAnchor.sol)和 web3 客户端(chain_anchor.BaseSepoliaAnchor)已就绪;设置 chain_config.json 即可切换到真实链(通过 Remix 部署,并使用测试 ETH)。

经济模型:评估 API 本身也是 x402 商户

分级定价:

操作价格
确定性评估(/evaluate/basic)免费
语义评估(/evaluate/semantic)每个 Agent 有 100 次免费调用;之后每次调用收费 $0.003 USDC(真实 x402 费用)
策略锚定 / 撤销免费(撤销永远免费——这是安全红线)

开放核心:此仓库中的客户端、评估引擎和演示均采用 Apache-2.0 许可证。托管评估服务(分级定价、免费额度核算、收入账本)运行于私有的 boundra-ops 仓库。

已验证 / 尚未验证

已验证(test_product.py 的全部 22 项断言和 test_mcp_client.py 均通过): 4 层策略叠加(平台红线 × 用户 × Agent × Mandate),并采用最严格规则优先;签名批准令牌(有效令牌通过、伪造令牌被拒、意图重新绑定被拒、重放被拒);Mandate 单次使用;撤销默认拒绝,签名 v2 可恢复;模板渲染和编译;所有 MCP 工具均通过线路测试;在真实 x402 402 往返流程中,网关会在 SDK 签名前拦截注入攻击;完整的分级定价流程——先在 Base Sepolia(2026-10-16)验证,随后在 **Base 主网(2026-10-21)**验证:免费层通过,付费层实际结算 $0.003 USDC(买方余额从 1.010 降至 1.007,平台地址收到 0.003),dogfood 钩子自行评估,语义层拦截注入攻击,并生成 /revenue 账本条目。 主网结算交易可公开验证:0xf04d3497…4eac7e5 ——实时 API 现在通过 Coinbase 的 CDP facilitator 在 Base 主网上结算。 早期测试网凭证:0x5ad8ef4b…c474bbe (托管服务代码按设计保持闭源——区块链是凭证。)

尚未验证:真实的链上锚定(合约已就绪,但部署需要测试 ETH);真实用户需求;在真实 LLM 行为分布下语义层的误报率。

评论

支持 Markdown

第一次接触 MCP?

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

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