Answers
Can an AI agent generate images without an account or API key?
Short answer
Yes, over x402. An agent holding a wallet posts a request, receives HTTP 402 with the exact price for those arguments, pays in USDC on Base and repeats the request with a payment header. No sign-up, no API key, no prepaid balance. Images and speech settle only after the file exists, so a failure costs nothing.
- Protocol
- x402 — HTTP 402 plus an X-PAYMENT header
- Endpoint
- https://bananabanana.pro/api/x402
- Settlement
- USDC on Base
- Tools
- generate_image, generate_speech, generate_video
- Discovery
- /.well-known/x402 — free to read, no payment
- Failed video
- Compensated with a refund token, valid 90 days
Facts on this page were checked against the live platform on .
How does the handshake work?
The agent posts the tool name and arguments. Because no payment is attached, the server answers 402 with payment requirements: the exact amount for those specific arguments, the asset, the network and the recipient. The agent signs a payment authorisation, repeats the same request with an X-PAYMENT header, and receives the result.
Pricing is per call and argument-dependent, which is why the quote comes from a real request rather than a price list. The discovery manifest publishes the *minimum* price of each tool on purpose: it is there for indexers to find the service, not for an agent to sign a payment against, and advertising a maximum would make every cheap call look expensive.
One deliberate quirk: an empty or malformed POST also answers 402 rather than 400. That is what an indexer's probe looks like, and it decides whether the service is payable from the status code alone.
What happens if a paid generation fails?
For images and speech, nothing — because settlement is two-phase. The signature is verified, the generation runs, and the transfer only executes once the file exists. A failure, a timeout or a content-filter rejection never takes the money.
Video cannot work that way. A running generation cannot be cancelled upstream, and no HTTP request can be held open for ten minutes, so video settles up front and returns a job id polled on a free result endpoint. If that job fails, the endpoint issues a refund token for the full amount, valid 90 days and redeemable against a later call; if the next call is cheaper, the remainder comes back as a new token. On-chain reversal is not an option — no private key sits on this server, and none should.
When is x402 the right choice over MCP?
Use x402 when the agent is autonomous and holds funds: no human is available to sign a consent screen, and a wallet is easier to provision than an account. It also suits one-off or bursty workloads where a prepaid balance would just sit idle.
Use MCP when there is a person behind the agent. OAuth or an API key gives you generation history, a usage log per key, optional daily spend caps, video editing on clips you already own, and top-up bonuses. Two conversational tools — editing a video you generated earlier, and refining from a previous generation id — are MCP-only, because they operate on media that belongs to an account.
Where this is documented
Longer reads on the same thing
More on this question
Which network and token?
USDC on Base. The payment requirements name the asset and network explicitly, and the domain data is matched to the deployed contract so signatures verify.
Do I need a Coinbase account?
No. Any EVM wallet that can sign the payment authorisation works; the facilitator handling settlement is a separate service.
Is there a rate limit?
Yes, a per-minute cap on the endpoint. Discovery and the result endpoint are free and not billed.
Can I read the catalogue without paying?
Yes. A GET on the endpoint returns tools, prices and constraints for free, and the well-known manifest is public.
Questions next door
Why does an MCP server list tools fine but return 401 when I call one?
That is lazy authorisation, and it is deliberate. Catalogue methods — initialize, ping, tools/list — answer without credentials so directories can read the tool list. Only a paid action, tools/call, requires a token, and it answers 401 with a WWW-Authenticate header. That 401 is exactly what triggers the OAuth sign-in flow in Claude; a 200 there would leave the header ignored and the client stuck.
Read the answerWhat is the correct MCP server URL, /mcp or /api/mcp?
Use https://bananabanana.pro/api/mcp. That is the JSON-RPC endpoint. The bare /mcp path is the human documentation page, and posting JSON-RPC to it historically returned HTML — the single most common misconfiguration. Requests to /mcp are now rewritten to the canonical route, but configure clients with /api/mcp so nothing depends on that.
Read the answerDo I get my money back when an AI generation fails?
Yes, automatically and in full. The charge happens when a generation starts and is reversed the moment it is marked failed — upstream errors, capacity errors and content-filter rejections all refund without a support ticket. A batch that is only partly rejected is refunded proportionally. There is nothing to claim and no waiting period.
Read the answer