Skip to main content
Glama
Riti0208

Nano Banana MCP Server

by Riti0208

šŸŽØ Nano Banana MCP Server

License: MIT MCP TypeScript

A powerful Model Context Protocol (MCP) server for advanced image generation, editing, and analysis using Google's Gemini 2.5 Flash Image Preview (aka "nano-banana") and Gemini 3 Pro Image Preview (aka "nano-banana pro") models.

English | ę—„ęœ¬čŖž

✨ Features

Core Capabilities

  • šŸ–¼ļø Image Generation - Create images from text prompts with advanced customization

  • āœļø Image Editing - Edit existing images using natural language (supports file paths or base64)

  • šŸ” Image Analysis - Analyze and answer questions about images using Gemini

  • šŸŽ­ Multi-Image Processing - Combine, style transfer, or edit multiple images at once

  • šŸ“¦ Batch Generation - Generate multiple images from an array of prompts

  • šŸŽØ Style Templates - Use pre-defined templates for consistent styling

  • šŸ”„ Variations - Generate variations of existing images with controlled randomness

  • šŸ”¬ Image Comparison - Compare and analyze differences between images

Advanced Features

  • Dual Model Support - Choose between Gemini 2.5 Flash Image Preview or Gemini 3 Pro Image Preview

  • High Resolution Output - Generate up to 4K images (4096x4096) with Gemini 3 Pro

  • Generation Control - Fine-tune with temperature, topP, topK parameters

  • Parallel Processing - Batch operations with optional parallel execution

  • Smart Templates - 10+ professional style presets

  • Flexible Input - Accept both file paths and base64 encoded images

  • Auto-save - Automatically saves generated images with timestamps

Model Comparison

Feature

Gemini 2.5 Flash Image

Gemini 3 Pro Image

Max Resolution

1K (1024px)

1K / 2K / 4K

Aspect Ratios

All supported

All supported

Text Rendering

Good

Excellent

Speed

Fast

Moderate

Quality

High

Premium

Best For

Quick iterations

Final production

Supported Aspect Ratios: 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9

Related MCP server: Nano Banana MCP Server

šŸš€ Quick Start

Prerequisites

Installation

  1. Clone the repository:

git clone https://github.com/Riti0208/nano-banana-mcp.git
cd nano-banana-mcp
  1. Install dependencies:

npm install
  1. Build the project:

npm run build

Configuration

Add to your Claude Code MCP settings (claude_code_config.json):

{
  "mcpServers": {
    "nano-banana": {
      "command": "node",
      "args": ["./dist/index.js"],
      "cwd": "/path/to/nano-banana-mcp",
      "env": {
        "GEMINI_API_KEY": "your-api-key-here"
      }
    }
  }
}

šŸ“– Usage Examples

Generate an Image (Standard)

generate_image({
  prompt: "A serene mountain landscape at sunset",
  config: {
    temperature: 0.8,
    topP: 0.95
  }
})

Generate a High-Resolution Image (4K with Gemini 3 Pro)

generate_image({
  prompt: "Ultra detailed cyberpunk city at night with neon signs",
  model: "gemini-3-pro-image-preview",
  resolution: "4K",
  aspectRatio: "16:9",
  config: {
    temperature: 0.9
  }
})

Edit an Image

edit_image({
  prompt: "Add a rainbow in the sky",
  imagePath: "./landscape.jpg",
  model: "gemini-3-pro-image-preview",
  resolution: "2K",
  aspectRatio: "4:3",
  config: {
    temperature: 0.5
  }
})

Generate Multiple Variations

generate_variations({
  imagePath: "./original.png",
  count: 3,
  variationStrength: "moderate"
})

Batch Generation

batch_generate({
  prompts: [
    "A red apple",
    "A green apple",
    "A golden apple"
  ],
  parallel: true
})

Use Style Templates

generate_with_template({
  template: "photorealistic",
  customization: "A vintage coffee shop interior"
})

Compare Images

compare_images({
  image1Path: "./before.png",
  image2Path: "./after.png",
  compareType: "differences"
})

šŸ› ļø Available Tools

Tool

Description

generate_image

Generate images from text prompts

edit_image

Edit existing images with natural language

analyze_image

Analyze images and answer questions

multi_image_edit

Process multiple images together

batch_generate

Generate multiple images at once

generate_variations

Create variations of an image

generate_with_template

Use predefined style templates

compare_images

Compare two images

šŸŽØ Style Templates

  • photorealistic - Ultra-realistic photography

  • artistic - Artistic interpretation

  • logo - Clean logo design

  • portrait - Professional portraits

  • landscape - Breathtaking landscapes

  • product - Product photography

  • architectural - Architectural photography

  • fashion - Fashion photography

  • food - Food photography

  • abstract - Abstract art

āš™ļø Configuration Parameters

Parameter

Range

Description

temperature

0.0-2.0

Controls randomness (lower = more focused)

topP

0.0-1.0

Nucleus sampling threshold

topK

1-40

Top-k sampling

maxOutputTokens

-

Maximum response length

šŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

šŸ™ Acknowledgments

  • Google Gemini team for the amazing image generation API

  • Model Context Protocol team for the MCP framework

  • All contributors who help improve this project

Available Tools

8 tools
analyze_imageA

Analyze an image and answer questions about it using Gemini

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesQuestion or instruction about the image
imageDataNoBase64 encoded image data to analyze (optional if imagePath is provided)
imagePathNoPath to the image file to analyze (optional if imageData is provided)

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It discloses the use of 'Gemini' but fails to mention what the output looks like, whether the operation is read-only, or any potential side effects. The description is too minimal to provide meaningful transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that conveys the essential purpose without any filler. It is appropriately sized for a simple tool and immediately front-loads the key action and target.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity and complete schema, the description is mostly adequate. However, the absence of an output schema means the description should have indicated what the tool returns (e.g., a text answer) or any limitations. This missing information prevents it from being fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the schema's parameter descriptions. It does not clarify how 'prompt' relates to the image or any format expectations for imageData/imagePath, but the schema already documents these sufficiently.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the primary function: 'Analyze an image and answer questions about it using Gemini.' The verb 'analyze' and resource 'image' are specific, and the mention of answering questions distinguishes it from sibling tools that generate or edit images.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool (analyzing images, not creating/modifying them), though it does not explicitly name alternative tools or state exclusion criteria. The purpose alone is enough for an agent to infer appropriate usage given the sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

batch_generateB

Generate multiple images from an array of prompts

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
configNoAdvanced generation configuration
promptsYesArray of prompts to generate images for
parallelNoProcess prompts in parallel (default: false)
outputDirNoDirectory to save the generated images
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated images (optional)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only restates the basic purpose and does not mention side effects (e.g., saving images to outputDir), parallel execution behavior, or output format. This is a significant transparency gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence with no redundant wording. It is well-structured and front-loaded with the core function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite full schema coverage, the tool has 7 parameters including a nested config object, and no output schema. The description does not clarify expected return values, how config works, or default behaviors (e.g., resolution, parallelism). It is incomplete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters have descriptive text in the schema. The description adds little beyond what the schema already provides, except reinforcing that images are generated from an array of prompts. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Generate') and the resource ('multiple images from an array of prompts'), which distinguishes it from sibling tools like generate_image (single) and edit_image. It is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the name and description: for batch generation when you have multiple prompts. However, there is no explicit mention of when to use this over alternatives, nor any exclusions or prerequisites. No sibling tool is referenced.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_imagesB

Compare two images and analyze their differences or similarities

ParametersJSON Schema
NameRequiredDescriptionDefault
image1PathYesPath to the first image
image2PathYesPath to the second image
compareTypeNoType of comparisonboth

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure, but it only restates the high-level action. It does not disclose what the output looks like, whether the tool provides visual markers, confidence scores, or any limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with all necessary high-level information and no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The schema fully documents parameters, making invocation straightforward, but the absence of an output schema and annotations means the description should explain return values or comparison behavior. It only states the basic function, leaving some invocation context unspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes all three parameters with 100% coverage, so the baseline is 3. The description adds no extra meaning beyond mirroring the compareType enum values ('differences or similarities').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('compare'), identifies the target ('two images'), and clarifies the scope ('differences or similarities'), making the tool's purpose clear and distinguishing it from sibling generation/editing tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit guidance on when to use this tool versus alternatives like analyze_image or multi_image_edit, nor any mention of when not to use it or what prerequisites exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

edit_imageB

Edit an existing image using Gemini image models (Nano Banana 2 or Nano Banana Pro)

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
promptYesThe text prompt describing how to edit the image
imageDataNoBase64 encoded image data to edit (optional if imagePath is provided)
imagePathNoPath to the image file to edit (optional if imageData is provided)
outputDirNoDirectory to save the edited image (optional, defaults to ~/Downloads/nano-banana-images)
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated image (optional)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only states the editing action and models, but does not disclose whether the original image is modified or preserved, where the output is saved, what the return format is, or any model-specific limitations. The presence of an outputDir parameter in the schema suggests file saving, but this is not mentioned in the description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It is appropriately front-loaded with the essential purpose. However, it is arguably too sparse given the tool's complexity, but as a concise summary it remains effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 7 parameters and no output schema or annotations, so the description should compensate. It does not explain return values, output file behavior, the mutual exclusivity of imageData and imagePath, or provide guidance on selecting between the two models. The description is incomplete for an agent to fully understand the tool's behavior without additional inference from the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 7 parameters. The description does not add additional meaning beyond naming the models; it does not clarify prerequisites like the requirement of either imageData or imagePath, nor does it explain the meaning of resolution or aspectRatio beyond the enums. Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool edits an existing image using specific Gemini models (Nano Banana 2 or Nano Banana Pro). It distinguishes itself from sibling tools like generate_image (which creates new images) and multi_image_edit (which suggests multiple images). The verb 'Edit' + resource 'existing image' is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when you want to edit an existing image, but it does not provide explicit guidance on when to choose this tool over alternatives or mention any exclusions. It lacks context such as 'for single-image edits, use this; for multi-image, use multi_image_edit'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_imageC

Generate an image using Gemini image models (Nano Banana 2 or Nano Banana Pro)

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
promptYesThe text prompt describing the image to generate
outputDirNoDirectory to save the generated image (optional, defaults to ~/Downloads/nano-banana-images)
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated image (optional)
returnBase64NoReturn the image as base64 data URL instead of saving to file (useful for Claude Desktop)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only says 'generate an image' and does not disclose side effects like file saving (default output directory), the possibility of returning base64, model-specific restrictions (e.g., 0.5K only for Flash), or any failure modes. The schema mentions outputDir and returnBase64, but the description itself adds no behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that immediately states the verb and resource. It contains no filler or redundant explanation, making it appropriately concise for the information it conveys.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description should clarify success outputs (e.g., saved file path vs. base64) and model selection guidance. It does neither, leaving the agent to rely entirely on schema descriptions. While the schema is rich, the tool-level context is incomplete for confident invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover all 6 parameters at 100% with meaningful details (model enum, resolution, aspect ratio, output options). The description merely repeats model names already present in the schema, adding no new parameter semantics beyond the structured fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('generate') and resource ('image') with relevant model context (Nano Banana 2 or Nano Banana Pro). It does not explicitly differentiate from sibling tools like batch_generate or generate_variations, but the core purpose is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as edit_image or generate_variations. The description gives no context for model selection or ideal use cases, leaving the agent to infer usage from sibling names and schema enums.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_variationsC

Generate variations of an existing image

ParametersJSON Schema
NameRequiredDescriptionDefault
countNoNumber of variations to generate (1-5)
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
configNoAdvanced generation configuration
imageDataNoBase64 encoded reference image
imagePathNoPath to the reference image
outputDirNoDirectory to save the variations
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated variations (optional)
variationStrengthNoHow different the variations should bemoderate

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility for disclosing behavioral details. It only states the high-level purpose and does not mention input requirements, output format, or any constraints. It adds minimal value beyond the tool name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is immediately understandable, with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 9 parameters and no annotations, the description is extremely brief. It doesn't cover when to use the tool, what inputs are essential, or what the output looks like, leaving the agent with significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description doesn't need to repeat parameter info. The description adds no extra semantic context beyond what the schema already documents, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Generate') and resource ('variations of an existing image'), distinguishing it from sibling tools like edit_image. However, it doesn't explicitly contrast with generate_image or batch_generate, so there is minor ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It simply states the purpose without any contextual cues, such as 'for creating similar images' or comparing with edit_image.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_with_templateB

Generate an image using a pre-defined style template

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
configNoAdvanced generation configuration
templateYesPre-defined prompt template
outputDirNoDirectory to save the generated image
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated image (optional)
customizationYesYour specific requirements to customize the template

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden for behavioral disclosure. It only states the core function, providing no details about template mechanics, file output, resolution constraints, or any side effects. This is insufficient for a generation tool with 7 parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no unnecessary words, making it concise and front-loaded. However, it is under-specified, which slightly reduces the score, but it does not contain waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity—7 parameters, nested config, enums, no output schema, and no annotations—the description is far too minimal. It omits guidance on how templates work, how customization operates, and which model/resolution options are relevant, leaving the agent to infer crucial context from the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The tool description adds no parameter semantics beyond what the schema already provides; the mention of 'template' is redundant with the schema's template parameter definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Generate an image') and the specific method ('using a pre-defined style template'). This distinguishes it from edit_image or analyze_image, though it doesn't explicitly contrast with sibling generate_image, which may serve as the generic generation tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'pre-defined style template' implies this tool is for template-based generation, but there is no explicit guidance on when to use it over alternatives like generate_image or generate_variations. The use case is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

multi_image_editA

Edit or combine multiple images using Gemini image models (e.g., transfer pose, style, combine elements)

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use: gemini-3.1-flash-image-preview (Nano Banana 2, recommended) or gemini-3-pro-image-preview (Nano Banana Pro)
imagesYesArray of images to process
promptYesThe text prompt describing how to combine or edit the images
outputDirNoDirectory to save the result (optional, defaults to current directory)
resolutionNoOutput resolution: 0.5K (512px, 3.1 Flash only), 1K (default), 2K, or 4K
aspectRatioNoAspect ratio for the generated image (optional)

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It only states the high-level action without addressing permissions, image uploads, output handling, or potential side effects. This leaves significant behavioral uncertainty.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with the core purpose and illustrative examples. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the schema richness, the description omits important operational details such as how results are returned (e.g., file output), any constraints on image combinations, or the role of the optional parameters in practice. With no output schema or annotations, the description alone is insufficient for advanced use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 6 parameters (100%) with detailed descriptions for each, so the tool description need not add parameter-level details. The description itself adds no extra meaning beyond the schema, meriting the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool edits or combines multiple images using Gemini image models, with concrete examples (transfer pose, style, combine elements). This distinguishes it from siblings like generate_image (creation) and edit_image (likely single image).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The examples imply when to use this tool (multi-image transformations like pose transfer or element combination), but it does not explicitly contrast with alternatives or state exclusions. The context is clear enough for basic selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv1.0.0
    • First observedanalyze_image
    • First observedbatch_generate
    • First observedcompare_images
    • First observededit_image
    • First observedgenerate_image
    • First observedgenerate_variations
    • First observedgenerate_with_template
    • First observedmulti_image_edit

TDQS

A3.5/5.0

Scored across 8 tools

Disambiguation4/5

Each tool targets a distinct operation (generate, edit, analyze, compare, batch, variations, template), so boundaries are clear. Minor overlap exists between generate_variations and edit_image, but the descriptions help differentiate the intended use cases.

Naming Consistency4/5

Tool names follow a consistent snake_case verb-object pattern (generate_image, edit_image, analyze_image, compare_images). A few names like multi_image_edit and batch_generate add modifiers but still fit the overall predictable style.

Tool Count5/5

With 8 tools, the server is well-scoped for an image generation and manipulation domain, covering all major workflows without excessive redundancy or a thin feature set.

Completeness4/5

The set covers generation, editing, analysis, comparison, batch, variations, and template-based creation, providing comprehensive lifecycle coverage for image tasks. Minor gaps like model management or file export are not essential to the core purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Riti0208/nano-banana-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server