Serversio.github.pvliesdonk/image-generation-mcp
M

Image Generation MCP Server

io.github.pvliesdonk/image-generation-mcp · v1.9.0
▦ pypi
v1.9.0pypi pypi: image-generation-mcp↗ Website↗ Repository
{}server.json

The full server descriptor as registered with IndusMCP.

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "name": "io.github.pvliesdonk/image-generation-mcp",
  "description": "MCP server for AI image generation via OpenAI, Stable Diffusion (SD WebUI), or placeholders.",
  "title": "Image Generation MCP Server",
  "repository": {
    "url": "https://github.com/pvliesdonk/image-generation-mcp",
    "source": "github"
  },
  "version": "1.9.0",
  "websiteUrl": "https://pvliesdonk.github.io/image-generation-mcp/",
  "packages": [
    {
      "registryType": "pypi",
      "identifier": "image-generation-mcp",
      "version": "1.9.0",
      "runtimeHint": "uvx",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "When true, write-tagged tools (generate_image) are hidden. Set to false to enable image generation.",
          "format": "boolean",
          "default": "true",
          "name": "IMAGE_GENERATION_MCP_READ_ONLY"
        },
        {
          "description": "Directory for saved generated images. Created automatically on first use.",
          "format": "filepath",
          "name": "IMAGE_GENERATION_MCP_SCRATCH_DIR"
        },
        {
          "description": "Default provider selection: auto (keyword-based), openai, sd_webui, or placeholder. Deprecated alias 'a1111' is also accepted.",
          "default": "auto",
          "name": "IMAGE_GENERATION_MCP_DEFAULT_PROVIDER"
        },
        {
          "description": "OpenAI API key. Enables the OpenAI provider (gpt-image-1, dall-e-3) when set.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OPENAI_API_KEY"
        },
        {
          "description": "SD WebUI base URL (e.g. http://localhost:7860). Enables the SD WebUI provider when set.",
          "name": "IMAGE_GENERATION_MCP_SD_WEBUI_HOST"
        },
        {
          "description": "SD WebUI checkpoint name for model-aware preset detection (SD 1.5 vs SDXL vs Lightning vs Flux).",
          "name": "IMAGE_GENERATION_MCP_SD_WEBUI_MODEL"
        },
        {
          "description": "Deprecated — use SD_WEBUI_HOST instead. Accepted as fallback.",
          "name": "IMAGE_GENERATION_MCP_A1111_HOST"
        },
        {
          "description": "Deprecated — use SD_WEBUI_MODEL instead. Accepted as fallback.",
          "name": "IMAGE_GENERATION_MCP_A1111_MODEL"
        },
        {
          "description": "Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG.",
          "default": "INFO",
          "choices": [
            "DEBUG",
            "INFO",
            "WARNING",
            "ERROR"
          ],
          "name": "FASTMCP_LOG_LEVEL"
        },
        {
          "description": "Server name shown to MCP clients in the initialization response.",
          "default": "image-generation-mcp",
          "name": "IMAGE_GENERATION_MCP_SERVER_NAME"
        },
        {
          "description": "System-level instructions injected into LLM context.",
          "name": "IMAGE_GENERATION_MCP_INSTRUCTIONS"
        },
        {
          "description": "Static bearer token for HTTP authentication.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_BEARER_TOKEN"
        },
        {
          "description": "OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.",
          "name": "IMAGE_GENERATION_MCP_AUTH_MODE"
        },
        {
          "description": "Public base URL for OIDC redirects (e.g. https://mcp.example.com). Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_BASE_URL"
        },
        {
          "description": "OIDC discovery endpoint URL. Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_OIDC_CONFIG_URL"
        },
        {
          "description": "OIDC client ID. Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_OIDC_CLIENT_ID"
        },
        {
          "description": "OIDC client secret. Required for OIDC.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OIDC_CLIENT_SECRET"
        },
        {
          "description": "Signing key for OIDC session JWTs (critical on Linux/Docker).",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OIDC_JWT_SIGNING_KEY"
        },
        {
          "description": "Expected JWT audience claim. Leave unset if your provider does not set one.",
          "name": "IMAGE_GENERATION_MCP_OIDC_AUDIENCE"
        },
        {
          "description": "Comma-separated required OIDC scopes (default: openid for oidc-proxy mode, none for remote mode).",
          "name": "IMAGE_GENERATION_MCP_OIDC_REQUIRED_SCOPES"
        },
        {
          "description": "Verify access token JWT instead of id_token.",
          "format": "boolean",
          "default": "false",
          "name": "IMAGE_GENERATION_MCP_OIDC_VERIFY_ACCESS_TOKEN"
        }
      ]
    },
    {
      "registryType": "oci",
      "identifier": "ghcr.io/pvliesdonk/image-generation-mcp:v1.9.0",
      "transport": {
        "type": "streamable-http",
        "url": "http://localhost:{--port}/mcp"
      },
      "packageArguments": [
        {
          "description": "Port for the HTTP transport",
          "default": "8000",
          "type": "named",
          "name": "--port"
        }
      ],
      "environmentVariables": [
        {
          "description": "When true, write-tagged tools (generate_image) are hidden. Set to false to enable image generation.",
          "format": "boolean",
          "default": "true",
          "name": "IMAGE_GENERATION_MCP_READ_ONLY"
        },
        {
          "description": "Directory for saved generated images inside the container.",
          "format": "filepath",
          "default": "/data/scratch",
          "name": "IMAGE_GENERATION_MCP_SCRATCH_DIR"
        },
        {
          "description": "Default provider selection: auto (keyword-based), openai, sd_webui, or placeholder. Deprecated alias 'a1111' is also accepted.",
          "default": "auto",
          "name": "IMAGE_GENERATION_MCP_DEFAULT_PROVIDER"
        },
        {
          "description": "OpenAI API key. Enables the OpenAI provider (gpt-image-1, dall-e-3) when set.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OPENAI_API_KEY"
        },
        {
          "description": "SD WebUI base URL (e.g. http://localhost:7860). Enables the SD WebUI provider when set.",
          "name": "IMAGE_GENERATION_MCP_SD_WEBUI_HOST"
        },
        {
          "description": "SD WebUI checkpoint name for model-aware preset detection (SD 1.5 vs SDXL vs Lightning vs Flux).",
          "name": "IMAGE_GENERATION_MCP_SD_WEBUI_MODEL"
        },
        {
          "description": "Deprecated — use SD_WEBUI_HOST instead. Accepted as fallback.",
          "name": "IMAGE_GENERATION_MCP_A1111_HOST"
        },
        {
          "description": "Deprecated — use SD_WEBUI_MODEL instead. Accepted as fallback.",
          "name": "IMAGE_GENERATION_MCP_A1111_MODEL"
        },
        {
          "description": "Log level for FastMCP internals; app loggers default to INFO, -v overrides both to DEBUG.",
          "default": "INFO",
          "choices": [
            "DEBUG",
            "INFO",
            "WARNING",
            "ERROR"
          ],
          "name": "FASTMCP_LOG_LEVEL"
        },
        {
          "description": "Server name shown to MCP clients in the initialization response.",
          "default": "image-generation-mcp",
          "name": "IMAGE_GENERATION_MCP_SERVER_NAME"
        },
        {
          "description": "System-level instructions injected into LLM context.",
          "name": "IMAGE_GENERATION_MCP_INSTRUCTIONS"
        },
        {
          "description": "HTTP endpoint mount path for streamable-HTTP transport.",
          "default": "/mcp",
          "name": "IMAGE_GENERATION_MCP_HTTP_PATH"
        },
        {
          "description": "EventStore backend for SSE session resumability. file:///path (file-backed, survives restarts) or memory:// (in-process only, dev mode).",
          "default": "file:///data/state/events",
          "name": "IMAGE_GENERATION_MCP_EVENT_STORE_URL"
        },
        {
          "description": "Run as this UID (Docker entrypoint).",
          "format": "number",
          "default": "1000",
          "name": "PUID"
        },
        {
          "description": "Run as this GID (Docker entrypoint).",
          "format": "number",
          "default": "1000",
          "name": "PGID"
        },
        {
          "description": "Static bearer token for HTTP authentication.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_BEARER_TOKEN"
        },
        {
          "description": "OIDC auth mode: 'remote' (JWKS validation) or 'oidc-proxy' (OAuth proxy). Auto-detected if not set.",
          "name": "IMAGE_GENERATION_MCP_AUTH_MODE"
        },
        {
          "description": "Public base URL for OIDC redirects (e.g. https://mcp.example.com). Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_BASE_URL"
        },
        {
          "description": "OIDC discovery endpoint URL. Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_OIDC_CONFIG_URL"
        },
        {
          "description": "OIDC client ID. Required for OIDC.",
          "name": "IMAGE_GENERATION_MCP_OIDC_CLIENT_ID"
        },
        {
          "description": "OIDC client secret. Required for OIDC.",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OIDC_CLIENT_SECRET"
        },
        {
          "description": "Signing key for OIDC session JWTs (critical on Linux/Docker).",
          "isSecret": true,
          "name": "IMAGE_GENERATION_MCP_OIDC_JWT_SIGNING_KEY"
        },
        {
          "description": "Expected JWT audience claim. Leave unset if your provider does not set one.",
          "name": "IMAGE_GENERATION_MCP_OIDC_AUDIENCE"
        },
        {
          "description": "Comma-separated required OIDC scopes (default: openid for oidc-proxy mode, none for remote mode).",
          "name": "IMAGE_GENERATION_MCP_OIDC_REQUIRED_SCOPES"
        },
        {
          "description": "Verify access token JWT instead of id_token.",
          "format": "boolean",
          "default": "false",
          "name": "IMAGE_GENERATION_MCP_OIDC_VERIFY_ACCESS_TOKEN"
        }
      ]
    }
  ],
  "_meta": {
    "dev.indusmcp/source": "official-registry-mirror",
    "dev.indusmcp/synced": "2026-05-12"
  }
}