Nano Banana
Nano Banana is CLOUDPILOTS' in-house AI image generation pipeline. It ships three things in one repo:
- A Genkit-based backend that orchestrates Gemini / Imagen via a multi-stage Cloud Tasks pipeline (prompt engineering → image generation → enhancement → color matching) with all output stored in Firestore and GCS, served from Cloud Run.
- A React web app at https://nano.cpl.ai for human users — interview flow, concept proposals, live progress, gallery.
- A remote MCP server at https://mcp.nano.cpl.ai for AI clients (Claude Desktop, Claude Code, claude.ai). OAuth 2.1 with a Google Workspace gate; four tools that wrap the same pipeline.
A separate Claude skill in skills/nano-banana/ teaches Claude how to
drive the MCP idiomatically — when to use propose_concepts versus a
one-shot generate_image, how concept_id carries the brand-styled
refined prompt forward, and how to surface progress to a human-in-the-loop.
Who is this for
- Marketers who want brand-styled hero images without opening a design tool. Use the web app.
- AI agents and AI-augmented developers who want image generation available as a Claude tool. Use the MCP server.
- Operators maintaining the deployment, IAM, secrets, or pipeline internals. Browse the Architecture and Deployment pages.
Quick start
| If you want to… | Go to |
|---|---|
| Generate images from a UI | https://nano.cpl.ai |
| Use it from Claude Desktop | Skill install |
| Understand the pipeline | Architecture |
| Use the MCP tools directly | MCP tools |
| Run it locally / contribute | Local dev |
| Deploy or operate it | Deployment |
A note on brand styling
Every image generated through Nano Banana — whether from the web app or
from a Claude tool call — passes through the prompt-engineer stage
that injects the corporate visual style guide. Raw prompts get rewritten
to match brand tone before the diffusion model sees them. That's why a
direct generate_image MCP call still produces on-brand output and not
generic stock-style imagery. See Brand styling.