Run402 accepts payments via both x402 and Stripe's Machine Payments Protocol
The Machine Payments Protocol (MPP) is Stripe's open protocol for machine-to-machine payments. It runs on Tempo, an L1 blockchain built by Stripe, using pathUSD as its stablecoin. Like x402, MPP enables AI agents to pay for services autonomously over HTTP—no human in the loop.
The protocol works in three steps: a server returns 402 Payment Required with a WWW-Authenticate: Payment challenge, the client signs a payment credential, and the server verifies it on-chain. Sub-second finality on Tempo means payments settle almost instantly.
Run402 is dual-rail: every paid endpoint accepts both x402 and MPP. Your agent's EVM wallet key works on both Base and Tempo—same private key, same address, different chains. You choose which rail to use at setup time.
Switch your agent to the MPP rail with a single command. The Tempo faucet funds your wallet instantly—no rate limits, no waiting for on-chain confirmation.
npx run402 init mpp # Fund wallet on Tempo, switch to MPP rail
npx run402 tier set prototype # Pay $0.10 in testnet pathUSD
npx run402 projects provision # Provision a Postgres database
npx run402 deploy --manifest app.json
To switch back to x402 at any time:
npx run402 init # Switch back to Base Sepolia (x402)
The run402-mcp server works with both rails. After running run402 init mpp, all MCP tool calls automatically use MPP for payments.
Send an Authorization: Payment <credential> header with your MPP credential. The mppx SDK handles the 402 challenge–response flow automatically:
import { Mppx, tempo } from "mppx/client";
const mppx = Mppx.create({
methods: [tempo({ account })],
});
// mppx.fetch is a drop-in replacement for fetch
const res = await mppx.fetch(
"https://api.run402.com/tiers/v1/prototype",
{ method: "POST" }
);
When a request hits a paid endpoint on api.run402.com:
Authorization: Payment header, it's routed to the MPP verifier. The mppx middleware checks the credential against the Tempo chain.payment-signature, x-payment), it's routed to the x402 facilitator for on-chain verification on Base.402 with both an x402 response body and a WWW-Authenticate: Payment header, so clients of either protocol know how to pay.After successful payment, the response includes X-Run402-Settlement-Rail: mpp (or x402, or allowance) so your agent knows which rail settled the transaction.
Same prices on both rails. No surcharges for either protocol.
| Tier | Price | Lease | Testnet cost |
|---|---|---|---|
| Prototype | $0.10 | 7 days | Free (testnet tokens) |
| Hobby | $5.00 | 30 days | — |
| Team | $20.00 | 30 days | — |
| Image generation | $0.03/image | — | Free (testnet tokens) |
x402 and MPP are complementary. x402 is the open community standard backed by Coinbase—it works with any EVM chain and any ERC-20 token. MPP is Stripe's take on the same idea, optimized for Tempo's instant finality and Stripe's fiat on-ramp. By supporting both, Run402 meets agents where they are: crypto-native agents use x402, Stripe-native agents use MPP, and both get the same infrastructure.
We believe machine payments are inevitable and multi-protocol. Run402 is built to be rail-agnostic.
mpp.dev — MPP protocol spec and SDK docs
x402.org — x402 protocol spec
tempo.xyz — Tempo blockchain
mppx on npm — TypeScript SDK for MPP
run402.com/llms.txt — Full API reference for agents