{"x402Version":1,"name":"BananaBanana","description":"Pay-per-call image, video and speech generation on Google's Nano Banana, Veo and Gemini TTS models. POST { tool, arguments } to this URL; an unpaid call answers 402 with the exact price for those arguments.","resource":"https://bananabanana.pro/api/x402","result_endpoint":"https://bananabanana.pro/api/x402/result/{job_id}","docs":"https://bananabanana.pro/mcp","mcp_endpoint":"https://bananabanana.pro/api/mcp","discovery":"https://bananabanana.pro/.well-known/x402","tools":[{"name":"generate_image","description":"Generate an image with Google's Nano Banana models. Result URL is returned in the same response.","pricing":[{"model":"nano-banana-2","usd_per_image":{"512":0.03,"1024":0.06,"2048":0.09,"4096":0.13}},{"model":"nano-banana-pro","usd_per_image":{"1024":0.11,"2048":0.11,"4096":0.2}},{"model":"nano-banana-2-lite","usd_per_image":{"1024":0.03}}],"arguments":{"prompt":"string (required)","model":"string, one of nano-banana-2, nano-banana-pro, nano-banana-2-lite (default nano-banana-2)","resolution":"string: 512 | 1024 | 2048 | 4096 (model-dependent, default 1024)","aspect_ratio":"string (default 1:1)","number_of_images":"integer 1-4 (default 1)"}},{"name":"generate_speech","description":"Gemini 3.1 Flash TTS, single or two-speaker. Returns a WAV URL in the same response.","pricing":[{"model":"gemini-3.1-flash-tts-preview","usd":"0.01 per started 200 characters"}],"arguments":{"text":"string (required)","voice":"string (see https://bananabanana.pro/mcp for the 30 voice names)","style":"string (optional delivery instruction)","language_code":"string (optional, e.g. en-US)"}},{"name":"generate_video","description":"Generate a video with Veo 3.1 or Gemini Omni Flash. Asynchronous: the paid call returns a job_id, then poll the free result endpoint until the clip is ready (1-10+ minutes).","pricing":[{"models":"veo-3.1, veo-3.1-fast, veo-3.1-lite, omni-flash","usd":"$0.10-$4.40 per clip, depends on model, resolution, duration and audio"},{"model":"omni-flash","usd":"$0.10 per second, 3-10 s"}],"arguments":{"prompt":"string (required)","model":"string: veo-3.1 | veo-3.1-fast | veo-3.1-lite | omni-flash (default veo-3.1-fast)","duration":"integer seconds: Veo accepts 4, 6 or 8; omni-flash any value 3-10 (default 8)","resolution":"string: 720p | 1080p | 4k (model-dependent, default 720p)","aspect_ratio":"string: 16:9 | 9:16 (default 16:9)","with_audio":"boolean — native audio on Veo, costs more; omni-flash always has audio","audio_prompt":"string (optional) — describe the desired sound","negative_prompt":"string (optional)"},"async":true,"note":"Payment settles before rendering starts, because a running generation cannot be cancelled at Google. If the clip fails or is refused by the content filter, the result endpoint returns a refund_token worth the full amount — pass it as refund_token in a later call to pay that much less."}],"notes":["Images and speech: payment settles only after the file exists — a failed generation costs nothing.","Video: payment settles up front; a failure is compensated with a refund_token, not an on-chain refund (this server holds no private key).","A refund_token can cover a call fully or partly; any change comes back as a new token in the response.","Conversational video editing (edit_from_generation_id) and video-to-video are MCP-only — they operate on clips owned by an account."]}