{
  "markdown": "# @qmediat.io/ideogram-mcp\n\nMCP server for the [Ideogram V3 API](https://developer.ideogram.ai) — generate, edit, remix, upscale, and describe images from Claude Code, Claude Desktop, or any MCP client.\n\n[![npm version](https://img.shields.io/npm/v/@qmediat.io/ideogram-mcp)](https://www.npmjs.com/package/@qmediat.io/ideogram-mcp)\n[![license](https://img.shields.io/npm/l/@qmediat.io/ideogram-mcp)](./LICENSE)\n[![TypeScript](https://img.shields.io/badge/TypeScript-strict-blue)](./tsconfig.json)\n\n## Why this server?\n\n- **7 tools** — full Ideogram V3 coverage (generate, edit, remix, reframe, replace background, upscale, describe)\n- **Security-first** — SSRF protection, symlink rejection, Content-Type validation, path traversal prevention, Zod response validation ([details](./SECURITY.md))\n- **2 runtime dependencies** — `@modelcontextprotocol/sdk` + `zod`. No axios, no form-data, no HTTP libraries\n- **Native Ideogram API** — direct V3 endpoints, not proxied through fal.ai or Replicate\n- **Production-hardened** — retry with exponential backoff, safety filter handling, partial failure resilience\n\n## Quick Start\n\n```bash\nnpm install -g @qmediat.io/ideogram-mcp\n```\n\nOr use directly:\n\n```bash\nnpx @qmediat.io/ideogram-mcp\n```\n\nRequires `IDEOGRAM_API_KEY` — get one at [ideogram.ai/manage-api](https://ideogram.ai/manage-api).\n\n## Configuration\n\n### Claude Code\n\nAdd to `~/.claude.json` → `mcpServers`:\n\n```json\n{\n  \"ideogram\": {\n    \"command\": \"npx\",\n    \"args\": [\"-y\", \"@qmediat.io/ideogram-mcp\"],\n    \"env\": {\n      \"IDEOGRAM_API_KEY\": \"your-api-key\",\n      \"IDEOGRAM_OUTPUT_DIR\": \"/tmp/ideogram-output\"\n    }\n  }\n}\n```\n\n### Claude Desktop\n\nAdd to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"ideogram\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@qmediat.io/ideogram-mcp\"],\n      \"env\": {\n        \"IDEOGRAM_API_KEY\": \"your-api-key\",\n        \"IDEOGRAM_OUTPUT_DIR\": \"/tmp/ideogram-output\"\n      }\n    }\n  }\n}\n```\n\n### Environment Variables\n\n| Variable | Required | Default | Description |\n|----------|:--------:|---------|-------------|\n| `IDEOGRAM_API_KEY` | Yes | — | Your Ideogram API key ([get one here](https://ideogram.ai/manage-api)) |\n| `IDEOGRAM_OUTPUT_DIR` | No | `/tmp/ideogram-output` | Any folder where you want images saved. Use absolute paths (e.g. `/home/user/images/ideogram`) |\n\n## Available Tools\n\n| Tool | Description | Key Parameters |\n|------|-------------|----------------|\n| `ideogram_generate` | Generate images from text prompts | `prompt`, `aspect_ratio`, `rendering_speed`, `style_type`, `num_images` |\n| `ideogram_describe` | Generate text description of an image | `image` (file path) |\n| `ideogram_edit` | Edit areas of an image with mask-based inpainting | `image`, `mask`, `prompt` |\n| `ideogram_remix` | Transform an image with a new prompt | `image`, `prompt`, `image_weight` (0-100) |\n| `ideogram_reframe` | Extend an image to a new resolution (outpainting) | `image`, `resolution` (69 valid sizes) |\n| `ideogram_replace_background` | Replace background, preserving foreground | `image`, `prompt` |\n| `ideogram_upscale` | Upscale with guided enhancement | `image`, `resemblance` (0-100), `detail` (0-100) |\n\n### Common Parameters\n\n| Parameter | Available In | Values |\n|-----------|-------------|--------|\n| `rendering_speed` | generate, edit, remix, reframe, replace_background | `FLASH`, `TURBO`, `DEFAULT`, `QUALITY` |\n| `magic_prompt` | generate, edit, remix, replace_background, upscale | `AUTO`, `ON`, `OFF` |\n| `style_type` | generate, edit, remix | `AUTO`, `GENERAL`, `REALISTIC`, `DESIGN`, `FICTION` |\n| `aspect_ratio` | generate, remix | `1x1`, `16x9`, `9x16`, `4x3`, `3x4`, and 10 more |\n| `num_images` | all tools | `1`-`8` |\n| `seed` | all tools | `0`-`2,147,483,647` |\n\n## Security\n\nThis server is designed with a zero-trust, minimal-dependency approach:\n\n- **SSRF protection** — HTTPS-only downloads, hostname allowlist, redirect blocking\n- **Symlink rejection** — `lstat()` rejects user-created symlinks before reading\n- **Content-Type validation** — downloads must be `image/*`, rejecting HTML/JSON error pages\n- **Zod response validation** — API responses parsed through schemas, no blind type casts\n- **Path traversal prevention** — extension allowlist + `path.relative()` containment check\n\nFull details in [SECURITY.md](./SECURITY.md).\n\n## Development\n\n```bash\ngit clone https://github.com/qmediat/ideogram-mcp.git\ncd ideogram-mcp\nnpm install\nnpm run build\n```\n\nRun locally:\n\n```bash\nIDEOGRAM_API_KEY=your-key node dist/index.js\n```\n\n## Contributing\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) for architecture guidelines and PR requirements.\n\n## License\n\n[MIT](./LICENSE) — [Quantum Media Technologies](https://www.qmediat.io)\n",
  "bytes": 4716,
  "sha": "712738048fc66919362dd62cb8c1071f0dde85d3b9be185933e9e74b8cd551c2",
  "repo_slug": "qmediat/ideogram-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_qmediat_ideogram_mcp_a9d8c4fd/readme"
}