Open protocol · built on x402

Agents drive API traffic.
None of them get paid.

Chest Gate splits every paid API call between the provider and the agent that routed it — atomically, on-chain.

live · devnet
live
agent → api.chest.sh/u/sentiment$0.005 USDC
distribute · same block
Merchant88.5%
$0.004425
Referrer10%
$0.000500
Protocol1.5%
$0.000075
tx 7bH2…qL8zopen on solscan
88.5%
Provider keeps the bulk, always.
Configure a referrer share; we never touch the merchant's majority stake.
10%
Agents earn on every call they route.
Attribution is a signed header. The protocol routes their cut atomically, in the same transaction.
1.5%
Protocol fee — constant, enforced in the program.
Not a fee we invoice. A constraint inside the Anchor program.
USDC settled this week
$0.00
Distribute transactions
0
Average call settle time
0.0s
Unique referrer wallets
0
The problem
15,000+
x402 APIs indexed on Bazaar
Thousands of MCP servers, Claude skills, and agents route traffic to them.
Zero revenue for the agents doing the routing.

The x402 protocol solved agent payments. Bazaar and the facilitators solved discovery — the supply side is built. What still doesn't exist: a revenue model for the MCP servers, skills, and agents that drive traffic to those APIs.

The shift
Before x402

Agents couldn't pay APIs. APIs couldn't pay agents. Everyone was waiting on a merchant account nobody could open.

x402 shipped

Agents pay APIs directly. 15K+ resources on Bazaar. But the routers — the MCP servers, skills, and agents driving discovery — still work for free.

Chest Gate closes the loop

Every paid call splits atomically between merchant, referrer, and protocol. Programmable basis points. Enforced by a Solana smart contract. The agent that routed the call earns on every request it sent.

How it works

Three parties. One atomic transaction.

01

Merchant deploys a gate

One command. Your API goes live at api.chest.sh/u/<slug>. You set the commission agents earn.

chest deploy \
  --upstream https://api.yours.com \
  --price 0.005 \
  --referrer-bps 1000
02

Agent calls the API

Signed referral header — ed25519 over a canonical message. Spoofing is mathematically impossible. Cold-wallet payout supported.

X-Referrer-Wallet: <pubkey>
X-Referrer-Sig:    <ed25519>
X-Referrer-Payout: <cold-wallet>
03

One distribute. Same block.

Anchor program splits the USDC atomically. No dust. No trust. Click any tx to see it on Solscan.

merchant  +0.004425 USDC  (88.5%)
referrer  +0.000500 USDC  (10%)
protocol  +0.000075 USDC   (1.5%)
Live proof

Every number on this page is a real on-chain transaction.

Click any tx to open it on Solscan. No mocks. No screenshots.

For agents · worked example

Route 1,000 paid calls.
Keep $0.50.

Atomic on-chain split. No invoice, no claim step, no 30-day payout. The same block the merchant gets paid, so do you.

Calls
1,000
Per call
$0.005
Your cut
10%
With your agent attributed
Signed referral header · ed25519
$5.00 gross
merchant · $4.42
merchant$4.42you$0.50protocol$0.07settles same block
vs. anonymous traffic
Without you
Merchant keeps it all
$5.00 gross
merchant · $4.92
merchant$4.92no referrerprotocol$0.07
Why it's trustless

Four guarantees. Each one is code, not policy.

Guarantee
Vault is program-owned
payTo = split_config_pda

USDC lands in a program-controlled vault, not the merchant. They can never divert the referrer or protocol share because they never hold it.

Guarantee
Distribute is permissionless
distribute(amount, has_referrer)

Any bot can crank it. If our operator goes down, yours still works. Funds are always safe.

Guarantee
Protocol fee is hardcoded
protocol_bps >= 150

Enforced by the Anchor program, not by a billing layer. We can't cheat it down or up.

Guarantee
Referral signatures are ed25519
chest-referral:{signerPubkey}[:{payoutWallet}]:{slug}:{amountMicros}:{windowTs}

One-minute replay window. Cold-wallet payout committed inside the signature. No header can be forged in transit.

For builders

Four surfaces. Open standard. Any agent, any framework.

MCP server
6 tools, stdio, auto-signs referral headers. Drop into Claude Desktop.
CLI
chest init / gate / deploy / keypair — self-host in 60 seconds.
Discovery
Every deployment exposes /.well-known/chest.json — agents read commission rates before the first call.
Open
No marketplace lock-in. No seat licenses. No gatekeeper.
Deploy an API
One command, 30 seconds.
bash
npx chest init
npx chest deploy \
  --upstream https://api.mycool.app \
  --slug sentiment \
  --price 0.005 \
  --referrer-bps 1000
Call as an agent
Earn 10% on every request.
ts
import { payX402 } from '@chest/mcp'

const res = await payX402(
  'https://api.chest.sh/u/sentiment/SOL',
  {
    referrerWallet: MY_WALLET,
    referrerPayout: MY_COLD_WALLET, // optional
  }
)
// → data returned. USDC settled.
// → 10% of the payment in your wallet.
Discover any gate
Zero-auth metadata read.
bash
curl https://api.chest.sh/u/sentiment/.well-known/chest.json
# {
#   "referrerCommission": "10%",
#   "protocolFee": "1.5%",
#   "price": "$0.005",
#   ...
# }
Compared to what's out there

We're not a better proxy. We're the layer nobody built.

MCPayCORBITSSplitterChest Gate
x402 billing
On-chain splits
Agent referral attribution
Signed anti-spoof headersn/a
Open-source MCP server
Self-host at 0%n/a
Pricing

Three tiers. One protocol fee. Enforced by code.

The 1.5% isn't a fee we invoice. It's a constraint inside the Anchor program.

Self-hosted
0%protocol fee

Your infra. You keep everything.

CLI proxy, SQLite, your servers. Zero protocol take.

$ chest gateRead the docs
recommended
Cloud
1.5%protocol fee

api.chest.sh — managed facilitator + dashboard.

Hosted multi-tenant proxy, analytics, SOL gas covered, auto-register.

$ chest deployDeploy now
Enterprise
Custom

Volume discounts. Audit exports. SLA.

Dedicated support, team access, compliance reporting.

$ contact usTalk to sales

FAQ

No. Cloud (chest deploy) handles it. Self-host with chest gate if you want 0% and your own infra.

The agents built themselves.
Now they get paid.

Deploy your first gate in under a minute. Agents start earning on the first call.