mcp-comfyui
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-comfyuicheck ComfyUI health"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-comfyui
MCP server bridging Claude Desktop to local and remote ComfyUI instances, including Comfy Cloud.
Tools
Tool | Description |
| Check server reachable + response time |
| List models by type (checkpoints, loras, etc.) |
| Queue a workflow, get prompt ID back immediately |
| Poll prompt status (queued / running / completed / error / cancelled) |
| Get output file paths or download URLs after completion |
Requirements
Python 3.11+
Local ComfyUI instance or a Comfy Cloud subscription
Install
pip install -r requirements.txtConfiguration
Server config format
Each entry in COMFYUI_SERVERS is either a plain URL string (local, no auth) or a dict:
{
// String shorthand — local ComfyUI, no auth
"default": "http://localhost:8188",
// Dict — full options
"remote": { "url": "http://192.168.1.100:8188", "mode": "local" },
"cloud": { "url": "https://cloud.comfy.org", "api_key": "YOUR_KEY", "mode": "cloud" }
}mode is "local" (default) or "cloud". api_key is required for Comfy Cloud.
If COMFYUI_SERVERS is absent, defaults to {"default": "http://localhost:8000"}.
Via .env file
cp .env.example .env
# edit .envVia Claude Desktop config
~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"comfyui": {
"command": "/opt/miniconda3/bin/python3",
"args": ["/path/to/mcp-comfyui/server.py"],
"env": {
"COMFYUI_SERVERS": "{\"default\": \"http://localhost:8188\", \"cloud\": {\"url\": \"https://cloud.comfy.org\", \"api_key\": \"YOUR_KEY\", \"mode\": \"cloud\"}}"
}
}
}
}Omit env to use .env file instead.
Typical Workflow
comfyui_health— confirm server upcomfyui_list_models— find available checkpoints/LoRAscomfyui_queue_prompt— submit workflow JSON, getprompt_idcomfyui_poll_status— repeat untilstatus = completedcomfyui_get_outputs— get file paths (local) or/api/viewdownload URLs (cloud)
Mode Differences
Behaviour | Local | Cloud |
Health probe |
|
|
Auth | none |
|
Submit workflow |
|
|
Poll status |
|
|
Status values | queued / running / completed / error | + cancelled |
Outputs | absolute filesystem paths |
|
Model listing |
| same |
Manual Test
/opt/miniconda3/bin/python3 -c "
import asyncio
from server import comfyui_health, comfyui_list_models, ServerInput, ListModelsInput
async def main():
print(await comfyui_health(ServerInput(server='default')))
print(await comfyui_list_models(ListModelsInput(server='default', filter='checkpoints')))
asyncio.run(main())
"Notes
comfyui_queue_promptexpects valid ComfyUI API-format workflow JSON. No validation performed.Local output paths built from
--output-directoryflag reported in/system_stats.Cloud outputs: caller must follow the 302 redirect from
/api/viewto reach the signed storage URL.Stdio transport only — this server opens no network ports.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/budihartono/mcp-comfyui'
If you have feedback or need assistance with the MCP directory API, please join our Discord server