Back to MCP directory
publicPublicdnsLocal runtime

imagegen-mcp

ImageGen MCP Server是一个支持多种AI图像生成模型(包括GPT-Image-1、Google Imagen 4、Flux 1.1等)的MCP服务器,提供灵活的图像生成、尺寸调整和输出格式选项,可无缝集成到各种MCP客户端中。

article

README

🚀 🎨 ImageGen MCP Server

ImageGen MCP Server 是一款强大的 MCP 服务器,支持 OpenAI GPT-Image-1、Google Imagen 4、Flux 1.1、Qwen Image、SeedDream-4 和 Nano Banana(Gemini 2.5 Flash Image)等多种 AI 图像生成模型,为用户提供便捷高效的图像生成服务。

🚀 快速开始

选项 1:从 npm 安装(推荐)

# 全局安装
npm install -g imagegen-mcp-server

# 或者使用 npx(无需安装)
npx imagegen-mcp-server

选项 2:从源代码安装

# 克隆仓库
git clone https://github.com/writingmate/imagegen-mcp.git
cd imagegen-mcp

# 安装依赖
npm install

# 构建项目
npm run build

# 运行服务器
npm start

✨ 主要特性

支持的模型

| 提供商 | 模型 | 关键词 | 亮点 | |----------|--------|----------|-----------| | 🤖 OpenAI | GPT-Image-1, DALL-E 3, DALL-E 2 | gpt-image-1 mcp, openai image gen | 支持最新的 GPT-Image-1 模型,具备背景控制功能 | | 🧠 Nano Banana | Gemini 2.5 Flash Image Preview | nano banana mcp | 通过官方 Google SDK 实现快速图像生成 | | 🎨 Google Imagen | Imagen 4 (自定义端点) | google imagen 4 mcp | 提供先进的逼真图像生成能力 | | ⚡ Replicate | Flux 1.1 Pro, Qwen Image, SeedDream-4 | flux 1.1 mcp, qwen image mcp, seedream-4 mcp | 通过 Replicate 平台集成多个前沿模型 |

核心能力

  • 多输出格式:支持 PNG、JPEG、WebP 等多种图像格式。
  • 灵活的尺寸设置:可自定义图像的尺寸和宽高比。
  • Base64 和文件输出:支持将图像以 Base64 编码形式返回或保存到磁盘。
  • 种子支持:使用 Flux 模型时可实现可重复的图像生成。
  • MCP 兼容:可与任何 MCP 客户端无缝协作。

不同客户端的设置对比

| 客户端 | 是否需要设置 | API 密钥 | 配置方式 | 准备时间 | |--------|---------------|----------|---------------|------------| | WritingMate.ai | ✅ 无需设置 | ✅ 预配置 | ✅ 内置 | 即时可用 | | Claude Desktop | 手动配置 | 需自备 | 编辑 JSON 文件 | ~5 分钟 | | Claude Code CLI | 命令/配置 | 需自备 | 手动设置 | ~5 分钟 | | 其他 MCP 客户端 | 手动设置 | 需自备 | 特定于客户端 | ~5 - 10 分钟 |

📦 安装指南

系统要求

  • Node.js 18+
  • API 密钥:OPENAI_API_KEYGOOGLE_API_KEY 和/或 REPLICATE_API_TOKEN

配置环境

在项目目录下创建一个 .env 文件,并添加以下内容:

# 必需:用于 DALL-E 模型的 OpenAI API 密钥
OPENAI_API_KEY=your-openai-api-key-here

# 必需:用于 Imagen 和 Gemini 的 Google API 密钥
GOOGLE_API_KEY=your-google-api-key-here

# 必需:用于 Flux 模型的 Replicate API 令牌
REPLICATE_API_TOKEN=your-replicate-api-token-here

# 可选:自定义 Google Imagen 端点
GOOGLE_IMAGEN_ENDPOINT=

# 可选:生成图像的输出目录(默认:outputs)
OUTPUT_DIR=outputs

获取 API 密钥

| 提供商 | 获取 API 密钥的方式 | 费用 | |----------|-------------------|------| | OpenAI | 获取 OpenAI API 密钥 | 每张图像约 $0.02 - 0.08 | | Google | 获取 Google API 密钥 | 有免费额度 | | Replicate | 获取 Replicate 令牌 | 每张图像约 $0.003 - 0.01 |

添加到 MCP 客户端

  • 🚀 WritingMate.ai(推荐 - 无需设置!):访问 WritingMate.ai 即可立即开始生成图像,所有提供商已预配置。
  • 🖥️ Claude Desktop:在相应的配置文件中添加以下内容:
{
  "mcpServers": {
    "imagegen": {
      "command": "npx",
      "args": ["imagegen-mcp-server"]
    }
  }
}
  • ⌨️ Claude Code CLI
# 添加到 Claude Code MCP 设置
claude-code config mcp add imagegen npx imagegen-mcp-server

或者手动在设置文件中配置:

{
  "mcpServers": {
    "imagegen": {
      "command": "npx", 
      "args": ["imagegen-mcp-server"]
    }
  }
}
  • 📝 Codeium CLI (Codex):在配置文件中添加:
{
  "mcp_servers": {
    "imagegen": {
      "command": "npx",
      "args": ["imagegen-mcp-server"],
      "env": {}
    }
  }
}
  • 🔧 其他 MCP 客户端:使用命令 npx imagegen-mcp-server,并确保 .env 文件在工作目录中包含 API 密钥。

测试安装

# 测试服务器是否正确启动
npx imagegen-mcp-server

# 或者如果已全局安装
imagegen-mcp-server

💻 使用示例

使用 OpenAI GPT-Image-1 生成图像

const result = await mcpClient.callTool("image.generate.openai", {
  prompt: "A serene mountain landscape at sunset",
  model: "gpt-image-1",
  size: "1536x1024",
  format: "webp",
  background: "transparent",
  quality: "high"
});

使用 Google Gemini 生成图像

const result = await mcpClient.callTool("image.generate.gemini", {
  prompt: "A futuristic city with flying cars",
  returnBase64: true
});

使用 Flux 1.1 生成图像

const result = await mcpClient.callTool("image.generate.replicate", {
  prompt: "A detailed portrait of a robot in a cyberpunk setting",
  model: "black-forest-labs/flux-1.1-pro", // 默认模型
  width: 1024,
  height: 1536,
  seed: 12345,
  format: "png"
});

使用 Qwen Image 生成图像

const result = await mcpClient.callTool("image.generate.replicate", {
  prompt: "A traditional Chinese landscape painting with mountains and rivers",
  model: "qwen/qwen-image",
  width: 1024,
  height: 1024
});

使用 SeedDream-4 生成图像

const result = await mcpClient.callTool("image.generate.replicate", {
  prompt: "A vibrant abstract art piece with flowing colors",
  model: "bytedance/seedream-4",
  width: 1024,
  height: 1024 // 最小尺寸要求为 1024x1024
});

📚 详细文档

可用工具

  • OpenAI GPT-Image-1 MCP (image.generate.openai):使用 OpenAI 最新的 GPT-Image-1 模型和 DALL-E 系列生成图像。
{
  prompt: string;              // 必需:图像描述
  model?: string;              // "dall-e-2", "dall-e-3", "gpt-image-1" (默认)
  size?: string;               // "1024x1024", "1792x1024", "1024x1792" 等
  width?: number;              // 替代 size 的方式
  height?: number;             // 替代 size 的方式
  quality?: "standard" | "hd" | "low" | "medium" | "high" | "auto";
  format?: "png" | "jpeg" | "jpg" | "webp";
  background?: "transparent" | "opaque" | "auto"; // 仅适用于 gpt-image-1
  style?: "vivid" | "natural";  // 仅适用于 DALL-E 3
  returnBase64?: boolean;      // 在响应中包含 Base64 编码的图像
  filenameHint?: string;       // 自定义文件名前缀
}
  • Google Imagen 4 MCP (image.generate.google):通过自定义端点使用 Google 的先进 Imagen 4 模型生成图像。
{
  prompt: string;              // 必需:图像描述
  model?: string;              // 模型名称
  size?: string;               // 图像尺寸
  quality?: string;            // 质量设置
  format?: "png" | "jpeg" | "jpg" | "webp";
  returnBase64?: boolean;
  filenameHint?: string;
}
  • Nano Banana MCP (image.generate.gemini):使用 Google 的 Gemini 2.5 Flash Image Preview 模型生成图像。
{
  prompt: string;              // 必需:图像描述
  model?: string;              // 默认:"gemini-2.5-flash-image-preview"
  returnBase64?: boolean;
  filenameHint?: string;
}
  • Replicate Models MCP (image.generate.replicate):通过 Replicate API 使用多个前沿模型生成图像。
{
  prompt: string;              // 必需:图像描述
  model?: string;              // 默认:"black-forest-labs/flux-1.1-pro"
  width?: number;              // 图像宽度(默认:1024)
  height?: number;             // 图像高度(默认:1024)
  size?: string;               // 替代格式:"1024x1024"
  format?: "png" | "jpeg" | "jpg" | "webp";
  seed?: number;               // 可重复生成的种子值
  returnBase64?: boolean;
  filenameHint?: string;
}

输出格式

所有工具返回的响应格式一致:

{
  content: [
    {
      type: "text",
      text: "provider=openai model=gpt-image-1 saved=/path/to/image.png"
    },
    {
      type: "image",        // 仅当 returnBase64: true 时存在
      data: "base64data",
      mimeType: "image/png"
    }
  ]
}

生成的图像将自动保存到配置的输出目录中,并使用带时间戳的文件名。

发布到 npm

# 更新版本
npm version patch|minor|major

# 发布
npm publish

API 密钥设置

  • OpenAI API 密钥:访问 OpenAI API Keys 创建新的 API 密钥,并添加到 .env 文件中。
  • Google API 密钥:访问 Google AI Studio 创建 API 密钥并启用所需的 API,然后添加到 .env 文件中。
  • Replicate API 令牌:访问 Replicate 注册并创建 API 令牌,添加到 .env 文件中。

开发

npm install    # 安装依赖
npm run dev    # 开发模式,支持热重载
npm run build  # 构建生产版本
npm start      # 启动生产服务器

📄 许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。


💡 由以下团队提供

WritingMate.ai - 一体化 AI 平台

WritingMate.ai 背后的团队为您带来强大的 AI 工具和集成

WritingMate.ai

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client