MCP Connector

Generate and edit images with OpenAI GPT-4o

Generate and edit images with OpenAI's GPT-4o/gpt-image-1 - inpainting, outpainting, and batch generation, with automatic file output.

Works with openaiazure openai

Maintainer of this project? Claim this page to edit the listing.


91
Spark score
out of 100
Updated May 2025
Version 1.0.0
Models
gpt 4ouniversal

Add to Favorites

Why it matters

Leverage advanced OpenAI GPT-4o/gpt-image-1 capabilities to create and edit images from text prompts, integrating seamlessly with MCP-compatible clients.

Outcomes

What it gets done

01

Generate images from detailed text descriptions.

02

Perform advanced image editing, including inpainting and outpainting.

03

Integrate with various MCP clients like Claude Desktop, Cursor, and VSCode.

04

Save generated images directly to disk or retrieve them as base64.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-openai-gpt-image | bash

Capabilities

Tools your agent gets

create-image

Generates images from prompts with advanced options like size, quality, and background.

edit-image

Edits or extends images using prompts and optional masks, supporting file paths and base64.

Overview

OpenAI GPT Image MCP Server

openai-gpt-image-mcp connects AI assistants to OpenAI's GPT-4o/gpt-image-1 image APIs for text-to-image generation and prompt/mask-based editing, automatically switching to file output for large images to respect MCP's 1MB response limit. Use it when an AI assistant needs to generate or edit images via OpenAI's models. Requires a verified OpenAI organization for image API access, which can take 15-20 minutes to activate.

What it does

openai-gpt-image-mcp connects Claude Desktop, Cursor, VS Code, Windsurf, or any MCP client to OpenAI's GPT-4o/gpt-image-1 image generation and editing APIs, letting an AI assistant generate images from text prompts or edit existing images with inpainting, outpainting, and compositing.

When to use - and when NOT to

Use it when you want an AI assistant to generate images from a text prompt (with control over size, quality, and background) or edit an existing image using a prompt and optional mask. It automatically switches to file output instead of base64 when image size would exceed the 1MB MCP tool-response limit, saving to /tmp (or a directory set via MCP_HF_WORK_DIR) by default. It also supports Azure OpenAI deployments as an alternative to standard OpenAI. Auto-switching to file output specifically guards against the error result exceeds maximum length of 1048576, which is what MCP clients throw when a base64 response crosses the 1MB limit. Do not use it without a verified OpenAI organization - image API access requires organization verification, and activation can take 15-20 minutes after verifying.

Capabilities

  • create-image: generate images from a text prompt, with options for size, quality, background, and generating up to 10 images at once (n parameter).
  • edit-image: edit or extend an image using a prompt and an optional mask (file path or base64 input) to control where edits apply.
  • File output: save generated/edited images directly to disk, or receive them as base64 when small enough.

How to install

git clone https://github.com/SureScaleAI/openai-gpt-image-mcp.git
cd openai-gpt-image-mcp
yarn install
yarn build

Configure Claude Desktop, Cursor, VS Code, or Windsurf:

{
  "mcpServers": {
    "openai-gpt-image-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"],
      "env": { "OPENAI_API_KEY": "sk-..." }
    }
  }
}

For Azure OpenAI, use AZURE_OPENAI_API_KEY, AZURE_OPENAI_ENDPOINT, and OPENAI_API_VERSION instead. An .env file can be supplied via --env-file ./deployment/.env. Set MCP_HF_WORK_DIR to control where large images are saved instead of the default /tmp.

Troubleshooting notes worth knowing: all file paths must be absolute (starting with / on Unix/macOS/Linux, or a drive letter like C:/path/to/image.png on Windows), the output directory must be writable, and errors about file types usually trace back to the image file's extension or format. The project is built with the @modelcontextprotocol/sdk and OpenAI's Node.js SDK, and is maintained by SureScale.ai with contributions from Axle Research and Technology.

Who it's for

Developers and content creators who want an AI assistant to generate or edit images using OpenAI's image models directly within their coding or writing workflow.

Source README

openai-gpt-image-mcp

MCP SDK OpenAI SDK License GitHub stars Build Status


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.
  • File output: Save generated images directly to disk, or receive as base64.

🚀 Installation

git clone https://github.com/SureScaleAI/openai-gpt-image-mcp.git
cd openai-gpt-image-mcp
yarn install
yarn build

🔑 Configuration

Add to Claude Desktop or VSCode (including Cursor/Windsurf) config:

{
  "mcpServers": {
    "openai-gpt-image-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"],
      "env": { "OPENAI_API_KEY": "sk-..." }
    }
  }
}

Also supports Azure deployments:

{
  "mcpServers": {
    "openai-gpt-image-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"],
      "env": { 
        "AZURE_OPENAI_API_KEY": "sk-...",
        "AZURE_OPENAI_ENDPOINT": "my.endpoint.com",
        "OPENAI_API_VERSION": "2024-12-01-preview"
      }
    }
  }
}

Also supports supplying an environment files:

{
  "mcpServers": {
    "openai-gpt-image-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js", "--env-file", "./deployment/.env"]
    }
  }
}

⚡ Advanced

  • For create-image, set n to generate up to 10 images at once.
  • For edit-image, provide a mask image (file path or base64) to control where edits are applied.
  • Provide an environment file with --env-file path/to/file/.env
  • See src/index.ts for all options.

🧑‍💻 Development

  • TypeScript source: src/index.ts
  • Build: yarn build
  • Run: node dist/index.js

📝 License

MIT


🩺 Troubleshooting

  • Make sure your OPENAI_API_KEY is 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.png or C:\path\to\image.png)
  • 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: If you do not specify a file_output path, images will be saved to /tmp (or the directory set by the MCP_HF_WORK_DIR environment variable) with a unique filename.
  • Environment Variable:
    • MCP_HF_WORK_DIR: Set this to control where large images and file outputs are saved. 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

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.