mcp server
comfyui-mcp
MCP server + Claude Code plugin for ComfyUI: run workflows, generate images, manage models & VRAM.
Description as published by the maintainer. Source
- version 0.4.1
- active
active — Most recent push to the repository was 2026-08-06.
What this server can do
44 functions, named and described by the server itself. Parameter names are shown because they say more about what a function does than its name usually does.
analyze_workflow(view, section, filename)- Load a saved workflow and return a structured analysis — sections, node settings, connections, and data flow. Use this to understand any workflow before modifying or executing it. Returns a concise text summary (not raw JSON) optimized for AI reasoning. Prefer this over get_workflow unless you need the raw JSON for enqueue_workflow or modify_workflow. Required: filename.
cancel_job(prompt_id)- Interrupt/cancel the currently running ComfyUI job. Optionally target a specific running job by prompt_id.
cancel_queued_job(prompt_id)- Remove a specific pending job from the ComfyUI queue by prompt_id. Does not affect running jobs. Required: prompt_id.
clear_queue- Clear all pending jobs from the ComfyUI queue. Does not affect the currently running job.
clear_vram(free_memory, unload_models)- Free GPU VRAM by unloading cached models from ComfyUI. Use this between generation runs with different model families (e.g. switching from SDXL to Flux) or when running low on VRAM. Optionally unload only models or only memory.
create_workflow(params, template)- Create a ComfyUI workflow from a named template. Available templates: txt2img, img2img, upscale, inpaint. Returns the complete workflow JSON ready for execution or further modification. Required: template.
download_model(url, filename, target_subfolder)- Download a model file to the ComfyUI models directory from a URL (HuggingFace or direct link) Required: url, target_subfolder.
enqueue_workflow(workflow, disable_random_seed)- Submit a ComfyUI workflow for execution and return immediately with the prompt_id and queue position. Does not wait for completion. Use get_job_status to check progress later, or get_history to retrieve results and images after completion. Required: workflow.
generate_image(cfg, seed, steps, width, height, prompt, sampler, scheduler, batch_size, checkpoint, negative_prompt)- Generate an image from a text prompt — the high-level entry point. Builds a txt2img workflow, filling any unspecified parameter from your configured defaults (set_defaults / COMFYUI_DEFAULT_* / config file), auto-selecting a local checkpoint when none is given. Returns the prompt_id immediately; the resulting asset_id arrives in the completion notification and can be passed to view_image or regenerate. For full control over the node graph, use create_workflow + enqueue_workflow instead. Required: prompt.
generate_node_skill(source, install_in)- Analyze a ComfyUI custom node pack and generate a Claude skill (.md) file describing all its nodes, inputs/outputs, and usage examples. Accepts a ComfyUI Registry ID or a GitHub repository URL as the source. Required: source.
generation_stats(model_family)- Show local generation tracking statistics — total runs, unique combos, breakdown by model family.
get_asset_metadata(asset_id)- Get full provenance for a registered asset including the workflow snapshot that produced it. Use this to inspect the parameters that generated an image before calling regenerate with overrides. Required: asset_id.
get_defaults- Return the merged view of generation defaults with per-source attribution. Precedence (lowest → highest): config file → COMFYUI_DEFAULT_* env vars → runtime overrides via set_defaults. Per-call MCP tool args always win over these defaults when consumed by a workflow-construction tool.
get_embeddings- List installed textual inversion embeddings. These can be used in prompts with the syntax embedding:name (e.g. embedding:easynegative).
get_history(prompt_id)- Get execution history for a ComfyUI prompt. Returns status, timing, cached nodes, output details, and full error information including Python tracebacks. Use after a failed enqueue_workflow to diagnose what went wrong.
get_image(type, filename, save_dir, subfolder)- Fetch a generated image from ComfyUI and return it as an inline image. Works with remote ComfyUI instances — does not require COMFYUI_PATH. Use get_history first to obtain the filename. Required: filename.
get_job_status(prompt_id)- Check the execution status of a ComfyUI prompt/job by its ID. Required: prompt_id.
get_logs(keyword, max_lines)- Get ComfyUI server runtime logs. Useful for debugging execution errors, model loading issues, missing nodes, and Python tracebacks.
get_node_info(node_type)- Query ComfyUI's /object_info endpoint to get available node type definitions. Optionally filter by node type name (substring match). Returns node inputs, outputs, and descriptions.
get_node_pack_details(id)- Get detailed information about a specific ComfyUI custom node pack from the Registry Required: id.
get_queue- Get the current ComfyUI execution queue showing running and pending jobs.
get_system_stats- Get ComfyUI system information including GPU, VRAM, Python version, and OS details.
get_workflow(format, filename)- Load a saved workflow and return its raw JSON. Use analyze_workflow instead if you just need to understand the workflow — it returns a structured summary without flooding context with JSON. Use get_workflow only when you need the actual JSON for enqueue_workflow, modify_workflow, or save_workflow. Required: filename.
list_assets(limit, since)- List recently generated assets from the in-memory registry, newest-first. Assets are registered automatically when a workflow completes successfully. The registry is ephemeral and clears on server restart; records expire after COMFYUI_ASSET_TTL_HOURS (default 24h).
list_local_models(model_type)- List model files installed in the local ComfyUI models directory
list_output_images(limit, pattern)- List recently generated images from ComfyUI's output directory. Returns filenames sorted newest-first. Requires COMFYUI_PATH. For remote ComfyUI, use get_history to find filenames, then get_image to fetch them.
list_workflows- List saved workflows from the ComfyUI user library.
mermaid_to_workflow(mermaid)- Convert a Mermaid flowchart diagram back into a ComfyUI workflow JSON. Parses node definitions, connections (with data type labels), and widget values from the mermaid syntax. Resolves node types and wires connections using ComfyUI's /object_info schemas. Fills missing inputs with defaults. Returns a valid, executable ComfyUI API workflow. Required: mermaid.
modify_workflow(workflow, operations)- Apply modification operations to an existing ComfyUI workflow. Supports: set_input, add_node, remove_node, connect, insert_between. Returns the modified workflow JSON and IDs of any newly added nodes. Required: workflow, operations.
regenerate(asset_id, overrides, disable_random_seed)- Re-enqueue the workflow that produced an existing asset, optionally applying parameter overrides. Overrides are applied to any node input matching the key name (e.g. cfg, steps, sampler_name, scheduler, seed, denoise, text). Seeds are re-randomized by default so each regenerate yields a fresh image unless seed is explicitly passed in overrides. Required: asset_id.
restart_comfyui- Restart ComfyUI: stops the running process (capturing its config), waits for the port to free, relaunches with the same arguments, and waits for the API to become ready.
save_workflow(filename, workflow)- Save a workflow to the ComfyUI user library so it appears in the web UI. Accepts either API format or UI format JSON. Required: filename, workflow.
search_custom_nodes(page, limit, query)- Search the ComfyUI Registry for custom node packs by keyword Required: query.
search_models(limit, query, filter)- Search HuggingFace for models compatible with ComfyUI (checkpoints, LoRAs, VAEs, etc.) Required: query.
set_defaults(values, persist)- Update generation defaults. By default updates the in-memory runtime layer (lost on restart). Pass persist=true to also write the change into the config file (~/.config/comfyui-mcp/config.json by default). Use this to avoid repeating common values like width, height, steps, cfg, sampler, checkpoint. Required: values.
start_comfyui- Start ComfyUI using process info saved from a previous stop_comfyui call. Supports both Desktop app and manual Python installs. Waits up to 60s for the API to become ready.
stop_comfyui- Stop the running ComfyUI process. Captures process info so it can be restarted with start_comfyui. Kills the process tree and resets the WebSocket client.
suggest_settings(limit, search, lora_hash, model_family)- Suggest proven sampler/scheduler/steps/CFG settings based on local generation history. Query by model family, LoRA hash, or text search on model/LoRA names.
upload_image(filename, source_path)- Upload a local image file to ComfyUI's input/ directory so it can be referenced in LoadImage nodes. Tries HTTP upload first (works with remote ComfyUI), falls back to filesystem copy when COMFYUI_PATH is set. Required: source_path.
validate_workflow(workflow)- Validate a ComfyUI workflow without executing it. Checks for missing node types, broken connections, invalid output indices, missing models, and other issues. Returns a list of errors and warnings. Required: workflow.
view_image(asset_id)- Fetch a registered asset's bytes and return them as an inline image so the agent can see the result. Use this after enqueue_workflow completes (asset_id is included in the completion notification) to inspect, critique, or compare generated images. Only supports image mime types (PNG/JPEG/WebP); audio/video assets must be saved to disk via get_image. Required: asset_id.
visualize_workflow(workflow, direction, show_values)- Convert a ComfyUI workflow JSON into a Mermaid flowchart diagram. Returns mermaid syntax showing nodes grouped by category (loading, conditioning, sampling, image, output) with connections labeled by data type. Required: workflow.
visualize_workflow_hierarchical(view, section, workflow, direction, show_values)- Visualize a large ComfyUI workflow as a hierarchical diagram. Detects logical sections using node categories from /object_info, resolves Get/Set virtual wires, and produces either a compact overview (sections as summary nodes), a detailed view of one section, or a text listing of all sections. Best for workflows with 20+ nodes. Required: workflow.
workflow_from_image(image_path)- Extract embedded ComfyUI workflow metadata from a PNG file. ComfyUI stores the full workflow (API format) and prompt data in PNG tEXt chunks. Use this to reverse-engineer how any ComfyUI image was generated. Required: image_path.
Last successful function declaration observed on
.
Source: pkg:npm/comfyui-mcp. We list what the server declared;
we do not call any of these functions.
Endpoint status observed on
.
Source: pkg:npm/comfyui-mcp.
Signals
These are separate measurements of different things. They are deliberately not combined into one score, because a popularity number that mixes website traffic with saves and stars cannot be checked or acted on.
| Signal | Value | What it measures | Window | Observed | Source |
|---|---|---|---|---|---|
| GitHub stars | 509 | Number of GitHub accounts that bookmarked this repository since it was created. It is a bookmark count, not installs, not active users and not quality. | cumulative, all time | GitHub | |
| Last commit | 2026-08-06 | Date of the most recent push to any branch. This is the strongest cheap indicator of whether the project is still maintained. | point in time | GitHub | |
| Open issues | 57 | Open issues plus open pull requests, as GitHub counts them together. A high number can mean an active project or an abandoned one. | as of fetch | GitHub | |
| Latest published version | 0.4.1 | Latest version string the maintainer published to the registry. | as of fetch | Model Context Protocol | |
| Registry record last updated | 2026-05-21 | When the registry record was last updated by its maintainer. | point in time | Model Context Protocol | |
| License | MIT | Licence GitHub detected in the repository. Detection can be wrong; the LICENSE file is authoritative. | as of fetch | GitHub | |
| First listed in the MCP Registry | 2026-05-21 | Date this server was first published to the official MCP Registry. Not a usage or quality measure. | point in time | Model Context Protocol | |
| repository status | active | The repository exists on GitHub and is not archived. This says nothing about how recently it was worked on. | as of fetch | GitHub | |
| mcp tools declared | 44 tools | Number of functions the server declared when started and asked to list them. It says what the server offers an agent, not how well any of it works. | as of probe | npm |
|
| mcp endpoint status | ok | The server listed 44 functions when asked. | as of probe | npm |
|
| package install scripts | postinstall | This package runs its own code during installation (postinstall), before you ever start it. That is normal for many packages and is also where npm supply-chain attacks operate. We installed it with those scripts disabled. | as of probe | npm |
Where to get it
Related, by what their authors tagged them
-
Promptibus MCP
— last commit 2026-05-11, shares flux, stable-diffusion
Model intelligence for AI agents — syntax, params, pricing for 67+ generative AI models.
-
io.github.codex-curator/studiomcphub
— last commit 2026-05-14, shares image-generation, stable-diffusion
32 creative AI tools (18 free) for agents: generate, upscale, mockup, print, watermark.
-
Cejel
— last commit 2026-08-06, shares offline
Offline deterministic engineering-trust certificates for repositories, with no telemetry.
-
io.github.gabrielmahia/offline-mcp
— last commit 2026-08-06, shares offline
MCP server enabling offline-first agent operation over intermittent connectivity
-
heshengtao-super-agent-party-find-skills
— last commit 2026-08-01, shares comfyui
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is t…
-
heshengtao-super-agent-party-officecli
— last commit 2026-08-01, shares comfyui
Create, analyze, proofread, and modify Office documents (.docx, .xlsx, .pptx) using the officecli CLI tool. Use when th…
-
heshengtao-super-agent-party-sap-extension-creator
— last commit 2026-08-01, shares comfyui
Create Super Agent Party (SAP) extensions. This skill should be used when users want to create, build, or scaffold a ne…
-
heshengtao-super-agent-party-skill-creator
— last commit 2026-08-01, shares comfyui
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an exis…
-
Createya — AI Image & Video Generation
— last commit 2026-05-12, shares flux
100+ AI models: FLUX, Sora, Veo, Kling, Runway, Suno. OAuth or Bearer. No VPN. RU billing.
-
KSail
— last commit 2026-08-07, shares flux
SDK for creating, managing, and operating Kubernetes clusters and workloads with ease.
These share tags the maintainers applied themselves, such as flux, stable-diffusion, image-generation, offline. Common tags like "mcp" or "ai" are ignored for this: agreeing with six hundred other projects is not a similarity.
This is not a recommendation and not a test result. It is a map of what the authors said their work is about.
How the author describes it
Topics the maintainer set on GitHub: agent-skills, ai-agent, claude-code, claude-plugin, comfyui, comfyui-extension, comfyui-mcp, comfyui-mcp-server, flux, image-generation, local-first, mcp, mcp-server, model-context-protocol, offline, ollama, self-hosted, stable-diffusion, video-generation, wan.
This record as data
Every field on this page, with its source and observation date, is in the catalog JSON. Fetch the whole kind at once instead of parsing this HTML.
GET /api/v1/entries/mcp_server.json