mcpField
G
Gemini Image Generator MCP Server

Gemini Image Generator MCP Server

本地服务
github.com/qhdrl12AI 与智能体3432 周前更新

关于 Gemini Image Generator MCP Server

Gemini Image Generator MCP Server 是一个 MCP 服务,基于 Google Gemini Flash 模型,通过文本提示词生成图像,并支持对已有图像进行变换。它面向需要在 MCP 客户端中直接生成和管理图像的用户。

主要功能

  1. 01基于 Gemini 2.0 Flash 的文本生成图像
  2. 02基于提示词的图像变换
  3. 03支持文件路径与 base64 编码图像输入
  4. 04根据提示词自动生成文件名
  5. 05图像数据与保存路径双重返回

适用场景

  1. 01在 AI 助手中根据文字描述生成插图
  2. 02对本地已有图像添加或修改内容
  3. 03将生成的图像保存到指定输出目录

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 generate_image_from_text、transform_image_from_encoded 和 transform_image_from_file 三个工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"gemini-image-generator": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP Badge smithery badge

Gemini 图像生成器 MCP 服务

Gemini 图像生成器 MCP 服务

通过 MCP 协议使用 Google 的 Gemini 模型,根据文本提示词生成高质量图像。

概述

此 MCP 服务允许任何 AI 助手使用 Google 的 Gemini AI 模型生成图像。该服务可处理提示词工程、文本转图像、文件名生成和本地图像存储,让你能够通过任何 MCP 客户端轻松创建和管理 AI 生成的图像。

功能

  • 使用 Gemini 2.0 Flash 进行文本转图像生成
  • 根据文本提示词进行图像到图像转换
  • 支持基于文件和 Base64 编码的图像
  • 根据提示词自动智能生成文件名
  • 自动翻译非英语提示词
  • 支持配置输出路径的本地图像存储
  • 严格排除生成图像中的文本
  • 输出高分辨率图像
  • 可直接访问图像数据和文件路径

可用的 MCP 工具

该服务为 AI 助手提供以下 MCP 工具:

1. generate_image_from_text

根据文本提示词描述创建新图像。

generate_image_from_text(prompt: str) -> Tuple[bytes, str]

参数:

  • prompt:对要生成图像的文本描述

返回值:

  • 一个包含以下内容的元组:
    • 原始图像数据(字节)
    • 已保存图像文件的路径(str)

这种双重返回格式允许 AI 助手直接处理图像数据,或引用已保存的文件路径。

示例:

  • “生成一张山上日落的图像”
  • “在科幻城市中创作一只写实风格的飞猪”
输出示例

此图像根据以下提示词生成:

"Hi, can you create a 3d rendered image of a pig with wings and a top hat flying over a happy futuristic scifi city with lots of greenery?"

飞越科幻城市的猪

一只带翅膀、戴着礼帽的 3D 渲染猪,飞越一座绿意盎然的未来科幻城市

已知问题

将此 MCP 服务与 Claude Desktop Host 搭配使用时:

  1. 性能问题:与其他方法相比,使用 transform_image_from_encoded 处理所需时间可能会长得多。这是因为通过 MCP 协议传输大型 Base64 编码图像数据会产生额外开销。

  2. 路径解析问题:使用 Claude Desktop Host 时,可能无法正确解析图像路径。宿主应用程序可能无法正确解析返回的文件路径,因此难以访问生成的图像。

为获得最佳体验,请考虑使用其他 MCP 客户端,或尽可能使用 transform_image_from_file 方法。

2. transform_image_from_encoded

使用 Base64 编码的图像数据,根据文本提示词转换现有图像。

transform_image_from_encoded(encoded_image: str, prompt: str) -> Tuple[bytes, str]

参数:

  • encoded_image:带有格式标头的 Base64 编码图像数据(格式必须为:“data:image/[format];base64,[data]”)
  • prompt:对要如何转换图像的文本描述

返回值:

  • 一个包含以下内容的元组:
    • 转换后的原始图像数据(字节)
    • 已保存转换后图像文件的路径(str)

示例:

  • “给这片风景添加雪”
  • “将背景换成海滩”
3. transform_image_from_file

根据文本提示词转换现有图像文件。

transform_image_from_file(image_file_path: str, prompt: str) -> Tuple[bytes, str]

参数:

  • image_file_path:要转换的图像文件的路径
  • prompt:描述你想如何转换图像的文本

返回值:

  • 一个元组,包含:
    • 转换后的原始图像数据(字节)
    • 转换后图像文件的保存路径(字符串)

示例:

  • “在这张图中的人物旁边添加一只美洲驼”
  • “把这个白天场景改成夜景”
转换示例

我们使用上文生成的飞猪图像,并根据以下提示词进行了转换:

"Add a cute baby whale flying alongside the pig"

转换前: 飞猪飞越科幻城市

转换后: 飞猪和小鲸鱼

原始飞猪图像,添加了一只可爱的小鲸鱼与它并肩飞行

设置

前置条件
  • Python 3.11+
  • Google AI API 密钥(Gemini)
  • MCP 主机应用程序(Claude Desktop App、Cursor 或其他兼容 MCP 的客户端)
获取 Gemini API 密钥
  1. 访问 Google AI Studio API Keys page
  2. 使用你的 Google 账号登录
  3. 点击“Create API Key”
  4. 复制新 API 密钥,以便在配置中使用
  5. 注意:API 密钥每月提供一定额度的免费使用量。你可以在 Google AI Studio 中查看使用情况
安装
通过 Smithery 安装

如需通过 Smithery 自动为 Claude Desktop 安装 Gemini Image Generator MCP:

npx -y @smithery/cli install @qhdrl12/mcp-server-gemini-image-gen --client claude
手动安装
  1. 克隆仓库:
git clone https://github.com/your-username/mcp-server-gemini-image-generator.git
cd mcp-server-gemini-image-generator
  1. 创建虚拟环境并安装依赖项:
# Using uv (recommended)
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e .

# Or using regular venv
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .
  1. 设置环境变量(选择一种方式):

方式 A:使用 .env 文件(可选)

# Create .env file in the project root
cat > .env << 'EOF'
GEMINI_API_KEY=your-gemini-api-key-here
OUTPUT_IMAGE_PATH=/path/to/save/images
EOF

方式 B:直接在 Claude Desktop 配置中设置(推荐)

  • 在 claude_desktop_config.json 中直接设置环境变量(见下方配置部分)
配置 Claude Desktop

将以下内容添加到 claude_desktop_config.json:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
    "mcpServers": {
        "gemini-image-generator": {
            "command": "uv",
            "args": [
                "--directory",
                "/absolute/path/to/mcp-server-gemini-image-generator",
                "run",
                "mcp-server-gemini-image-generator"
            ],
            "env": {
                "GEMINI_API_KEY": "your-actual-gemini-api-key-here",
                "OUTPUT_IMAGE_PATH": "/absolute/path/to/your/images/directory"
            }
        }
    }
}

重要配置说明:

  1. 将路径替换为实际路径:

    • 将 /absolute/path/to/mcp-server-gemini-image-generator 替换为你克隆此仓库的实际位置
    • 将 /absolute/path/to/your/images/directory 替换为你希望保存生成图像的位置
  2. 环境变量:

    • 将 your-actual-gemini-api-key-here 替换为你从 Google AI Studio 获取的真实 Gemini API 密钥
    • 为 OUTPUT_IMAGE_PATH 使用绝对路径,以确保图像正确保存
  3. 实际路径示例:

{
    "mcpServers": {
        "gemini-image-generator": {
            "command": "uv",
            "args": [
                "--directory",
                "/Users/username/Projects/mcp-server-gemini-image-generator",
                "run",
                "mcp-server-gemini-image-generator"
            ],
            "env": {
                "GEMINI_API_KEY": "GEMINI_API_KEY",
                "OUTPUT_IMAGE_PATH": "OUTPUT_IMAGE_PATH"
            }
        }
    }
}

使用方法

安装并完成配置后,你可以让 Claude 根据提示词生成或转换图像,例如:

生成新图像
  • “生成一张山间日落的图像”
  • “创作一幅未来城市景观插画”
  • “画一只戴着太阳镜的猫”
转换现有图像
  • “通过在场景中添加雪来转换这张图像”
  • “编辑这张照片,让它看起来像是在夜间拍摄的”
  • “在这张图片的背景中添加一条飞翔的龙”

生成或转换后的图像将保存到你配置的输出路径,并显示在 Claude 中。更新后的返回类型还使 AI 助手能够直接处理图像数据,无需访问已保存的文件。

测试

你可以通过运行 FastMCP 开发服务器来测试应用程序:

fastmcp dev server.py

此命令会启动本地开发服务器,并在 http://localhost:5173/ 提供 MCP Inspector。
MCP Inspector 提供了便捷的网页界面,你可以直接测试图像生成工具,无需使用 Claude 或其他 MCP 客户端。
你可以输入文本提示词、执行工具并立即查看结果,这有助于开发和调试。

许可证

MIT 许可证

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。