@mindstone/mcp-server-nano-banana
v0.4.1
Published
Nano Banana MCP server — Google Gemini image generation and editing via Model Context Protocol
Readme
@mindstone/mcp-server-nano-banana
Nano Banana MCP server — Google Gemini image generation and editing via Model Context Protocol. Generate images from text descriptions and edit existing images using Google Gemini's AI capabilities.
Status
- Version: 0.4.1 · npm
- Auth: API key (
GEMINI_API_KEY) - Tools: 3 (image-generation, image-editing)
- Surface: cloud-api
- Machine-readable:
STATUS.json
Requirements
- Node.js 20+
- npm
One-click install
After clicking the button, your host will prompt you to fill: GEMINI_API_KEY, NANO_BANANA_GEMINI_TIMEOUT_MS, NANO_BANANA_BRIDGE_TIMEOUT_MS.
{
"mcpServers": {
"Nano Banana": {
"command": "npx",
"args": [
"-y",
"@mindstone/mcp-server-nano-banana"
],
"env": {
"GEMINI_API_KEY": "",
"NANO_BANANA_GEMINI_TIMEOUT_MS": "180000",
"NANO_BANANA_BRIDGE_TIMEOUT_MS": "30000"
}
}
}
}Quick Start
Install & build
cd <path-to-repo>/connectors/nano-banana
npm install
npm run buildnpx (once published)
npx -y @mindstone/mcp-server-nano-bananaLocal
node dist/index.jsConfiguration
Environment variables
GEMINI_API_KEY— Google Gemini API keyMCP_WORKSPACE_PATH— optional workspace path for saving generated imagesMCP_HOST_BRIDGE_STATE— optional path to a host bridge state file used for credential managementMINDSTONE_REBEL_BRIDGE_STATE— backwards-compatible alias forMCP_HOST_BRIDGE_STATENANO_BANANA_GEMINI_TIMEOUT_MS— optional override (positive integer ms) for the outbound Gemini request timeout. Default:180000(3 min). Increase this if you usegemini-3-pro-image-previewand seeTIMEOUTerrors on slow generations; decrease it if you want tighter bounds.NANO_BANANA_BRIDGE_TIMEOUT_MS— optional override (positive integer ms) for requests to the host bridge. Default:30000.
Host configuration examples
Claude Desktop / Cursor
{
"mcpServers": {
"NanoBanana": {
"command": "npx",
"args": ["-y", "@mindstone/mcp-server-nano-banana"],
"env": {
"GEMINI_API_KEY": "your-gemini-api-key"
}
}
}
}Local development (no npm publish needed)
{
"mcpServers": {
"NanoBanana": {
"command": "node",
"args": ["<path-to-repo>/connectors/nano-banana/dist/index.js"],
"env": {
"GEMINI_API_KEY": "your-gemini-api-key"
}
}
}
}Tools (3)
Configuration
configure_nano_banana_api_key— Save your Gemini API key for image generation
Image generation
nano_banana_generate— Generate images from text descriptionsnano_banana_edit— Edit existing images using AI; accepts up to 14 reference images (source_image_paths) for multi-image composition/fusion. Each source may be a workspace file path or anhttps://URL — every source is capped at 20MB per image (local files included) with a combined-size cap across sources, and remote fetches are SSRF-guarded (HTTPS only, no userinfo, private/loopback/link-local hosts refused with DNS re-validation, redirects re-validated per hop, PNG/JPEG/WebP only)
Both image tools accept an optional save_path inside the workspace. Saves never overwrite: if a file (or symlink) already exists at save_path, the tool returns a SAVE_EXISTS error (with the image still included inline) — choose a different path or delete the existing file. Saved files are written owner-only (0600).
Output resolution
Both image tools accept an optional image_size parameter ("1K", "2K", or "4K"; default "1K" ≈ 1024px). Higher resolutions are only honoured by the Gemini 3 image models (gemini-3.1-flash-image-preview, gemini-3-pro-image-preview); the legacy gemini-2.5-flash-image always produces ~1K output and rejects an explicit image_size.
Licence
FSL-1.1-MIT — Functional Source License, Version 1.1, with MIT future licence. The software converts to MIT licence on 2030-04-08.
