This server wraps the full Ideogram V3 API in seven MCP tools: generate from text prompts, describe images, edit with masks, remix with variable image weights, reframe to new aspect ratios via outpainting, replace backgrounds, and upscale with detail control. All operations support configurable rendering speeds (flash to quality), magic prompt enhancement, and style presets. Images save to a local directory you specify. The implementation is security hardened with SSRF protection, symlink rejection, and Zod validation, using only two runtime dependencies. Good fit if you want Claude to create or modify images through Ideogram without leaving the conversation or writing custom API calls.
MCP server for the Ideogram V3 API — generate, edit, remix, upscale, and describe images from Claude Code, Claude Desktop, or any MCP client.
@modelcontextprotocol/sdk + zod. No axios, no form-data, no HTTP librariesnpm install -g @qmediat.io/ideogram-mcp
Or use directly:
npx @qmediat.io/ideogram-mcp
Requires IDEOGRAM_API_KEY — get one at ideogram.ai/manage-api.
Add to ~/.claude.json → mcpServers:
{
"ideogram": {
"command": "npx",
"args": ["-y", "@qmediat.io/ideogram-mcp"],
"env": {
"IDEOGRAM_API_KEY": "your-api-key",
"IDEOGRAM_OUTPUT_DIR": "/tmp/ideogram-output"
}
}
}
Add to claude_desktop_config.json:
{
"mcpServers": {
"ideogram": {
"command": "npx",
"args": ["-y", "@qmediat.io/ideogram-mcp"],
"env": {
"IDEOGRAM_API_KEY": "your-api-key",
"IDEOGRAM_OUTPUT_DIR": "/tmp/ideogram-output"
}
}
}
}
| Variable | Required | Default | Description |
|---|---|---|---|
IDEOGRAM_API_KEY | Yes | — | Your Ideogram API key (get one here) |
IDEOGRAM_OUTPUT_DIR | No | /tmp/ideogram-output | Any folder where you want images saved. Use absolute paths (e.g. /home/user/images/ideogram) |
| Tool | Description | Key Parameters |
|---|---|---|
ideogram_generate | Generate images from text prompts | prompt, aspect_ratio, rendering_speed, style_type, num_images |
ideogram_describe | Generate text description of an image | image (file path) |
ideogram_edit | Edit areas of an image with mask-based inpainting | image, mask, prompt |
ideogram_remix | Transform an image with a new prompt | image, prompt, image_weight (0-100) |
ideogram_reframe | Extend an image to a new resolution (outpainting) | image, resolution (69 valid sizes) |
ideogram_replace_background | Replace background, preserving foreground | image, prompt |
ideogram_upscale | Upscale with guided enhancement | image, resemblance (0-100), detail (0-100) |
| Parameter | Available In | Values |
|---|---|---|
rendering_speed | generate, edit, remix, reframe, replace_background | FLASH, TURBO, DEFAULT, QUALITY |
magic_prompt | generate, edit, remix, replace_background, upscale | AUTO, ON, OFF |
style_type | generate, edit, remix | AUTO, GENERAL, REALISTIC, DESIGN, FICTION |
aspect_ratio | generate, remix | 1x1, 16x9, 9x16, 4x3, 3x4, and 10 more |
num_images | all tools | 1-8 |
seed | all tools | 0-2,147,483,647 |
This server is designed with a zero-trust, minimal-dependency approach:
lstat() rejects user-created symlinks before readingimage/*, rejecting HTML/JSON error pagespath.relative() containment checkFull details in SECURITY.md.
git clone https://github.com/qmediat/ideogram-mcp.git
cd ideogram-mcp
npm install
npm run build
Run locally:
IDEOGRAM_API_KEY=your-key node dist/index.js
See CONTRIBUTING.md for architecture guidelines and PR requirements.
IDEOGRAM_API_KEY*secretYour Ideogram API key (get one at https://ideogram.ai/manage-api)
IDEOGRAM_OUTPUT_DIRDirectory for saved images (default: /tmp/ideogram-output)