@cloudwerxlab/gpt-image-1-mcp
A Model Context Protocol (MCP) server for generating and editing images using the OpenAI gpt-image-1
model.
๐ Quick Start
Run this MCP server directly using NPX without installing it. View on npm.
npx -y @cloudwerxlab/gpt-image-1-mcp
The -y
flag automatically answers "yes" to any prompts that might appear during the installation process.
๐ Prerequisites
Node.js (v14 or higher) |
OpenAI API key with access to gpt-image-1 |
๐ Environment Variables
Variable | Required | Description |
---|---|---|
OPENAI_API_KEY |
โ Yes | Your OpenAI API key with access to the gpt-image-1 model |
GPT_IMAGE_OUTPUT_DIR |
โ No | Custom directory for saving generated images (defaults to user's Pictures folder under gpt-image-1 subfolder) |
๐ป Example Usage with NPX
Operating System | Command Line Example |
---|---|
Linux/macOS |
|
Windows (PowerShell) |
|
Windows (Command Prompt) |
|
๐ Integration with MCP Clients
๐ ๏ธ Setting Up in an MCP Client
Step 1: Locate Settings File
|
Step 2: Add ConfigurationAdd the following configuration to the |
{
"mcpServers": {
"gpt-image-1": {
"command": "npx",
"args": [
"-y",
"@cloudwerxlab/gpt-image-1-mcp"
],
"env": {
"OPENAI_API_KEY": "PASTE YOUR OPEN-AI KEY HERE",
"GPT_IMAGE_OUTPUT_DIR": "OPTIONAL: PATH TO SAVE GENERATED IMAGES"
}
}
}
}
Example Configurations for Different Operating Systems
Operating System | Example Configuration |
---|---|
Windows |
|
Linux/macOS |
|
Note: For Windows paths, use double backslashes (
\\
) to escape the backslash character in JSON. For Linux/macOS, use forward slashes (/
).
โจ Features
๐จ Core Tools
|
๐ Key Benefits
|
๐ก Enhanced Capabilities
๐ Output & Formatting
|
โ๏ธ Configuration & Handling
|
๐ How It Works
๐ผ๏ธ Image Generation | โ๏ธ Image Editing |
---|---|
|
|
๐ Output Directory Behavior
๐ Storage Location
|
๐๏ธ File Management
|
Installation & Usage
NPM Package
This package is available on npm: @cloudwerxlab/gpt-image-1-mcp
You can install it globally:
npm install -g @cloudwerxlab/gpt-image-1-mcp
Or run it directly with npx as shown in the Quick Start section.
Tool: create_image
Generates a new image based on a text prompt.
Parameters
Parameter | Type | Required | Description |
---|---|---|---|
prompt |
string | Yes | The text description of the image to generate (max 32,000 chars) |
size |
string | No | Image size: "1024x1024" (default), "1536x1024", or "1024x1536" |
quality |
string | No | Image quality: "high" (default), "medium", or "low" |
n |
integer | No | Number of images to generate (1-10, default: 1) |
background |
string | No | Background style: "transparent", "opaque", or "auto" (default) |
output_format |
string | No | Output format: "png" (default), "jpeg", or "webp" |
output_compression |
integer | No | Compression level (0-100, default: 0) |
user |
string | No | User identifier for OpenAI usage tracking |
moderation |
string | No | Moderation level: "low" or "auto" (default) |
Example
<use_mcp_tool>
<server_name>gpt-image-1</server_name>
<tool_name>create_image</tool_name>
<arguments>
{
"prompt": "A futuristic city skyline at sunset, digital art",
"size": "1024x1024",
"quality": "high",
"n": 1,
"background": "auto"
}
</arguments>
</use_mcp_tool>
Response
The tool returns:
- A formatted text message with details about the generated image(s)
- The image(s) as base64-encoded data
- Metadata including token usage and file paths
Tool: create_image_edit
Edits an existing image based on a text prompt and optional mask.
Parameters
Parameter | Type | Required | Description |
---|---|---|---|
image |
string, object, or array | Yes | The image(s) to edit (base64 string or file path object) |
prompt |
string | Yes | The text description of the desired edit (max 32,000 chars) |
mask |
string or object | No | The mask that defines areas to edit (base64 string or file path object) |
size |
string | No | Image size: "1024x1024" (default), "1536x1024", or "1024x1536" |
quality |
string | No | Image quality: "high" (default), "medium", or "low" |
n |
integer | No | Number of images to generate (1-10, default: 1) |
background |
string | No | Background style: "transparent", "opaque", or "auto" (default) |
user |
string | No | User identifier for OpenAI usage tracking |
Example with Base64 Encoded Image
<use_mcp_tool>
<server_name>gpt-image-1</server_name>
<tool_name>create_image_edit</tool_name>
<arguments>
{
"image": "BASE64_ENCODED_IMAGE_STRING",
"prompt": "Add a small robot in the corner",
"mask": "BASE64_ENCODED_MASK_STRING",
"quality": "high"
}
</arguments>
</use_mcp_tool>
Example with File Path
<use_mcp_tool>
<server_name>gpt-image-1</server_name>
<tool_name>create_image_edit</tool_name>
<arguments>
{
"image": {
"filePath": "C:/path/to/your/image.png"
},
"prompt": "Add a small robot in the corner",
"mask": {
"filePath": "C:/path/to/your/mask.png"
},
"quality": "high"
}
</arguments>
</use_mcp_tool>
Response
The tool returns:
- A formatted text message with details about the edited image(s)
- The edited image(s) as base64-encoded data
- Metadata including token usage and file paths
๐ง Troubleshooting
๐จ Common Issues
Issue | Solution |
---|---|
๐ผ๏ธ MIME Type ErrorsErrors related to image format or MIME type handling |
Ensure image files have the correct extension (.png, .jpg, etc.) that matches their actual format. The server uses file extensions to determine MIME types. |
๐ API Key IssuesAuthentication errors with OpenAI API |
Verify your OpenAI API key is correct and has access to the gpt-image-1 model. Check for any spaces or special characters that might have been accidentally included. |
๐ ๏ธ Build ErrorsIssues when building from source |
Ensure you have the correct TypeScript version installed (v5.3.3 or compatible) and that your |
๐ Output Directory IssuesProblems with saving generated images |
Check if the process has write permissions to the configured output directory. Try using an absolute path for |
๐ Error Handling and Reporting
The MCP server includes comprehensive error handling that provides detailed information when something goes wrong. When an error occurs:
Error Format: All errors are returned with:
- A clear error message describing what went wrong
- The specific error code or type
- Additional context about the error when available
AI Assistant Behavior: When using this MCP server with AI assistants:
- The AI will always report the full error message to help with troubleshooting
- The AI will explain the likely cause of the error in plain language
- The AI will suggest specific steps to resolve the issue
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
License SummaryThe MIT License is a permissive license that is short and to the point. It lets people do anything with your code with proper attribution and without warranty.
You are free to:
- Use the software commercially
- Modify the software
- Distribute the software
- Use and modify the software privately
Under the following terms:
- Include the original copyright notice and the license notice in all copies or substantial uses of the work
Limitations:
- The authors provide no warranty with the software and are not liable for any damages
๐ Acknowledgments
Developed with โค๏ธ by CLOUDWERX