Skip to main content
Glama

InvokeAI MCP

A bridge between AI coding agents (Claude, Cursor, opencode) and your local InvokeAI creative engine - text-to-image, image-to-image, masked inpaint, and upscaling on your own GPU, plus full queue, model, gallery, board, and workflow management, with a polished dark webapp.

What this wraps

This repo wraps InvokeAI, the open-source professional Stable Diffusion / Flux creative engine (Apache-2.0, 27k+ stars). InvokeAI runs as a local web server (default http://127.0.0.1:9090) and is installed separately through its launcher - it is never bundled here. See docs/WRAPPEE.md.

Related MCP server: ComfyUI MCP Hub

Preview

Dashboard

Generate

Dashboard

Generate

What You Can Do

How it runs: headless bridge - this MCP server talks to your running InvokeAI instance over its REST API. InvokeAI must be installed and running (launcher install, model download, first run). Nothing is bundled.

Direction

Artifacts

Notes

Hands-in

prompts, negative prompts, images (img2img/inpaint), mask images, model sources

Text or uploaded images

Hands-out

generated PNGs, image URLs, local file paths, queue state

invokeai_queue result + gallery download

  • Generate SD1.5 / SDXL / Flux / SD3.5 / Qwen Image images on your RTX 4090

  • 8 generation modes with horizontal tabs: txt2img, img2img, inpaint, outpaint, upscale, ControlNet, IP-Adapter, seamless tiling

  • 60-style catalog + 24 material presets with select-all batch generation and live per-item progress

  • AI prompt refiner (local LLM) that understands the selected style/material

  • Plugin surface: install custom node packs from git, browse 250+ built-in engine nodes

  • Transform existing images (img2img) and repair regions (masked inpaint)

  • 4x RealESRGAN upscaling

  • Install models from HuggingFace or Civitai without leaving the chat

  • Full queue control: status, cancel, clear, resume, result polling

  • Gallery search, boards, star/favorite organization; sort/filter by style, painter, franchise, board, starred; batch ops (star/unstar/delete/zip/move) with exact per-image attribution

  • 76 curated styles + 23 franchise presets + 60 painters + 1321 A1111 community style pack entries - all batchable in any combination

  • Workflow library management (save/load node workflows)

  • Dark SOTA webapp: Generate, Gallery, Models, Queue, Boards, Workflows, Inbox, Tools, Skills, Chat (local LLM), Settings, Help, Logs

Supported models (engine catalog, 2026)

Model

Family

VRAM (fp16)

License / gating

Notes

FLUX.1 Dev / Schnell

flux

12-16 GB (fp8 ~7 GB)

Gated (token) / schnell Apache-2.0

Schnell: 4-step, structural quality

FLUX.2 Dev / Klein 9B / 4B

flux2

18 GB / 9 GB / 4 GB

Gated (token)

Current flagship

SD 3.5 Large / Medium

sd-3

16 GB / 5 GB

License accept + token

Rivals FLUX.1-dev

SDXL + community (Juggernaut XL, RealVis)

sdxl

8 GB

Mostly open

Default: Juggernaut XL v9

CogView4-6B

cogview4

12 GB (fp8 ~7 GB)

Apache-2.0, no gating

Great text rendering, bilingual

Z-Image Turbo / Base

z-image

12 GB (fp8 ~6 GB)

Permissive

Turbo is very fast

Qwen-Image 20B

qwen-image

~40 GB (fp8 ~20 GB)

Apache-2.0, no gating

Best prompt adherence; too heavy for 24 GB with desktop apps

SD 1.5 / 2.x

sd-1

4 GB

Open

Legacy, fast iteration

Krea 2, Ideogram 4, Anima, ERNIE

external

varies

Closed / API

Engine supports; not self-hostable

Graph builders ship for sd-1, sdxl, flux, cogview4 (verified against engine 6.13.7); sd-3, qwen-image, z-image, flux2 wiring is mechanical follow-up on request. Models install to N:\InvokeAI-models (configurable via models_dir in invokeai.yaml).

Quick Install

The fastest path is the MCPB bundle for Claude Desktop:

  1. Download invokeai-mcp-0.1.0.mcpb from Releases

  2. Open Claude Desktop and drag the file onto the window

  3. Complete onboarding (install InvokeAI, download a model) - see docs/ONBOARDING.md

Other methods (mcpb CLI, manual config, webapp dev stack) are in INSTALL.md.

Example Prompts

  • "Generate a neon cyberpunk city at night, rain, cinematic lighting"

  • "Use this image and make it a watercolor painting: [gallery image]"

  • "What models do I have installed? Install SDXL base from HuggingFace"

  • "Show me my recent images and download the last one to disk"

Documentation

Doc

Contents

Installation

All install methods, prerequisites

Onboarding

First-timer InvokeAI setup, model downloads, pitfalls

Wrapped app

What InvokeAI is, official links, community

Architecture

System architecture, graph builders, ports

Configuration

Env vars, config options

Tool Reference

All available tools

Development

Contributing, local setup

Troubleshooting

Common issues

Requirements

  • InvokeAI installed and running (launcher install; models downloaded) - free, Apache-2.0

  • GPU with 6-12 GB VRAM recommended (SD1.5: 4 GB, SDXL: 8 GB, Flux: 12 GB+)

  • Engine install: invokeai-web manual install (uv venv + uv pip install invokeai) or the official launcher; the engine serves its full canvas GUI on 9090

  • Claude Desktop (or any MCP client) for chat use; a browser for the webapp

  • Python 3.12+ and uv for source installs; Node/Bun for the webapp

License

MIT

Available Tools

13 tools
invokeai_boardsA

Manage boards (collections of generated images).

[RATIONALE] Boards are the primary organization surface of the InvokeAI gallery; all board operations share one record store and one portmanteau.

Return Format

{"success": bool, "operation": str, "data": {...}, "message": str}

Examples

invokeai_boards(operation="list") invokeai_boards(operation="create", board_name="Concept art") invokeai_boards(operation="add_image", board_id="board-uuid", image_names=["abc123.png"])

Notes:

  • Board ids come from invokeai_boards(operation='list').

Inputs: operation (required), board_id, board_name, image_names. Returns: object

invokeai_generateA

Generate images through the local InvokeAI creative engine.

[RATIONALE] All generation paths share one enqueue flow (graph build -> queue batch), so they live under a single portmanteau with an operation discriminator instead of four near-identical tools.

  • txt2img: text prompt to a fresh image.

  • img2img: transform an existing image (needs image_name, uses strength).

  • inpaint: regenerate a masked region (needs image_name + mask_image_name).

  • upscale: RealESRGAN 4x upscale of an existing image (needs image_name).

The job is enqueued and runs asynchronously; poll completion with invokeai_queue(operation="item_status" or "result").

Return Format

{"success": bool, "queue_item_id": int, "batch_id": str, "message": str, "poll": {"tool": "invokeai_queue", "args": {...}}}

Examples

invokeai_generate(operation="txt2img", prompt="neon cyberpunk city at night, rain") invokeai_generate(operation="img2img", prompt="make it a watercolor painting", image_name="abc123.png", strength=0.6) invokeai_generate(operation="upscale", image_name="abc123.png")

Notes:

  • InvokeAI must be running (onboarding) and a main model installed.

  • Model base determines graph family: sd-1, sdxl, flux.

Inputs: prompt (required), operation (required), runs, seed, +10 more. Returns: object

invokeai_helpA

Get documentation for this server's tools and workflows.

Return Format

{"success": bool, "help": str}

Examples

invokeai_help() invokeai_help(topic="tools")

Inputs: topic. Returns: object

invokeai_modelsA

Manage installed models in the local InvokeAI instance.

[RATIONALE] Model lifecycle (discovery, install from HF/Civitai, config, removal) is a single domain with a shared record store, so all operations live under this portmanteau.

Sources accepted by install: HuggingFace repo ids (e.g. "stabilityai/stable-diffusion-xl-base-1.0"), Civitai model URLs, or local paths. Install runs asynchronously; poll with operation='installs'.

Return Format

{"success": bool, "operation": str, "data": {...}, "message": str}

Examples

invokeai_models(operation="list", model_type="main") invokeai_models(operation="install", source="stabilityai/stable-diffusion-xl-base-1.0", config={"name": "SDXL Base"}) invokeai_models(operation="delete", key="sdxl-main")

Notes:

  • model_type values follow InvokeAI taxonomy (main, lora, vae, ...).

  • Install may download multiple GB; check operation='installs' for progress.

Inputs: operation (required), key, limit, config, +3 more. Returns: object

invokeai_queueA

Manage the InvokeAI generation queue and retrieve results.

[RATIONALE] Queue lifecycle (inspect, control, and harvest outputs) is one domain, so all operations share this portmanteau. 'result' is the natural partner of invokeai_generate: it polls an item to completion and returns the output image URLs (or downloads the file locally).

Return Format

{"success": bool, "operation": str, "data": {...}, "message": str}

Examples

invokeai_queue(operation="status") invokeai_queue(operation="list", status_filter="completed", limit=10) invokeai_queue(operation="result", item_id=123, wait_seconds=120, download_image=True) invokeai_queue(operation="cancel_batch", batch_ids=["batch-uuid"])

Notes:

  • result polls every 3s up to wait_seconds; use wait_seconds for synchronous flows.

  • Without wait_seconds, result returns the current item state immediately.

Inputs: operation (required), limit, item_id, batch_ids, +3 more. Returns: object

invokeai_shutdownA

Gracefully shut down this MCP server.

Return Format

{"success": bool, "message": str}

Examples

invokeai_shutdown()

Inputs: no named parameters. Returns: object

invokeai_systemA

Check InvokeAI connectivity, version, and runtime configuration.

[RATIONALE] System introspection (health, version, config, cache stats) is one domain and the standard first call for onboarding and debugging.

Return Format

{"success": bool, "operation": str, "data": {...}, "message": str, "configured": bool}

Examples

invokeai_system(operation="health") invokeai_system(operation="version")

Notes:

  • health returns configured=false when InvokeAI is not reachable (drives the webapp onboarding cue).

Inputs: operation (required). Returns: object

invokeai_workflowsA

Manage InvokeAI node workflows (list, get, save, delete).

[RATIONALE] Workflows are stored artifacts in a single store; CRUD plus export share this portmanteau. Running a workflow graph goes through invokeai_generate or a raw enqueue - this tool manages the stored workflow library.

Return Format

{"success": bool, "operation": str, "data": {...}, "message": str}

Examples

invokeai_workflows(operation="list") invokeai_workflows(operation="get", workflow_id="wf-uuid") invokeai_workflows(operation="save", workflow_json='{"nodes": {...}}')

Notes:

  • workflow_json must be a full InvokeAI workflow object (id, nodes, edges).

  • Save with an existing id updates; without one, creates.

Inputs: operation (required), limit, offset, workflow_id, +1 more. Returns: object

show_invokeai_dashboard_cardA

Show InvokeAI fleet status (version, queue, model counts) as a rich card.

Return Format

ToolResult with PrefabApp card; plain text fallback in content.

Examples

show_invokeai_dashboard_card()

Inputs: no named parameters.

show_invokeai_models_cardA

Show installed models of a type as a rich card.

Return Format

ToolResult with PrefabApp card; plain text fallback in content.

Examples

show_invokeai_models_card(model_type="main")

Inputs: model_type.

show_invokeai_queue_cardA

Show the generation queue status as a rich card.

Return Format

ToolResult with PrefabApp card; plain text fallback in content.

Examples

show_invokeai_queue_card()

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 13 tools

    Disambiguation4/5

    Each tool targets a distinct domain (queue, gallery, models, generation, workflows, boards, system), and the operation-based tools (invokeai_generate, invokeai_queue) are clearly separated. Minor overlap exists between show_invokeai_dashboard_card and invokeai_system (both report health/version), but descriptions mitigate confusion.

    Naming Consistency3/5

    Naming is inconsistent: four tools use a 'show_invokeai_*_card' pattern while the rest use bare 'invokeai_*' nouns with operation parameters. Some tools are verb-like (invokeai_help, invokeai_shutdown), others are noun-objects (invokeai_gallery, invokeai_boards), making the pattern unpredictable.

    Tool Count5/5

    13 tools is well within the ideal range for a server covering a rich creative domain. Each tool addresses a distinct area (generation, queueing, model management, gallery, workflows, system), and the card-based display tools serve as convenient views rather than redundant functionality.

    Completeness4/5

    Core workflows are well covered: generation includes txt2img, img2img, inpaint, and upscale; queue handles lifecycle and result retrieval; models support CRUD; gallery and boards manage images; workflows have full CRUD. Minor gaps exist (e.g., no explicit single-image delete outside 'manage' operations, and no batch generation interface), but agents can accomplish tasks without major dead ends.

    Maintenance

    ActivityActive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers