openai-gpt-image-mcp
An MCP server that enables image generation and editing using OpenAI's DALL-E models with support for text prompts, inpainting, and outpainting. It includes advanced features like automatic aspect ratio mapping and intelligent file management to handle large image payloads.
README
openai-gpt-image-mcp
<p align="center"> <a href="https://www.npmjs.com/package/openai-gpt-image-mcp-199bio"><img src="https://img.shields.io/npm/v/openai-gpt-image-mcp-199bio?label=npm&color=blue" alt="NPM version"></a> <a href="https://www.npmjs.com/package/@modelcontextprotocol/sdk"><img src="https://img.shields.io/npm/v/@modelcontextprotocol/sdk?label=MCP%20SDK&color=blue" alt="MCP SDK"></a> <a href="https://www.npmjs.com/package/openai"><img src="https://img.shields.io/npm/v/openai?label=OpenAI%20SDK&color=blueviolet" alt="OpenAI SDK"></a> <a href="https://github.com/199-biotechnologies/openai-gpt-image-mcp/blob/main/LICENSE"><img src="https://img.shields.io/github/license/199-biotechnologies/openai-gpt-image-mcp?color=brightgreen" alt="License"></a> <a href="https://github.com/199-biotechnologies/openai-gpt-image-mcp/stargazers"><img src="https://img.shields.io/github/stars/199-biotechnologies/openai-gpt-image-mcp?style=social" alt="GitHub stars"></a> </p>
A Model Context Protocol (MCP) tool server for OpenAI's GPT-4o/gpt-image-1 image generation and editing APIs.
- Generate images from text prompts using OpenAI's latest models.
- Edit images (inpainting, outpainting, compositing) with advanced prompt control.
- Supports: Claude Desktop, Cursor, VSCode, Windsurf, and any MCP-compatible client.
✨ Features
- create-image: Generate images from a prompt, with advanced options (size, quality, background, etc).
- edit-image: Edit or extend images using a prompt and optional mask, supporting both file paths and base64 input.
- Aspect Ratio Support: Use common aspect ratios like 16:9, 9:16, 1:1, landscape, portrait, etc., which automatically map to supported sizes.
- File output: Save generated images directly to disk, or receive as base64.
- AI-Generated Filenames: The AI can provide descriptive filenames like "cat-playing-football.jpg" based on the image content.
🚀 Installation
Quick Setup with NPX (Recommended)
No installation needed! Use directly with npx:
{
"mcpServers": {
"openai-gpt-image": {
"command": "npx",
"args": ["openai-gpt-image-mcp-199bio"],
"env": {
"OPENAI_API_KEY": "sk-..."
}
}
}
}
Manual Installation
npm install -g openai-gpt-image-mcp-199bio
Or build from source:
git clone https://github.com/199-biotechnologies/openai-gpt-image-mcp.git
cd openai-gpt-image-mcp
yarn install
yarn build
🔑 Configuration
The configuration shown above in the Quick Setup section works for all MCP-compatible clients:
- Claude Desktop
- VSCode
- Cursor
- Windsurf
Just add the configuration to your MCP client's config file with your OpenAI API key.
⚡ Advanced
Aspect Ratio Support
The tools now support common aspect ratios that automatically map to OpenAI's supported sizes:
- Square:
1:1,square,4:3,3:4→ 1024x1024 - Landscape:
16:9,landscape,3:2→ 1536x1024 - Portrait:
9:16,portrait,2:3→ 1024x1536 - Auto:
auto→ Let OpenAI choose the best size
Example: Instead of specifying size: "1536x1024", you can use size: "16:9" or size: "landscape".
Other Options
- For
create-image, setnto generate up to 10 images at once. - For
edit-image, provide a mask image (file path or base64) to control where edits are applied. - See
src/index.tsfor all options.
🧑💻 Development
- TypeScript source:
src/index.ts - Build:
yarn build - Run:
node dist/index.js
📝 License
MIT
🩺 Troubleshooting
- Make sure your
OPENAI_API_KEYis valid and has image API access. - You must have a verified OpenAI organization. After verifying, it can take 15–20 minutes for image API access to activate.
- File paths must be absolute.
- Unix/macOS/Linux: Starting with
/(e.g.,/path/to/image.png) - Windows: Drive letter followed by
:(e.g.,C:/path/to/image.pngorC:\path\to\image.png)
- Unix/macOS/Linux: Starting with
- For file output, ensure the directory is writable.
- If you see errors about file types, check your image file extensions and formats.
⚠️ Limitations & Large File Handling
- 1MB Payload Limit: MCP clients (including Claude Desktop) have a hard 1MB limit for tool responses. Large images (especially high-res or multiple images) can easily exceed this limit if returned as base64.
- Auto-Switch to File Output: If the total image size exceeds 1MB, the tool will automatically save images to disk and return the file path(s) instead of base64. This ensures compatibility and prevents errors like
result exceeds maximum length of 1048576. - Default File Location:
- macOS/Linux: Images are saved to
~/Pictures/gpt-image/by default - Fallback: If the default directory cannot be created, images will be saved to
/tmp(or the directory set by theMCP_HF_WORK_DIRenvironment variable) - Custom Path: You can always specify a custom
file_outputpath to override the default
- macOS/Linux: Images are saved to
- AI-Generated Filenames:
- The AI can provide descriptive filenames through the
filenameparameter (e.g., "cat-playing-football", "sunset-over-mountains") - Filenames are automatically sanitized to prevent security issues
- If multiple images are generated, an index is appended (e.g., "cat-playing-football_1.jpg", "cat-playing-football_2.jpg")
- The AI can provide descriptive filenames through the
- Environment Variable:
MCP_HF_WORK_DIR: Set this to control the fallback directory for large images and file outputs. Example:export MCP_HF_WORK_DIR=/your/desired/dir
- Best Practice: For large or production images, always use file output and ensure your client is configured to handle file paths.
📚 References
🙏 Credits
- Built with @modelcontextprotocol/sdk
- Uses openai Node.js SDK
- Built by SureScale.ai
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。