Protocol flow
—
Steps
Reference code — current step
Click a step on the left to see the wire-level snippet.
Compatibility matrix
| x402 | MPP | AP2 | Circle Nano | switchboard escrow | |
|---|---|---|---|---|---|
| Transport | HTTP header on 402 | HTTP + Tempo txs | A2A over gRPC/JSON-RPC | HTTP/SDK, off-chain+onchain | HTTP + chain txs (escrow) |
| Settlement asset | USDC (multichain) | USDC on Tempo, fiat via SPT | protocol-agnostic | USDC nanopayments | native ETH/token + USDC |
| Agent ↔ Agent | indirect (server intermediary) | native | native | via Circle Wallets | native |
| Agent ↔ API / MCP server | primary use case | supported | via payments facilitator | native | via wrapper |
| Streaming / sessions | per-request (v2 adds multi-step) | streamed micro-txs per session | yes (verifiable intent mandate) | nanopayments < $0.000001 | timeout + challenge-period escrow |
| Dispute / refund | none (idempotent retry) | SPT + card dispute rails | AP2 verifiable intent → issuer | Circle policy + rules | on-chain timeout + refund |
| Fiat rails | crypto only | via Stripe SPT | card networks (Visa, MC) | via Circle on/off ramp | crypto only |
| License | Apache-2.0 | Apache-2.0 | Apache-2.0 | proprietary SDK + open skills | MIT |
How switchboard fits
The open rails above settle agent payments; they don't manage the agent side — keys, nonces, gas budgets, counterparty escrow. switchboard fills that gap:
- Agent wallets — MPC key management for autonomous actors (tracked in #1).
- Client-side nonce manager with reorg protection — so a bursty agent doesn't brick its own queue.
- Gas budget tracker — rolling hour/day limits, auto-pause on exhaustion (#14, merged).
- Agent-to-agent escrow —
AgentEscrow.solwith timeout + challenge-period refund (#2, merged). - x402 / MPP / AP2 server middleware — so switchboard-managed agents can respond to
402 Payment Requiredand initiate MPP sessions out of the box (tokenomics / integration issues incoming).