OpenAI Image Generation
Generate and edit images using OpenAI's DALL-E models via the official Python SDK.
OpenAI Image Generation MCP Server
This project implements an MCP (Model Context Protocol) server that provides tools for generating and editing images using OpenAI's gpt-image-1 model via the official Python SDK.
Features
This MCP server provides the following tools:
-
generate_image: Generates an image using OpenAI'sgpt-image-1model based on a text prompt and saves it.- Input Schema:
{ "type": "object", "properties": { "prompt": { "type": "string", "description": "The text description of the desired image(s)." }, "model": { "type": "string", "default": "gpt-image-1", "description": "The model to use (currently 'gpt-image-1')." }, "n": { "type": ["integer", "null"], "default": 1, "description": "The number of images to generate (Default: 1)." }, "size": { "type": ["string", "null"], "enum": ["1024x1024", "1536x1024", "1024x1536", "auto"], "default": "auto", "description": "Image dimensions ('1024x1024', '1536x1024', '1024x1536', 'auto'). Default: 'auto'." }, "quality": { "type": ["string", "null"], "enum": ["low", "medium", "high", "auto"], "default": "auto", "description": "Rendering quality ('low', 'medium', 'high', 'auto'). Default: 'auto'." }, "user": { "type": ["string", "null"], "default": null, "description": "An optional unique identifier representing your end-user." }, "save_filename": { "type": ["string", "null"], "default": null, "description": "Optional filename (without extension). If None, a default name based on the prompt and timestamp is used." } }, "required": ["prompt"] } - Output:
{"status": "success", "saved_path": "path/to/image.png"}or error dictionary.
- Input Schema:
-
edit_image: Edits an image or creates variations using OpenAI'sgpt-image-1model and saves it. Can use multiple input images as reference or perform inpainting with a mask.- Input Schema:
{ "type": "object", "properties": { "prompt": { "type": "string", "description": "The text description of the desired final image or edit." }, "image_paths": { "type": "array", "items": { "type": "string" }, "description": "A list of file paths to the input image(s). Must be PNG. < 25MB." }, "mask_path": { "type": ["string", "null"], "default": null, "description": "Optional file path to the mask image (PNG with alpha channel) for inpainting. Must be same size as input image(s). < 25MB." }, "model": { "type": "string", "default": "gpt-image-1", "description": "The model to use (currently 'gpt-image-1')." }, "n": { "type": ["integer", "null"], "default": 1, "description": "The number of images to generate (Default: 1)." }, "size": { "type": ["string", "null"], "enum": ["1024x1024", "1536x1024", "1024x1536", "auto"], "default": "auto", "description": "Image dimensions ('1024x1024', '1536x1024', '1024x1536', 'auto'). Default: 'auto'." }, "quality": { "type": ["string", "null"], "enum": ["low", "medium", "high", "auto"], "default": "auto", "description": "Rendering quality ('low', 'medium', 'high', 'auto'). Default: 'auto'." }, "user": { "type": ["string", "null"], "default": null, "description": "An optional unique identifier representing your end-user." }, "save_filename": { "type": ["string", "null"], "default": null, "description": "Optional filename (without extension). If None, a default name based on the prompt and timestamp is used." } }, "required": ["prompt", "image_paths"] } - Output:
{"status": "success", "saved_path": "path/to/image.png"}or error dictionary.
- Input Schema:
Prerequisites
- Python (3.8 or later recommended)
- pip (Python package installer)
- An OpenAI API Key (set directly in the script or via the
OPENAI_API_KEYenvironment variable - using environment variables is strongly recommended for security). - An MCP client environment (like the one used by Cline) capable of managing and launching MCP servers.
Installation
- Clone the repository:
git clone https://github.com/IncomeStreamSurfer/chatgpt-native-image-gen-mcp.git cd chatgpt-native-image-gen-mcp - Set up a virtual environment (Recommended):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` - Install dependencies:
pip install -r requirements.txt - (Optional but Recommended) Set Environment Variable:
Set the
OPENAI_API_KEYenvironment variable with your OpenAI key instead of hardcoding it in the script. How you set this depends on your operating system.
Configuration (for Cline MCP Client)
To make this server available to your AI assistant (like Cline), add its configuration to your MCP settings file (e.g., cline_mcp_settings.json).
Find the mcpServers object in your settings file and add the following entry:
{
"mcpServers": {
// ... other server configurations ...
"openai-image-gen-mcp": {
"autoApprove": [
"generate_image",
"edit_image"
],
"disabled": false,
"timeout": 180, // Increased timeout for potentially long image generation
"command": "python", // Or path to python executable if not in PATH
"args": [
// IMPORTANT: Replace this path with the actual absolute path
// to the openai_image_mcp.py file on your system
"C:/path/to/your/cloned/repo/chatgpt-native-image-gen-mcp/openai_image_mcp.py"
],
"env": {
// If using environment variables for the API key:
// "OPENAI_API_KEY": "YOUR_API_KEY_HERE"
},
"transportType": "stdio"
}
// ... other server configurations ...
}
}
Important: Replace C:/path/to/your/cloned/repo/ with the correct absolute path to where you cloned this repository on your machine. Ensure the path separator is correct for your operating system (e.g., use backslashes \ on Windows). If you set the API key via environment variable, you can remove it from the script and potentially add it to the env section here if your MCP client supports it.
Running the Server
You don't typically need to run the server manually. The MCP client (like Cline) will automatically start the server using the command and args specified in the configuration file when one of its tools is called for the first time.
If you want to test it manually (ensure dependencies are installed and API key is available):
python openai_image_mcp.py
Usage
The AI assistant interacts with the server using the generate_image and edit_image tools. Images are saved within an ai-images subdirectory created where the openai_image_mcp.py script is located. The tools return the absolute path to the saved image upon success.
相關伺服器
Alpha Vantage MCP Server
贊助Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Gemini Image MCP Server
Image generation using Google's Gemini API.
Juniper Junos MCP Server
An MCP server for interacting with Juniper Junos network devices using LLMs.
Hetzner Cloud MCP Server — (Cloud API + SSH)
Hetzner Cloud MCP Server — two management layers (Cloud API + SSH) with 60 tools. Manage server power, snapshots, firewalls, DNS, plus SSH into servers for service control, log viewing, Nginx management, MySQL queries, and system monitoring. Self-hosted PHP, MIT licensed.
Steadybit
Interact with the Steadybit platform to run chaos engineering experiments.
Kitsune MCP
Shape-shifting MCP hub — shapeshift() into 10,000+ servers at runtime. One entry point, no restarts, 7 registries.
Open MCP Server
A service framework supporting the Model Context Protocol (MCP) to integrate enterprise systems and AI platforms via RESTful, gRPC, and Dubbo protocols.
MCP Chart Server
Create real-time TradingView chart visualizations using the Chart-IMG API.
WordPress MCP Server
An MCP server for integrating with and managing WordPress sites.
ProjectFlow
A workflow management system for AI-assisted development with MCP support, featuring flexible storage via file system or PostgreSQL.
Floom
Deploy Python functions as web apps. Type hints become UI, API, and shareable links. 32 MCP tools for deploy, run, storage, secrets, scheduling, versioning, and sharing.