
Image Generation MCP Server
Connects Claude to OpenAI DALL-E, Google Gemini image models, and local Stable Diffusion (via SD WebUI) through a single interface. Exposes `generate_image` with auto-routing based on prompt keywords, plus on-demand image transforms (resize, crop, format conversion) through `image://` URIs. Background task support for long SD generations, persistent event store for session resumability over HTTP, and a built-in gallery viewer. Ships with Docker, systemd packages, and .mcpb bundles for Claude Desktop. Reach for this when you want Claude to generate production images without writing custom API clients for each provider, or when you need to test prompts across multiple models from one conversation.
- GitHub stars
- 1
- tool
- 1
- auth
- Secret needed
- transport
- STDIO, HTTP
- env vars
- 24
- last updated
- Aug 25, 2026
Tools
1 toolsPublic tool metadata for what this MCP can expose to an agent.
image-generationGenerate an image from a given text10 params
Generate an image from a given text
advance_configobjectaspect_ratiostring1:1 · 16:9 · 21:9 · 3:2 · 2:3 · 4:5file_store_keystringheightnumberoutput_formatstringpng · svgpromptstringreturn_typestringurl · binary · base64stepsnumberurlstringwidthnumberSponsors
Configuration
IMAGE_GENERATION_MCP_KV_STORE_URLdefault: file:///data/statePersistent-state backend URL shared by every pvl-core subsystem that needs state. `memory://` is in-process and lost on restart; `file:///path` persists on one server; `redis://`, `dynamodb://` and `mongodb://` each need their matching extra. When unset, defaults to `file:///data
IMAGE_GENERATION_MCP_TOOLS_ALLOWComma-separated explicit tool names this instance exposes; every other tool is hidden from listings and cannot be invoked. Names matching no registered tool are inert. Mutually exclusive with `tools_deny`. Takes effect through `apply_tool_visibility`.
IMAGE_GENERATION_MCP_TOOLS_DENYComma-separated explicit tool names hidden from this instance (absent from listings, cannot be invoked). Names matching no registered tool are inert. Mutually exclusive with `tools_allow`. Takes effect through `apply_tool_visibility`.
IMAGE_GENERATION_MCP_SERVER_NAMERename this server instance; defaults to the project name.
IMAGE_GENERATION_MCP_INSTRUCTIONSReplaces the default MCP instructions text sent to clients.
FASTMCP_LOG_LEVELdefault: INFOLog level for FastMCP internals and app loggers (DEBUG / INFO / WARNING / ERROR / CRITICAL). The -v CLI flag overrides to DEBUG.
FASTMCP_ENABLE_RICH_LOGGINGdefault: trueSet false for plain or structured JSON log output.
IMAGE_GENERATION_MCP_A1111_HOSTDeprecated alias for IMAGE_GENERATION_MCP_SD_WEBUI_HOST; logs a warning when used.
IMAGE_GENERATION_MCP_A1111_MODELDeprecated alias for IMAGE_GENERATION_MCP_SD_WEBUI_MODEL; logs a warning when used.
IMAGE_GENERATION_MCP_READ_ONLYdefault: trueWhen true, write-tagged tools (image generation, transforms, uploads) are hidden from clients. Set false to enable them.
IMAGE_GENERATION_MCP_SCRATCH_DIRdefault: ~/.image-generation-mcp/imagesDirectory where generated images are saved. Created automatically on first use.
IMAGE_GENERATION_MCP_OPENAI_API_KEYsecretOpenAI API key. Enables the OpenAI provider (gpt-image-2, gpt-image-1.5, dall-e-3) when set.
IMAGE_GENERATION_MCP_GOOGLE_API_KEYsecretGoogle API key. Enables the Gemini provider (gemini-3.1-flash-image and others) when set. Get a key at https://aistudio.google.com/apikey.
IMAGE_GENERATION_MCP_SD_WEBUI_HOSTSD WebUI base URL (such as http://localhost:7860). Enables the SD WebUI provider when set. Compatible with AUTOMATIC1111, Forge, reForge, and Forge-neo.
IMAGE_GENERATION_MCP_SD_WEBUI_MODELSD WebUI checkpoint name, used for model-aware preset detection (SD 1.5 / SDXL / Lightning) and checkpoint override. Unset uses the instance's current model.
IMAGE_GENERATION_MCP_DEFAULT_PROVIDERdefault: autoProvider used when no keyword triggers auto-selection: auto, openai, gemini, sd_webui, or placeholder. auto picks the first configured provider.
IMAGE_GENERATION_MCP_TRANSFORM_CACHE_SIZEdefault: 64Maximum number of transformed image results (resize, crop, convert) kept in memory. Set 0 to disable caching.
IMAGE_GENERATION_MCP_PAID_PROVIDERSdefault: openaiComma-separated provider names that cost money; generate_image asks for confirmation (client elicitation) before using them. An empty value falls back to this default; to disable confirmation, set a value that names no provider (such as none).
IMAGE_GENERATION_MCP_STYLES_DIRdefault: ~/.image-generation-mcp/stylesDirectory for style preset files (Markdown with YAML front matter). Created automatically if it does not exist.
IMAGE_GENERATION_MCP_ALLOW_LOCAL_FILE_INPUTdefault: falseAllow reading input images from local filesystem paths. Off by default: only URLs and uploads are accepted.
IMAGE_GENERATION_MCP_MAX_INPUT_IMAGE_BYTESdefault: 20971520Maximum accepted input image size in bytes.
IMAGE_GENERATION_MCP_FETCH_TIMEOUT_Sdefault: 30.0HTTP timeout in seconds when fetching remote image URLs (fetch_image and URL inputs).
IMAGE_GENERATION_MCP_TRANSFER_TTL_DEFAULT_Sdefault: 3600.0Link lifetime in seconds when the caller requests no explicit TTL.
IMAGE_GENERATION_MCP_TRANSFER_TTL_MAX_Sdefault: 86400.0Ceiling in seconds a caller-requested link TTL is clamped to.
Readme
Details
- Repository
- github.com/pvliesdonk/image-generation-mcp
- Website
- pvliesdonk.github.io/image-generation-mcp
- Category
- AI & LLM Tools
- Package
image-generation-mcp- Transport
- STDIO, HTTP
- Auth
- Required
- Registry
- MCP registry, active