{"protocol":"MPP (Machine Payments Protocol)","version":"draft-tempo-charge-00","payment_header":"Authorization: Payment ...","challenge_header":"WWW-Authenticate: Payment ...","method":"tempo","intent":"charge","chain":{"name":"Tempo Mainnet","chain_id":4217,"rpc_url":"https://rpc.tempo.xyz","usdc_address":"0x20C000000000000000000000b9537d11c60E8b50","usdc_decimals":6,"usdc_standard":"TIP-20"},"flow":{"1":"Request gated resource -> 402 with WWW-Authenticate: Payment challenge","2":"Client reads challenge, signs Tempo stablecoin transfer to recipient","3":"Client retries with Authorization: Payment credential","4":"Server verifies on-chain -> returns resource + Payment-Receipt header"},"routes":{"note":"All x402-gated routes also accept MPP when operator has payout_address set","marketplace_routes":"dynamic pricing -- see /x402-spec for route list","registration":"$24.00","domain_com":"$15.95","domain_sh":"$70.40"},"operator_setup":{"1":"POST /account/payout-address with {payout_address: '0x...'} (same address works for both Base and Tempo)","2":"MPP challenges are returned alongside x402 when MPP_ENABLED=true"},"sdk":{"typescript":"npm install mppx","python":"pip install pympp[tempo]","rust":"cargo add mpp-rs","cli":"cargo install tempo-wallet"},"resources":{"mpp_spec":"https://mpp.dev/overview","tempo_docs":"https://docs.tempo.xyz","github":"https://github.com/tempoxyz/mpp-specs"},"platform_fee":"0% -- payments go 100% directly to operator wallet"}