
andyluu98/ai-image-gpt-mcp
Developer toolsStandalone MCP server + CLI for ChatGPT image generation (image only), with reliable single-file output
Overview
A trimmed, image-focused fork of ai-slides-mcp: all the slide / PowerPoint features are removed, and the image-generation path is made (one call = one image = one exact returned path, no re-generation). - aigpt gen " " generates an image via the ChatGPT backend and saves it. - MCP tools generate_image and login_status for use inside Claude Code, Codex, etc. - Multi-account login with quota-aware selection. The original tool returned images into a directory with an auto-generated name, which made callers guess where the file landed and sometimes (wasting quota). This fork fixes that: - aigpt gen "..." --out shot.png saves to shot.png and prints its on stdout (one line). Use that path directly. - --out still works for a directory of n images. - The MCP generate_image returns absolute paths in {"paths": [...]}. One generation call produces one image. Never re-run a call to "find" the file. --thinking (auto/standard/extended/max) raises image reasoning effort; higher renders text (e.
README
ai-image-gpt-mcp
Standalone MCP server + CLI for ChatGPT image generation (image only).
A trimmed, image-focused fork of ai-slides-mcp: all the slide / PowerPoint features are removed, and the image-generation path is made reliable (one call = one image = one exact returned path, no re-generation).
What it does
aigpt gen ""generates an image via the ChatGPT backend and saves it.- MCP tools
generate_imageandlogin_statusfor use inside Claude Code, Codex, etc. - Multi-account login with quota-aware selection.
The reliability fix
The original tool returned images into a directory with an auto-generated name, which made callers guess where the file landed and sometimes re-generate the same image (wasting quota). This fork fixes that:
aigpt gen "..." --out shot.pngsaves to exactlyshot.pngand prints its absolute path on stdout (one line). Use that path directly.--outstill works for a directory ofnimages.- The MCP
generate_imagereturns absolute paths in{"paths": [...]}.
One generation call produces one image. Never re-run a call to “find” the file.
Install
Requires Python 3.12+ and uv.
git clone https://github.com/andyluu98/ai-image-gpt-mcp.git
cd ai-image-gpt-mcp
uv sync
Login (2-step OAuth with ChatGPT)
uv run aigpt login
# A browser opens -> log into ChatGPT -> you land on a platform.openai.com page.
# Copy the FULL callback URL, then:
uv run aigpt login --callback ""
uv run aigpt accounts # check logged-in accounts + live quota
Generate
# one exact file
uv run aigpt gen "a red apple on white, minimal" --out shot.png
# skip prompt auto-expansion (faster, more literal) + set reasoning effort
uv run aigpt gen "..." --out shot.png --no-enhance --thinking standard
# a directory of N images
uv run aigpt gen "..." --n 2 --out ./images
# aspect ratio: 16:9 (default), 1:1, 9:16, 4:3, 3:4, or WxH
uv run aigpt gen "..." --aspect 9:16 --out portrait.png
--thinking (auto/standard/extended/max) raises image reasoning effort;
higher renders text (e.g. Vietnamese diacritics) better but is slower.
Register as an MCP server
Same shape for Claude Code, Codex, Antigravity:
{
"mcpServers": {
"ai-image-gpt": {
"command": "uv",
"args": ["run", "--directory", "", "aigpt-mcp"]
}
}
}
Exposed tools: generate_image, login_status.
Disclaimer
This tool talks to the ChatGPT web backend (vendored chatgpt2api), not an official
OpenAI API. Using it may violate OpenAI’s Terms of Service and can get your account
rate-limited or banned. For experimentation only. You are responsible for your use.
Credits
- Image + OAuth engine vendored from chatgpt2api (MIT).
- Structure based on ai-slides-mcp.
Install
This server does not publish a one-line install command.
Open the repository installation guide New to MCP? Start with the mcpskill.org guide →Configuration
{
"mcpServers": {
"ai-image-gpt": {
"command": "uv",
"args": ["run", "--directory", "<absolute path to this repo>", "aigpt-mcp"]
}
}
}