ComfyUI MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| COMFYUI_URL | No | ComfyUI base URL | http://127.0.0.1:8188 |
| COMFYUI_API_KEY | No | API key sent to ComfyUI | |
| COMFYUI_MCP_HOST | No | HTTP bind host | 127.0.0.1 |
| COMFYUI_MCP_PORT | No | HTTP bind port | 8000 |
| COMFYUI_API_PREFIX | No | Prefix native routes; use /api for compatible cloud endpoints | |
| COMFYUI_VERIFY_SSL | No | Verify the ComfyUI HTTPS certificate | true |
| COMFYUI_MCP_DATA_DIR | No | Workflow and output storage | |
| COMFYUI_MCP_TRANSPORT | No | stdio, streamable-http, or sse | stdio |
| COMFYUI_API_KEY_HEADER | No | Header used for the API key | X-API-Key |
| COMFYUI_ACCOUNT_API_KEY | No | Key placed in extra_data for paid Comfy API nodes | |
| COMFYUI_MCP_INPUT_ROOTS | No | Allowed upload roots, separated by the OS path separator | |
| COMFYUI_TIMEOUT_SECONDS | No | HTTP request timeout | 30 |
| COMFYUI_MCP_ALLOW_REMOTE | No | Permit non-loopback MCP HTTP binding | false |
| COMFYUI_MCP_BRIDGE_TOKEN | No | Shared token for the optional canvas bridge |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| comfyui_healthA | Check ComfyUI connectivity and whether the optional canvas bridge is installed. |
| comfyui_list_node_typesA | Search installed core and custom node types without returning the full large schema. |
| comfyui_get_node_typeA | Get the authoritative inputs, outputs, options, and metadata for one node class. |
| comfyui_list_modelsA | List ComfyUI model folders, or models within one folder such as checkpoints or loras. |
| comfyui_list_templatesA | List workflow templates exposed by installed ComfyUI node packages. |
| comfyui_list_workflowsA | List workflows managed by this MCP server with revision and node counts. |
| comfyui_create_workflowC | Create an empty managed API-format workflow. |
| comfyui_import_workflowB | Import a ComfyUI API-format workflow object into the managed workflow store. |
| comfyui_get_workflowA | Read a managed workflow. Set include_graph=false for a compact summary. |
| comfyui_add_nodeC | Add a node to a managed workflow, optionally checking it against the live ComfyUI. |
| comfyui_remove_nodeA | Remove a node; force=true also disconnects inputs that reference the node. |
| comfyui_set_inputB | Set a literal node input such as prompt text, seed, dimensions, or model name. |
| comfyui_connect_nodesB | Connect one node output index to a named input on another node. |
| comfyui_disconnect_inputB | Remove the node connection currently assigned to an input. |
| comfyui_validate_workflowB | Validate graph structure and, by default, installed node schemas and required inputs. |
| comfyui_run_workflowB | Submit a managed workflow to ComfyUI, with optional non-persistent input overrides. |
| comfyui_get_runB | Get a run's pending, running, completed, failed, or unknown status and outputs. |
| comfyui_get_queueA | Inspect running and pending jobs; full workflow payloads are hidden by default. |
| comfyui_interruptA | Interrupt the workflow currently executing in ComfyUI. |
| comfyui_clear_queueA | Remove pending workflows from the ComfyUI queue. |
| comfyui_upload_imageB | Upload an allowed local image to ComfyUI for LoadImage-style nodes. |
| comfyui_download_outputC | Download a generated ComfyUI file into this server's managed output directory. |
| comfyui_sync_canvasC | Render a managed API workflow on an open ComfyUI canvas via the optional bridge. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 23 tools
Each tool targets a unique resource and action, from health checks to node introspection, workflow editing, execution, and queue control. Even closely related tools like add_node and set_input have clear boundaries, leaving no ambiguity.
All tools follow a consistent comfyui_verb_noun snake_case pattern. Verbs like list, get, create, add, remove, connect, disconnect, and validate are consistently used, making the toolset predictable and easy to navigate.
At 23 tools, this is on the heavy side, but the breadth is justified by the complex domain of ComfyUI workflow management. Each tool serves a distinct purpose, and the count remains reasonable given the need to cover discovery, editing, validation, execution, and file I/O.
The toolset covers the full lifecycle of workflow management, including creation, importing, editing, validation, running, queue inspection, and output retrieval. Minor gaps exist, such as the lack of a delete_workflow tool or a list_runs tool, but these are not critical for core usage.