Pay for hosting over the Machine Payments Protocol.
Stacktree speaks MPP. An agent gets a 402 with a Payment challenge, signs a USDC authorization with an MPP client like mppx, and provisions its own persistent identity. We settle the evm method on Base mainnet, the same rail as x402. No account, no card, no human. Proven on-chain.
Can an AI agent pay for hosting over MPP (Machine Payments Protocol)?
Yes. Stacktree answers an agent's request with HTTP 402 and a WWW-Authenticate: Payment challenge. The agent signs an EIP-3009 USDC authorization with an MPP client and retries; a facilitator settles it on Base mainnet, and the agent receives a persistent API key it can publish with. It paid for its own hosting with no account, card, or person involved. This is live over the MPP evm method, settling real USDC on Base.
MPP over the evm method
MPP (the Machine Payments Protocol, backed by Stripe and Tempo) defines several ways to pay: an on-chain evm method, a Tempo method, and a Stripe card method. Stacktree implements the evm method, settling USDC on Base mainnet through an x402 facilitator. That is a deliberate choice, not a limitation: the evm method needs only a wallet, so it works for any agent and in any region, and it is the same on-chain rail our x402 support already runs on. We do not advertise the Tempo or Stripe methods, because we do not settle them, and a discovery hint an agent acts on should be one that actually pays.
How an agent pays
The agent calls POST /provision with no credentials and gets a 402. The challenge is a standard MPP Payment header:
WWW-Authenticate: Payment id="..." realm="api.stacktr.ee"
method="evm" intent="charge" expires="..." request="<base64url>"
The request decodes to the amount, the USDC contract on Base, and the recipient. An MPP client signs the EIP-3009 authorization and retries. With mppx, that is a few lines of config and one call:
// mppx.config.js
import { defineConfig } from 'mppx/cli'
import { evm, assets } from 'mppx/evm/client'
import { privateKeyToAccount } from 'viem/accounts'
export default defineConfig({
methods: [...evm({ account: privateKeyToAccount(process.env.PRIVATE_KEY), assets: [assets.base.USDC] })],
}) mppx https://api.stacktr.ee/provision -X POST # funded Base wallet, ~$1 USDC
The client signs, the facilitator settles, and the response carries a stk_live_ key. Use it as a normal bearer token to publish.
It works, with real money
This is not a sandbox. An mppx client paid exactly $1.00 USDC on Base mainnet over the evm method, with the facilitator covering gas, and the key it received published a page that is still up. The settlement is on-chain and anyone can verify it: the transferWithAuthorization on BaseScan, a $1.00 USDC transfer from the paying wallet to Stacktree, no human in the loop.
MPP and x402, one rail underneath
MPP's evm method and x402 are two discovery and challenge formats over the same money movement: the agent signs an EIP-3009 USDC authorization and a facilitator settles it on Base. Stacktree speaks both on the same /provision endpoint, so an agent carrying either client can pay. That is the point. You should not have to pick the protocol your hosting accepts before you know which one your agent speaks. After provisioning, the same à-la-carte unlocks apply: make a site permanent, add a custom domain, or raise limits, each paid the same way. The catalogue is at GET /unlock and the accepted rails at GET /provision.
What is live, honestly
MPP over the evm method is live on Base mainnet today, settling real USDC through the Coinbase CDP facilitator, and it is listed for discovery on MPPScan and submitted to the mpp.dev registry. The Tempo method is not implemented. The Stripe (Shared Payment Token) method is US-only and gated until that suite reaches our region. We would rather ship one method that genuinely settles than three that mostly do not.
Frequent questions
What is MPP (Machine Payments Protocol)? +
How does an agent pay Stacktree over MPP? +
Which MPP method does Stacktree support? +
MPP or x402, which does Stacktree use? +
Is this live, and on which network? +
Does the agent need a Stripe account, or is MPP US-only? +
Does the agent need ETH for gas? +
Related guides
- x402 hosting The other rail, same on-chain settlement. Let an agent pay for its own hosting.
- An agent paid $1 to provision itself The full pay-to-provision loop, the real transaction, and the bug.
- Stacktree for AI agents Every integration, plus pay-to-provision.
- Pricing Humans subscribe; agents pay as they go.
Sources and further reading
- MPP (Machine Payments Protocol) ↗ The open machine-payments standard, backed by Stripe and Tempo, this implements.
- mppx and the MPP SDK ↗ The MPP client and service registry. mppx is the client an agent uses to pay.
- Payment discovery draft ↗ The OpenAPI payment-discovery spec behind x-payment-info and the Payment challenge.
- EIP-3009: Transfer With Authorization ↗ The gasless, signature-based USDC transfer the evm method authorizes.
- Live settlement on BaseScan ↗ The on-chain proof: an mppx client paid $1.00 USDC to provision, settled on Base mainnet.
Your next customer might be an agent.
Stacktree gives agents a private link in one call, and lets them pay for a persistent identity over MPP or x402, with no human. Start free.
Sign up free →