使用说明
mcp成像仪
一种模型上下文协议(MCP)服务器,使用多个提供者提供AI图像生成功能。该服务器使像克劳德这样的人工智能助手能够通过标准化的界面生成图像。
特性
- 多个供应商:支持OpenAI GPT映像和Google Imagen 4映像生成
- 统一接口:抽象提供者差异的单个API
- 灵活配置:通过环境变量轻松选择提供商
- 多种输出格式:PNG、JPEG和WebP支持
- 可配置尺寸:小(1024x1024)、中(1024x1022)和大(1536x1024)选项
- 批量生成:在单个请求中生成多达10张图像
- 错误处理:针对瞬态故障的全面错误处理和重试逻辑
安装
先决条件
- Node.js 18.0.0或更高版本
- npm或其他包管理器
通过npx安装(推荐)
无需安装-直接运行即可:
npx mcp-imager
从源代码安装
# Clone the repository
git clone https://github.com/bannsec/mcp-imager.git
cd mcp-imager
# Install dependencies
npm install
# Build the project
npm run build
配置
环境变量
创建一个 .env 直接文件或设置环境变量:
| 变量 | 描述 | 必填 |
|---|---|---|
OPENAI_API_KEY |
GPT图像模型的OpenAI API密钥 | 至少需要一个提供程序密钥 |
GOOGLE_API_KEY |
Imagen模型的Google AI API密钥 | 至少需要一个提供商密钥 |
GEMINI_API_KEY |
替代方案 GOOGLE_API_KEY |
至少需要一个提供者密钥 |
DEFAULT_PROVIDER |
默认提供程序(google 或 openai) |
否(默认为 google) |
获取API密钥
- OpenAI:在获取API密钥 https://platform.openai.com/api-keys
- 谷歌人工智能:在获取API密钥 https://aistudio.google.com/apikey
示例.env文件
# Copy from .env.example and fill in your keys
OPENAI_API_KEY=sk-your-openai-api-key-here
GOOGLE_API_KEY=your-google-api-key-here
DEFAULT_PROVIDER=openai
Claude代码配置
要使用Claude Code,请使用以下方法之一添加MCP服务器:
选项1:Claude CLI(推荐)
# Add with environment variables (user scope - available across all projects)
claude mcp add --transport stdio --scope user \
--env OPENAI_API_KEY=sk-your-openai-api-key \
--env GOOGLE_API_KEY=your-google-api-key \
mcp-imager -- npx -y mcp-imager
# Or for project-local scope (default)
claude mcp add --transport stdio \
--env OPENAI_API_KEY=sk-your-openai-api-key \
--env GOOGLE_API_KEY=your-google-api-key \
mcp-imager -- npx -y mcp-imager
您可以使用以下命令管理服务器:
# List all configured MCP servers
claude mcp list
# Get details for the mcp-imager server
claude mcp get mcp-imager
# Remove the server
claude mcp remove mcp-imager
选项2:全局配置(~/.claude/claude_code_config.json)
{
"mcpServers": {
"mcp-imager": {
"command": "npx",
"args": ["-y", "mcp-imager"],
"env": {
"OPENAI_API_KEY": "sk-your-openai-api-key",
"GOOGLE_API_KEY": "your-google-api-key",
"DEFAULT_PROVIDER": "openai"
}
}
}
}
选项3:项目配置(项目根目录中的.mcp.json)
{
"mcpServers": {
"mcp-imager": {
"command": "npx",
"args": ["-y", "mcp-imager"],
"env": {
"OPENAI_API_KEY": "${OPENAI_API_KEY}",
"GOOGLE_API_KEY": "${GOOGLE_API_KEY}"
}
}
}
}
其他MCP客户端
服务器使用STDIO传输,并与任何MCP客户端兼容。从以下内容开始:
node dist/index.js
或者使用开发模式:
npm run dev
可用工具
1. generate_image
使用AI提供商生成图像。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
prompt |
string | 是 | 要生成的图像的文本描述 |
provider |
"google" |
"openai" |
无 |
size |
"small" |
"medium" |
"large" |
numberOfImages |
number(1-10) | 否 | 要生成的图像数量(默认值:1) |
format |
"png" |
"jpeg" |
"webp" |
aspectRatio |
"1:1" |
"16:9" |
"9:16" |
尺寸:
small:1024x1024像素medium:1024x1024像素large:1536x1024像素
示例用法(在Claude Code或MCP客户端中):
Generate an image of a sunset over mountains
Generate 3 large JPEG images of a futuristic city using OpenAI
2. list_providers
列出所有可用的映像生成提供程序及其配置状态。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
detailed |
boolean | 否 | 返回详细的提供者信息(默认值:false) |
输出示例:
- Google Imagen 4 (google): Ready
- OpenAI GPT Image (openai): Ready
Default provider: google
3. get_provider_info
获取有关特定图像生成提供程序的详细信息。
参数:
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
provider |
"google" |
"openai" |
是 |
输出示例:
{
"id": "openai",
"name": "OpenAI GPT Image",
"model": "gpt-image-1",
"description": "Generate images using OpenAI's gpt-image-1 model with high quality and creative capabilities",
"supportedSizes": ["small", "medium", "large"],
"supportedFormats": ["png", "jpeg", "webp"],
"maxPromptLength": 32000
}
4. ping
用于验证MCP服务器是否正在运行和响应的测试工具。
输出示例:
mcp-imager v1.0.0 is running
支持的提供商
OpenAI GPT映像
- 模型:
gpt-image-1 - 最大提示长度:32000个字符
- 支持的格式:PNG、JPEG、WebP
- 特性:高质量、有创意的图像生成,并提供修订后的即时支持
谷歌图像4
- 模型:
imagen-4.0-generate-001 - 最大提示长度:480个字符
- 支持的格式:PNG、JPEG、WebP
- 特性:高质量图像生成,支持宽高比
错误处理
服务器处理各种错误情况:
- 速率限制:使用指数回退自动重试
- 网络错误:可通过可配置的超时重试
- 违反内容策略:清除被阻止内容的错误消息
- 身份验证错误:有关无效API密钥的帮助消息
- 无效提示:验证空白或过长的提示
发展
运行测试
# Run all tests
npm test
# Run tests in watch mode
npm run test:watch
项目结构
mcp-imager/
├── src/
│ ├── index.ts # Main MCP server entry point
│ ├── config/ # Configuration management
│ ├── providers/ # Provider implementations
│ │ ├── openai.ts # OpenAI provider client
│ │ ├── google.ts # Google Imagen provider client
│ │ └── index.ts # Provider factory
│ ├── handlers/ # Tool handlers
│ ├── errors/ # Error types and handling
│ └── types/ # TypeScript type definitions
├── dist/ # Compiled JavaScript (after build)
├── package.json
├── tsconfig.json
└── README.md
建筑物
npm run build
许可证
麻省理工学院
贡献
欢迎投稿!请随时提交Pull Request github/bannsec/mcp-imager.