Pricing & x402

Every tool gives you 25 free calls a day (reset at midnight UTC), then one or two cents in USDC paid with each request through the open x402 protocol. No account or API key; agents with a Solana wallet pay automatically. Calls that return an error are never charged, and network fees are covered.

Prices after the free calls

$0.01a call

Reads, lookups, helpers and transaction forensics.

  • balance
  • tokens
  • history
  • blockhash
  • token_account
  • whats_this
  • convert
  • why_failed
  • find_token
  • fee
  • wallet
  • explain_tx
  • tx_version

$0.02a call

The three checks that protect funds.

  • token_safety
  • check_tx
  • tx_matches
  • trace

How a paid call works

  1. 1

    Call the tool

    Once that day's free calls are used, the gateway answers 402 Payment Required (over MCP: a tool result with the payment details). It lists the exact USDC amount and where to pay.

  2. 2

    Your client pays

    An x402 client signs a USDC transfer for that amount and retries the same call with it attached. No sign-up and no prepaid balance.

  3. 3

    Get the answer and a receipt

    The payment is checked, the tool runs, and the transfer settles on Solana only if the call succeeded. The receipt includes the transaction signature.

Add payments to your client

HTTP, with @x402/fetch
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactSvmScheme } from "@x402/svm/exact/client";
import { createKeyPairSignerFromBytes } from "@solana/kit";

// A Solana wallet holding a little USDC; it signs each payment.
const signer = await createKeyPairSignerFromBytes(secretKeyBytes);
const fetchWithPayment = wrapFetchWithPaymentFromConfig(fetch, {
  schemes: [{ network: "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", client: new ExactSvmScheme(signer) }],
});

const res = await fetchWithPayment(
  "https://trade-desk-1021990235790.us-central1.run.app/api/tools/token_safety",
  { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ token: "<token address>" }) }
);
console.log(await res.json());
MCP, with @x402/mcp
import { createx402MCPClient } from "@x402/mcp";
import { ExactSvmScheme } from "@x402/svm/exact/client";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";

const client = createx402MCPClient({
  name: "my-agent",
  version: "1.0.0",
  schemes: [{ network: "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp", client: new ExactSvmScheme(signer) }],
  autoPayment: true,
});
await client.connect(new StreamableHTTPClientTransport(
  new URL("https://trade-desk-1021990235790.us-central1.run.app/mcp")
));
const result = await client.callTool("check_tx", { tx: "<base64>" });

Network solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp (Solana mainnet), asset USDC, scheme exact. Prices are also listed in mcp.json, llms.txt and /api/trial/status.