Skip to main content
The crosschain.agents schema provides analytics for the Machine Payment Protocol (MPP) — an open standard for machine-to-machine payments that enables AI agents to pay for API services with USDC micropayments. Currently live on Tempo (by Stripe & Paradigm), with multi-chain expansion planned.

Available Tables

Data Schema

Chain-specific tables:

Key Concepts

Payment Types

MPP supports two payment models:
  • Charges (mpp_charges) — Pay-per-request via TransferWithMemo events. One row per individual API call payment. Join to mpp_servers on memo_server_hash for service name and category.
  • Sessions (mpp_sessions) — Pay-as-you-go streaming channels. The payer deposits USDC into a channel contract; the service draws down via signed vouchers; remaining balance is refunded on close. One row per lifecycle event (channel_opened, settled, close_requested, channel_closed).

Server Registry

mpp_servers maps the on-chain memo_server_hash (a 10-byte identifier embedded in each payment memo) to human-readable service metadata — name, URL, category, and endpoint count. Use it to label charges by service:

Detection Method

MPP charges are detected via the TIP-20 TransferWithMemo event on the USDC.e contract on Tempo. The memo field encodes a 5-byte protocol identifier (ef1ed71201) followed by a 10-byte server hash. This is distinct from plain Transfer events — every MPP payment has a memo, but not every transfer is MPP.

Sample Query