trackmcp
Back to directory
creating-cat

gemini-image-mcp-server

View on GitHub

An MCP server for image generation using the Gemini API.

2 stars TypeScriptOthers Updated Sep 1, 2025

Documentation

日本語版はこちら (Read in Japanese)

Gemini Image MCP Server

This is an MCP (Model Context Protocol) server that uses Google's Gemini API to generate images and save them to a specified directory.

In addition to text prompts, you can optionally provide input images to guide the image generation process.

Generated images are automatically compressed to reduce file size.


Features

  • Image generation from text prompts
  • (Optional) Image generation using input reference images
  • Automatic compression of generated images (JPEG, PNG)
  • Unique file name assignment to prevent file name conflicts
  • Operates as an MCP server, accepting tool calls via standard input/output

Prerequisites

  • Node.js (v18 or higher recommended)
  • Google Cloud Project with Gemini API enabled
  • Gemini API Key

Setup

Example MCP server configuration for Roo Code

json
{
  "mcpServers": {
    "gemini-image-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@creating-cat/gemini-image-mcp-server"
      ],
      "env": {
        "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY"
      },
      "disabled": false,
      "timeout": 300
    }
  }
}
  • Replace `YOUR_GEMINI_API_KEY` with your actual Gemini API Key.

    Tool: `generate_image`

    This MCP server provides a tool named `generate_image`.

    Input Parameters

    Parameter NameDescriptionDefault Value
    `prompt`(string, required) Text prompt for image generation. If input images are provided, include instructions on how to incorporate them into the generated image. English is recommended.None
    `output_directory`(string, optional) Directory path where the generated image will be saved.`output/images`
    `file_name`(string, optional) Name of the saved image file (without extension).`generated_image`
    `input_image_paths`(string\[], optional) List of file paths for input reference images.`[]` (empty array)
    `use_enhanced_prompt`(boolean, optional) Whether to use enhanced prompts to assist AI instructions.`true`
    `target_image_max_size`(number, optional) Maximum size (in pixels) for the longer edge after resizing. The aspect ratio is preserved.`512`
    `force_conversion_type`(string, optional) Optionally force conversion to a specific format ('jpeg', 'webp', 'png'). If not specified, the original format will be processed, defaulting to PNG for non-JPEG images.None
    `skip_compression_and_resizing`(boolean, optional) Whether to skip compression and resizing of generated images. If `true`, `force_conversion_type` and `target_image_max_size` will be ignored.`false`
    `jpeg_quality`(number, optional) JPEG quality (0-100). Lower values result in higher compression.`80`
    `webp_quality`(number, optional) WebP quality (0-100). Lower values result in higher compression.`80`
    `png_compression_level`(number, optional) PNG compression level (0-9). Higher values result in higher compression.`9`
    `optipng_optimization_level`(number, optional) OptiPNG optimization level (0-7). Higher values result in higher compression.`2`

    Output

    On success, the server returns the save path of the generated image and a message detailing the process, including the original and compressed file sizes.

    Example:

    json
    {
      "content": [
        {
          "type": "text",
          "text": "Image successfully generated and compressed at output/images/my_cat.jpg.\nOriginal size: 1024.12KB, Final size: 150.45KB"
        }
      ]
    }

    If an error occurs, an error message will be returned.


    Notes

    • The MIME type and aspect ratio of the generated images depend on the default settings of the Gemini API.
    • Handle your API key with care.
    • This server uses the model `gemini-2.0-flash-preview-image-generation`. Google may discontinue this model in the future.

    License

    MIT

    Frequently asked questions

    What is gemini-image-mcp-server?

    gemini-image-mcp-server is An MCP server for image generation using the Gemini API.

    How do I install gemini-image-mcp-server?

    Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

    Is gemini-image-mcp-server open source?

    Yes — it is hosted on GitHub at https://github.com/creating-cat/gemini-image-mcp-server and has 2 stars.

    Related MCP tools

    Run your own MCP server? See who uses it and what to fix.

    Measure it with TrackMCP