nanobanana-pro-mcp
Nano Banana Pro Image Generation for Claude Code
An MCP (Model Context Protocol) server that provides AI-powered image generation, format conversion, and smart asset placement for Claude Code.
Features
generate_image- Generate images from text prompts with automatic aspect ratio detectionconvert_image- Convert images between formats (PNG, JPG, WebP, ICO, ICNS)save_asset- Smart asset placement with project-aware naming conventions
Smart Detection
Aspect Ratio: Automatically detects the best size based on prompt keywords
"icon", "avatar", "logo" → 1:1 (1024x1024)
"banner", "hero", "header" → 16:9 (1280x720)
"mobile", "story", "splash" → 9:16 (720x1280)
"photo", "traditional" → 4:3 (1216x896)
Project Type: Detects your project framework and places assets accordingly
Next.js, React, Vue →
public/images/orsrc/assets/Unity →
Assets/Images/Godot →
assets/images/Python →
assets/orstatic/images/
Naming Convention: Matches your project's existing style
kebab-case, snake_case, PascalCase, camelCase
Installation
From PyPI (Recommended)
# Using uv (recommended)
uv pip install nanobanana-pro-mcp
# Or using pip
pip install nanobanana-pro-mcpPrerequisites
Python 3.10+
uv (recommended) or pip
Configure Claude Code
Add to your Claude Code MCP settings (~/.claude.json or project's .mcp.json):
{
"mcpServers": {
"nanobanana": {
"command": "uvx",
"args": [
"nanobanana-pro-mcp",
"--api-key=YOUR_API_KEY",
"--base-url=http://127.0.0.1:8045/v1"
]
}
}
}Configuration Options
Argument | Required | Description |
| Yes | Your API key for the image generation service |
| Yes | Base URL of the OpenAI-compatible image API |
| No | Model name (default: |
Usage Examples
Generate an Image
"Generate a futuristic city skyline at sunset"The MCP will:
Detect this should be a wide/banner image (16:9)
Generate the image via your configured API
Return a temporary file path and suggested filename
Convert Format
"Convert /tmp/futuristic-city.png to WebP"For icons:
"Convert /tmp/app-logo.png to ICO"This creates a proper Windows icon with all required sizes (16x16 through 256x256).
Save to Project
"Save /tmp/futuristic-city.png to my Next.js project at /home/user/my-app"The MCP will:
Detect it's a Next.js project
Find or create
public/images/Apply kebab-case naming (or match existing convention)
Save as
futuristic-city.png
Supported Formats
Format | Read | Write | Notes |
PNG | ✅ | ✅ | Default output format |
JPG/JPEG | ✅ | ✅ | Converts RGBA to RGB |
WebP | ✅ | ✅ | Great for web projects |
ICO | ✅ | ✅ | Multi-size Windows icons |
ICNS | ✅ | ✅ | macOS icons (basic support) |
Development
Local Setup
git clone https://github.com/rzgrozt/nanobanana-pro-mcp.git
cd nanobanana-pro-mcp
# Create virtual environment
uv venv
source .venv/bin/activate
# Install in development mode
uv pip install -e .Testing Locally
nanobanana-pro-mcp --api-key=test --base-url=http://localhost:8045/v1License
MIT License - see LICENSE for details.
Contributing
Contributions are welcome! Please open an issue or submit a pull request.