outputSchema, returns structuredContent (with the same JSON in a text block), and carries MCP annotations so clients can decide what needs confirmation. Which tools a server offers depends on how it runs: see Choose an integration.
Read tools
On a local server with a signer,
submitter and payer default to the server’s wallet. On the hosted server, pass them.
Round tools
execute_subscription_round and execute_x402_round take the same core inputs:
execute_subscription_round also accepts encryptSecrets (local only) and sourcePayment.maxSpendUsdc for paid sources. On the hosted server it takes a sessionToken, and x402 rounds go through prepare_x402_round first: see Hosted MCP.
Output
attestation has the same shape as in the gateway’s round response. submit_attestation accepts this output unchanged, and build_verifier_calldata takes its attestation. Field meanings are explained in Rounds and attestations.
Timing and retries
Rounds run on a 100 ms tick (round timing). A second request for the same source and quorum inside one tick gets HTTP 409; the x402 and hosted subscription tools retry it once a tick later, then fail withround_conflict. Nothing else is retried automatically, because every retry is a new round that spends again.
Write tools
Providers and paid sources
A gateway can integrate data providers. A provider entry lists its access flows and ready-made feeds, each with a completeapiConfig and sourceId.
api_keyflow. Molpha holds the provider key; you pay nothing extra and send nothing extra. Pass the feed’sapiConfigunchanged to a round tool withsignaturesRequiredof at least 3. Any change moves thesourceIdand is refused on the provider’s host.x402flow. You pay the provider per node fetch. Callquote_source_payment, thenexecute_subscription_roundwithsourcePayment: { maxSpendUsdc }. The payer pays the source directly; Molpha never receives that payment, and it does not replace the payment for the round itself.
MOLPHA_SOURCE_PAYER_KEY (an EVM key) and an allowlist in MOLPHA_SOURCE_PAYMENT_NETWORKS, and it is bounded by sourcePayment.maxSpendUsdc and the per-round and daily caps. Without authorization a paywalled source fails with source_payment_required and its quote. Paid sources cannot be combined with encryptSecrets.
Describe provider values as attested provider quotes: Molpha attests what the endpoint returned, not that the price is correct.