Gemini Image Generator MCP Server
镜子 (jìng zi)
MCP-Mirror
README
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
: 您要生成的图像的文本描述
返回值:
- 一个包含以下内容的元组:
- 原始图像数据 (bytes)
- 保存的图像文件的路径 (str)
这种双重返回格式允许 AI 助手直接处理图像数据或引用保存的文件路径。
示例:
- "生成一张山脉日落的图像"
- "创建一个科幻城市中逼真的飞猪"
示例输出
此图像是使用以下提示生成的:
"嗨,你能创建一个 3D 渲染的图像,一只戴着高顶礼帽的猪,长着翅膀,飞过一个快乐的未来科幻城市,那里有很多绿色植物吗?"
一只 3D 渲染的猪,长着翅膀,戴着高顶礼帽,飞过一个充满绿色植物的未来科幻城市
已知问题
将此 MCP 服务器与 Claude Desktop Host 一起使用时:
-
性能问题:与其他方法相比,使用
transform_image_from_encoded
可能需要更长的时间来处理。这是由于通过 MCP 协议传输大量 base64 编码的图像数据所产生的开销。 -
路径解析问题:使用 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
: 您希望如何转换图像的文本描述
返回值:
- 一个包含以下内容的元组:
- 原始转换后的图像数据 (bytes)
- 保存的转换后的图像文件的路径 (str)
示例:
- "给这个风景添加雪"
- "将背景更改为海滩"
3. transform_image_from_file
根据文本提示转换现有图像文件。
transform_image_from_file(image_file_path: str, prompt: str) -> Tuple[bytes, str]
参数:
image_file_path
: 要转换的图像文件的路径prompt
: 您希望如何转换图像的文本描述
返回值:
- 一个包含以下内容的元组:
- 原始转换后的图像数据 (bytes)
- 保存的转换后的图像文件的路径 (str)
示例:
- "在这张图像中的人旁边添加一只美洲驼"
- "使这个白天场景看起来像夜晚"
示例转换
使用上面创建的飞猪图像,我们应用了一个转换,提示如下:
"添加一只可爱的幼鲸,与猪一起飞行"
之前:
之后:
原始的飞猪图像,旁边添加了一只可爱的幼鲸一起飞行
设置
前提条件
- Python 3.11+
- Google AI API 密钥 (Gemini)
- MCP 主机应用程序(Claude Desktop App、Cursor 或其他 MCP 兼容客户端)
获取 Gemini API 密钥
- 访问 Google AI Studio API 密钥页面
- 使用您的 Google 帐户登录
- 点击“创建 API 密钥”
- 复制您的新 API 密钥以用于配置
- 注意:API 密钥每月提供一定的免费使用配额。您可以在 Google AI Studio 中查看您的使用情况
安装
- 克隆存储库:
git clone https://github.com/your-username/gemini-image-generator.git
cd gemini-image-generator
- 创建一个虚拟环境并安装依赖项:
# 使用常规 venv
python -m venv .venv
source .venv/bin/activate
pip install -e .
# 或者使用 uv
uv venv
source .venv/bin/activate
uv pip install -e .
- 复制示例环境文件并添加您的 API 密钥:
cp .env.example .env
- 编辑
.env
文件以包含您的 Google Gemini API 密钥和首选输出路径:
GEMINI_API_KEY="your-gemini-api-key-here"
OUTPUT_IMAGE_PATH="/path/to/save/images"
配置 Claude Desktop
将以下内容添加到您的 claude_desktop_config.json
:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"gemini-image-generator": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/gemini-image-generator",
"run",
"server.py"
],
"env": {
"GEMINI_API_KEY": "GEMINI_API_KEY",
"OUTPUT_IMAGE_PATH": "OUTPUT_IMAGE_PATH"
}
}
}
}
用法
安装和配置完成后,您可以要求 Claude 使用以下提示生成或转换图像:
生成新图像
- "生成一张山脉日落的图像"
- "创建一个未来城市景观的插图"
- "制作一张猫戴着太阳镜的图片"
转换现有图像
- "通过向场景添加雪来转换此图像"
- "编辑这张照片,使其看起来像是在晚上拍摄的"
- "在这张图片的背景中添加一条龙"
生成/转换后的图像将保存到您配置的输出路径并在 Claude 中显示。通过更新的返回类型,AI 助手也可以直接处理图像数据,而无需访问保存的文件。
测试
您可以通过运行 FastMCP 开发服务器来测试应用程序:
fastmcp dev server.py
此命令启动一个本地开发服务器,并使 MCP Inspector 在 http://localhost:5173/ 上可用。 MCP Inspector 提供了一个方便的 Web 界面,您可以在其中直接测试图像生成工具,而无需使用 Claude 或其他 MCP 客户端。 您可以输入文本提示,执行该工具,并立即查看结果,这对于开发和调试很有帮助。
许可证
MIT 许可证
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。