Skip to content

MPP sessions adapter: open Tempo session, stream micro-pays under a budget cap #17

@abhicris

Description

@abhicris

Why

MPP (Stripe × Tempo, mainnet 2026-03-18) introduces a session primitive: an agent authorises a spending cap upfront and streams micro-payments without an on-chain tx per request. This is the right primitive for high-frequency agent traffic where x402 per-request becomes cost-prohibitive even at $0.001.

Switchboard's gas-budget tracker (#5 / merged #14) already understands rolling spending caps. An MPP-session adapter is a natural composition: switchboard owns the cap, MPP owns the session.

Scope

  • switchboard.mpp.session — Python client around Tempo's MPP API: open / charge / close.
  • Bind OpenSession.limit to the existing GasBudgetTracker daily limit so a single source-of-truth caps the agent's spend.
  • On session close, write the settled net amount into the gas-budget ledger so cross-protocol caps stay honest.
  • Optional: SPT bridge — accept a Stripe Shared Payment Token instead of native USDC for the funding side. Document the trust trade-off.

Deliverables

  • Module + tests against a recorded MPP API trace (no live mainnet calls in CI).
  • examples/mpp_streaming_inference.py — agent paying for streamed inference under a 10 USD/day cap.
  • Docs section + dashboard tab update.

Non-goals

  • Authoring our own session-server. We're a client of MPP.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions