The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the MCP Alphabanana listing page.
English | 日本語
mcp-alphabanana is a Model Context Protocol (MCP) server for generating image assets with Google Gemini. It is built for MCP-compatible clients and agent workflows that need fast image generation, transparent outputs, reference-image guidance, and flexible delivery formats.
Keywords: MCP server, Model Context Protocol, Gemini AI, image generation, FastMCP
Key capabilities:

Run the MCP server with npx:
Or add it to your MCP configuration:
Set GEMINI_API_KEY before starting the server.
For Claude Desktop,
Download mcp-alphabanana-latest.mcpb, then add it as Extension from Claude Desktop Settings. For Windows, Recommend add 'FileSystem' extension for better local file handling.
The Claude registry / MCPB package metadata is defined in manifest.json and ships with the static 512x512 icon at images/mcp-alphabanana.png.
Native sharp runtime packages are declared as optional dependencies so .mcpb installs can resolve the correct prebuilt binary on each supported platform without relying on postinstall hooks.
https://github.com/tasopen/mcp-alphabanana/releases/latest/download/mcp-alphabanana-latest.mcpbhttps://github.com/tasopen/mcp-alphabanana/releases/download/vVERSION/mcp-alphabanana-VERSION.mcpbThis repository provides an MCP server that enables AI agents to generate images using Google Gemini.
It can be used with MCP-compatible clients such as:
Built with FastMCP 3 for a simplified codebase and flexible output options.
Generates images using Google Gemini with optional transparency, local reference images, grounding, and reasoning metadata.
For Claude Desktop, prefer outputType=file for medium or large images. base64 and combine responses consume Claude context and can hit the client's size limit. On Windows, use the FileSystem extension to choose a writable absolute outputPath and any local referenceImages paths.
Key parameters:
prompt (string): description of the image to generatemodel: Flash3.1, Lite3.1, Flash2.5, Pro3, flash, prooutputWidth and outputHeight: requested final image size in pixels in normal modenoresize + aspectRatio + output_resolution: return Gemini native size without resizingoutput_resolution: 0.5K, 1K, 2K, 4Koutput_format: png, jpg, webpoutputType: file, base64, combineoutputPath: required when outputType is file or combinetransparent: enable transparent PNG/WebP post-processingreferenceImages: optional array of local reference image filesgrounding_type and thinking_mode: advanced Gemini 3.1 controls| Input Model ID | Internal Model ID | Description |
|---|---|---|
Flash3.1 | gemini-3.1-flash-image | Ultra-fast, supports Thinking/Grounding. |
Lite3.1 | gemini-3.1-flash-lite-image | Ultra-fast, cost-effective 1K-only model. No Search Grounding. |
Flash2.5 | gemini-2.5-flash-image | Legacy Flash. High stability. Low cost. |
Pro3 | gemini-3-pro-image | High-fidelity Pro model. |
flash | gemini-3.1-flash-image | Alias for backward compatibility. |
pro | gemini-3-pro-image | Alias for backward compatibility. |
Full parameter reference for the generate_image tool.
| Parameter | Type | Default | Description |
|---|---|---|---|
prompt | string | required | Description of the image to generate |
outputFileName | string | required | Output filename (extension auto-added if missing) |
outputType | enum | combine | file, base64, or combine |
model | enum | Flash3.1 | Model: Flash3.1, Lite3.1, Flash2.5, Pro3, flash, pro |
output_resolution | enum | auto | 0.5K, 1K, 2K, 4K; required when noresize=true |
noresize | boolean | false | Skip post-generation resize and return Gemini native dimensions |
aspectRatio | enum | optional | Required when noresize=true; e.g. 1:1, 16:9, 4:5 |
outputWidth | integer | required unless noresize=true | Final output width in pixels |
outputHeight | integer | required unless noresize=true | Final output height in pixels |
output_format | enum | png | png, jpg, webp |
outputPath | string | required for file / combine | Absolute output directory path |
transparent | boolean | false | Transparent background (PNG/WebP only) |
transparentColor | string or null | null | Color key override for transparency extraction |
colorTolerance | integer | 30 | Transparency color matching tolerance |
fringeMode | enum | auto | auto, crisp, hd |
resizeMode | enum | crop | crop, stretch, letterbox, contain |
grounding_type | enum | none | none, text, image, both (Flash3.1 only) |
thinking_mode | enum | minimal | minimal, high (Flash3.1 only) |
include_thoughts | boolean | false | Return model reasoning fields when metadata is enabled |
include_metadata | boolean | false | Include grounding and reasoning metadata in JSON output |
referenceImages | array | [] | Up to 14 local reference files (Flash3.1/Pro3/Lite3.1), 3 for Flash2.5 |
debug | boolean | false | Save intermediate debug artifacts |
Lite3.1): ultra-fast, cost-effective 1K-only model for quick drafting and low-latency iterationThese sample outputs were generated with mcp-alphabanana and stored in images/examples.
| Pixel art asset | Reference-image game scene | Photorealistic generation |
|---|---|---|
![]() | ![]() |
Configure the GEMINI_API_KEY in your MCP configuration (for example, mcp.json).
Examples:
mcp.json:mcp.json:Add to your VS Code settings (.vscode/settings.json or user settings), configuring the server env in mcp.json or via the VS Code MCP settings.
Optional: Set a custom fallback directory for write failures by adding MCP_FALLBACK_OUTPUT to the env object.
This mode returns the Gemini native pixel size for the requested ratio and resolution. For example, 1:1 + 0.5K returns 512x512 without any resize pass.
This sample enables Google Search grounding and returns grounding and reasoning metadata in JSON.
MIT