rent_x402
Rent a prepaid block of GPU time with a wallet and NO account, NO API key and no human, over x402 (HTTP 402 micropayments, USDC on Base).
Call it with no arguments and you get the payment challenge: an x402
PaymentRequirementsResponse whose accepts[0].extra.x402_fee states the block
price, the platform fee IN DOLLARS, that there are no refunds, and that you
are charged only after the lease is live. Sign the EIP-3009
transferWithAuthorization it describes, then call again with x_payment set to
the base64 PaymentPayload (the same value the HTTP rail sends as X-PAYMENT).
`ssh_pubkey` is HOW YOU GET IN, and is required on the paying call: pass the
public half of your ssh key (one line, the contents of id_ed25519.pub). It is
written into the rented container's authorized_keys and nowhere else, and the
receipt comes back with the host and port to connect to. A block nobody can
enter is not sold.
`lease_id` is minted by the challenge — send back the one you were given; it
is the accrual key for the daily fee cap and this station refuses ids it did
not mint or that belong to another payer.
`originator` is an OPTIONAL opaque attribution label (<=64 chars, e.g. a
handle or a reverse-DNS name) naming the client implementation that produced
the fill. It is carried unmodified onto the receipt and onto the public
ledger row, and it never affects the price, the fee, verification or
settlement — the same block costs the same either way.
Returns the receipt on success. Every fill is published at /api/receipts.
Wire contract: docs/X402-FEE-0.1.md, frozen as x402-fee/0.1.
Note for x402 MCP-transport clients: this tool takes the payment as an
ARGUMENT rather than in _meta["x402/payment"]. The payload is byte-identical;
only the channel differs, because a tool argument is the one place every MCP
client can portably put it. The HTTP rail is fully transport-conformant.Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| blocks | No | ||
| lease_id | No | ||
| x_payment | No | ||
| originator | No | ||
| ssh_pubkey | No |