Gemini Image Studio

io.github.udhaykumarbala由 GitHub 帳號 udhaykumarbala 發布v1.0.2更新於 Oct 24, 2026

AI image generation and editing with Google Gemini. Structured JSON editing.

已驗證STDIO僅桌面媒體與設計AI 與機器學習

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理用 Google Gemini 產生並精確編輯影像,支援以 JSON 藍圖為基礎的編輯。

可以做什麼
依文字或 JSON 提示產生影像,可選預設、長寬比、解析度、模型以及用於一致性的參考圖。將既有影像拆解為描述各視覺元件的結構化 JSON 藍圖。透過修改點號路徑的 JSON 欄位或以自然語言指令編輯影像,並快取藍圖以便再次編輯。列出可用的素材預設並瀏覽先前產生的影像。
適用情境
適合讓助理製作網頁素材、廣告創意或品牌視覺,並進行獨立、可重複的修改,例如只改髮色或背景而不重新產生整張圖。適用於受益於結構化影像編輯的行銷與設計流程。
執行需求
透過 stdio 在本機執行,從 npm 套件 gemini-image-studio-mcp 安裝(需要 Node.js 與 npx)。需要 Google AI Studio 的 Gemini API 金鑰,透過環境變數 GEMINI_API_KEY 提供。可選環境變數 OUTPUT_DIR 指定影像儲存位置(預設 ./output)。需要連線至 Google Gemini 的網路存取。
安裝前請注意
需要存放在 GEMINI_API_KEY 的 Gemini API 金鑰,請避免寫入共用設定檔。影像提示與參考圖會傳送給 Google Gemini,啟用搜尋接地時查詢會傳送給 Google 搜尋。產生影像可能產生 API 使用費用。伺服器會將產生的影像與快取的藍圖寫入輸出目錄。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Gemini Image Studio,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

gemini-image-studio-mcp

MCP server for AI image generation and editing with Google Gemini. Create web assets, ad creatives, and brand visuals — with structured JSON editing for precise, repeatable control.

[npm version] [License: MIT]

What Makes This Different

Most Gemini image MCP servers are basic text-to-image wrappers. This one adds a structured editing pipeline:

  1. Generate an image from text or JSON prompts
  2. Decompose it into a structured JSON blueprint (every visual component mapped)
  3. Edit by changing specific fields — subject[0].hair.color: "platinum_blonde" — and regenerating

This means precise, isolated changes without affecting the rest of the image. Change a hair color without touching the background. Swap clothing without altering the pose. All through dot-notation JSON paths.

Features

  • 5 MCP Tools — generate, decompose, edit, presets, list
  • Structured JSON Editing — decompose images into blueprints, edit specific fields with dot-notation
  • Natural Language Editing — or just describe the change in plain English
  • 10 Built-in Presets — Facebook ads, Instagram stories, hero images, OG images, YouTube thumbnails, and more
  • Reference Image Support — up to 14 reference images for character/object consistency
  • Dual Model Support — Gemini 3.1 Flash (fast) or Gemini 3 Pro (best quality)
  • Blueprint Caching — decomposed blueprints cached alongside images for instant re-edits
  • Google Search Grounding — real-world accuracy via web search
  • Smart Error Handling — retry on rate limits, clear safety block messages, file size warnings

Quick Start

1. Get a Gemini API Key

Get one free at Google AI Studio.

2. Install

bash
npm install -g gemini-image-studio-mcp

3. Add to Claude Code

bash
claude mcp add gemini-image-studio-mcp -e GEMINI_API_KEY=your-key-here -- gemini-image-studio-mcp

Or add to your project's .claude/mcp.json:

json
{  "mcpServers": {    "gemini-image-studio-mcp": {      "command": "npx",      "args": ["-y", "gemini-image-studio-mcp"],      "env": {        "GEMINI_API_KEY": "your-key-here"      }    }  }}

4. Use It

Ask Claude to generate images:

"Create a Facebook ad for a coffee shop with warm lighting"

"Generate a hero image for a tech startup landing page"

"Edit the hero image — change the background to a sunset beach"

Tools

generate_image

Create a new image from text or structured JSON prompts.

ParameterTypeRequiredDescription
promptstringYesText description or JSON prompt
prompt_format"text" | "json"NoPrompt format (default: "text")
presetstringNoAsset preset (e.g., "facebook_ad", "hero_image")
aspect_ratiostringNoOverride ratio ("1:1", "16:9", "9:16", etc.)
image_size"1K" | "2K" | "4K"NoResolution (default: "1K")
model"flash" | "pro"NoGemini model (default: "flash")
reference_imagesstring[]NoPaths to reference images for consistency
output_namestringNoCustom filename
enable_search_groundingbooleanNoUse Google Search for accuracy

decompose_image

Analyze an image into a structured JSON blueprint — the first step of the edit workflow.

ParameterTypeRequiredDescription
image_pathstringYesPath to the image
detail_level"basic" | "detailed" | "exhaustive"NoGranularity (default: "detailed")

Returns a full blueprint with subject, scene, technical, composition, text_rendering, style_modifiers, and meta sections — each field precisely describing the image's visual components.

edit_image

Edit an image using JSON changes or natural language.

ParameterTypeRequiredDescription
image_pathstringYesPath to the image
edit_type"json" | "natural_language"YesEdit mode
changesobjectFor JSON editsDot-notation paths to change
instructionstringFor NL editsNatural language instruction
blueprintobjectNoBlueprint (auto-loaded from cache if omitted)
model"flash" | "pro"NoModel (default: "flash")
output_namestringNoCustom filename

JSON edit example — change hair color and add sunglasses:

json
{  "image_path": "/output/portrait.png",  "edit_type": "json",  "changes": {    "subject[0].hair.color": "platinum_blonde",    "subject[0].accessories": [      { "item": "sunglasses", "material": "metal", "color": "#C0C0C0" }    ]  }}

Natural language edit example:

json
{  "image_path": "/output/portrait.png",  "edit_type": "natural_language",  "instruction": "Change the background to a tropical beach at sunset. Keep the person exactly the same."}

get_presets

List available asset presets with dimensions, tips, and conventions.

ParameterTypeRequiredDescription
category"ad" | "web" | "social" | "all"NoFilter (default: "all")

list_generated

Browse previously generated images.

ParameterTypeRequiredDescription
filterstringNoSearch by filename
limitnumberNoMax results (default: 20)
include_blueprintsbooleanNoInclude cached blueprints

JSON Editing Workflow

The key differentiator — precise, field-level image editing:

Step 1: Generate  generate_image(prompt: "Professional headshot, navy blazer", preset: "linkedin_post")  → /output/headshot.png
Step 2: Decompose  decompose_image(image_path: "/output/headshot.png")  → JSON blueprint with every visual component mapped
Step 3: Edit (precise)  edit_image(    image_path: "/output/headshot.png",    edit_type: "json",    changes: {      "subject[0].clothing[0].color": "#8B0000",      "scene.lighting.type": "studio_softbox"    }  )  → /output/headshot-edit-1.png (blazer changed to dark red, lighting adjusted)
Step 4: Edit (creative)  edit_image(    image_path: "/output/headshot-edit-1.png",    edit_type: "natural_language",    instruction: "Add warm bokeh to the background"  )  → /output/headshot-edit-1-edit-1.png

Dot-Notation Paths

subject[0].hair.color          → Hair colorsubject[0].hair.style          → Hair stylesubject[0].clothing[0].color   → First clothing item colorsubject[0].accessories         → Add/change accessoriesscene.lighting.type            → Lighting typescene.location                 → Location/backgroundtext_rendering.text_content    → Text in imagetechnical.lens                 → Camera lenscomposition.framing            → Shot framingstyle_modifiers.aesthetic      → Aesthetic style

Built-in Presets

PresetCategoryAspect RatioDimensionsBest For
facebook_adAd1:11080x1080Facebook/Instagram feed ads
instagram_story_adAd9:161080x1920Instagram/Facebook story ads
google_display_bannerAd16:91200x628Google Display Network
hero_imageWeb21:92560x1080Above-the-fold hero sections
og_imageWeb16:91200x630Social share / link previews
product_cardWeb4:5800x1000E-commerce product grids
email_headerWeb3:1600x200Email marketing headers
linkedin_postSocial1:11080x1080LinkedIn feed posts
twitter_postSocial16:91200x675Twitter/X posts
youtube_thumbnailSocial16:91280x720YouTube thumbnails

Configuration

VariableRequiredDefaultDescription
GEMINI_API_KEYYes—Google AI Studio API key
OUTPUT_DIRNo./outputWhere generated images are saved

Integration

Claude Code

bash
claude mcp add gemini-image-studio-mcp -e GEMINI_API_KEY=your-key -- gemini-image-studio-mcp

Cursor

Add to .cursor/mcp.json:

json
{  "mcpServers": {    "gemini-image-studio-mcp": {      "command": "npx",      "args": ["-y", "gemini-image-studio-mcp"],      "env": {        "GEMINI_API_KEY": "your-key-here"      }    }  }}

Any MCP Client

bash
GEMINI_API_KEY=your-key npx gemini-image-studio-mcp

The server communicates over stdio using the Model Context Protocol.

MCP Prompt & Resource

This server also exposes:

  • Prompt: nano_banana_expert — invoke this to give Claude full knowledge of the JSON schema, editing best practices, and asset creation guidelines
  • Resource: nanobanana://schema/prompt — the raw JSON schema with all enum values for programmatic access

Models

ModelIDBest For
Flash (default)gemini-3.1-flash-image-previewFast generation, high volume, cost-effective
Progemini-3-pro-image-previewBest quality, complex scenes, professional assets

Contributing

Contributions welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Run tests (npm test)
  4. Commit your changes
  5. Push and open a PR

License

MIT

來源:README.md,提交 ef13138

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.2最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分