Meshy MCP Server
OFFICIAL SERVERGenerate, rig, texture and prepare 3D models for printing through the Meshy AI API
Control a ComfyUI install: build and run workflows, fetch models, manage nodes and VRAM
By Arthur R Longbottom (individual) TypeScript Local · stdio MediaAI and ML
78 popularity score ★ 897 ↓ 12k/wk
Opens the app, which asks before it adds the server.
claude mcp add comfyui -- npx -y comfyui-mcp{
"mcpServers": {
"comfyui": {
"command": "npx",
"args": [
"-y",
"comfyui-mcp"
]
}
}
}{
"mcpServers": {
"comfyui": {
"command": "npx",
"args": [
"-y",
"comfyui-mcp"
]
}
}
}{
"servers": {
"comfyui": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"comfyui-mcp"
]
}
}
}[mcp_servers.comfyui]
command = "npx"
args = ["-y", "comfyui-mcp"]gemini mcp add --scope user comfyui npx -- -y comfyui-mcpCOMFYUI_URL |
Optional: Full URL of the ComfyUI to drive; a non-loopback host switches to remote mode and skips auto-detection. |
|---|---|
COMFYUI_PATH |
Optional: ComfyUI data directory (models, input, output) when auto-detection fails. |
COMFYUI_PORT |
Optional: ComfyUI port; otherwise the configured port, 8188 and 8000 are tried. |
COMFYUI_API_KEY secret |
Optional: Comfy Cloud API key; setting it switches to cloud mode against cloud.comfy.org. |
COMFYUI_AUTH_TOKEN secret |
Optional: Token sent to a self-hosted ComfyUI behind a reverse proxy or gateway. |
COMFY_API_KEY secret |
Optional: Comfy.org key for hosted partner API nodes; read from ~/.comfy-api-key when unset. |
CIVITAI_API_TOKEN secret |
Optional: Civitai token for model downloads. |
HF_TOKEN secret |
Optional: HuggingFace token for gated models and higher rate limits; HUGGINGFACE_TOKEN is read as a fallback. |
GITHUB_TOKEN secret |
Optional: GitHub token for skill generation, to avoid rate limits. |
COMFYUI_MCP_HTTP_TOKEN secret |
Optional: Bearer token required by the HTTP transport; the endpoint is open when unset. |
COMFYUI_MCP_TOOL_MODE |
Optional: Set to compact to expose only the three meta-tools, for small local models. |
COMFYUI_MCP_AUTOUPDATE |
Optional: Set to 0 to stop the package checking npm and updating itself on load. |
This server hands an MCP client the controls of a running ComfyUI. Sending a prompt and getting a picture back is the small part. The client can also build a workflow graph node by node, validate and queue the graph, then read history and tracebacks to work out why a run failed, or re-run an old generation with new settings. Single-call generation covers text-to-image, ControlNet, IP-Adapter, upscaling, background removal, short video, audio and 3D.
A second set of tools looks after the install. They search HuggingFace and Civitai and put weights in the right model folder, delete model files, install or bisect custom node packs, take snapshots through ComfyUI-Manager, restart the ComfyUI process, free VRAM, and can install ComfyUI from nothing. There are also tools for LoRA training in Docker, RunPod GPU pods, publishing a node pack of your own, and a local SQLite log of past runs used to suggest settings that worked.
Local is the default target, with the ComfyUI folder and port found automatically. Pointing at a remote or proxied ComfyUI, or at Comfy Cloud with an API key, turns the file and process tools off. Transport is stdio, or streamable HTTP on request with an optional Cloudflare tunnel and bearer token. The npm package also ships a Claude Code plugin and the back end for the ComfyUI Agent Panel.
Two details are in the startup code but not the README. You get 38 tools by default, plus list_tools, describe_tool and call_tool as a fallback layer; COMFYUI_MCP_NO_FACADE=1 removes those meta-tools and COMFYUI_MCP_TOOL_MODE=compact leaves only them. On every load the package asks npm for a newer release, and for global or local installs it updates itself on disk unless COMFYUI_MCP_AUTOUPDATE=0 is set. The disabled report_issue tool describes the project as getting limited maintenance for critical fixes, a note the README has since removed.
| Runtime | Node.js 22+ |
|---|---|
| Runs on | macOS, Windows, Linux |
| ComfyUI | Your own instanceA local or reachable remote ComfyUI to drive; Comfy Cloud with an API key works instead |
| Also |
|
Optional extras need their own keys: a RunPod account and key for the pod tools, and Civitai or HuggingFace tokens for some model downloads. comfy-cli is installed separately (see the comfy-cli docs) and found on PATH or through COMFY_CLI_PATH.
Limited maintenance only: critical fixes, no broad roadmap, and the report_issue tool is disabled. In remote and Comfy Cloud modes the local file and process tools are unavailable, and in cloud mode WebSocket tools fail with CLOUD_UNSUPPORTED. The connected model must support tool calling; without vision it cannot see its own outputs. Hosted partner API nodes and RunPod pods cost money. node_pack works on local installs only. HTTP auth is opt-in and OAuth is not yet supported.
Suits people who run their own ComfyUI and want an assistant to operate it end to end, including installing models and nodes and restarting the server. That reach means it writes to disk, runs processes and updates its own package, so it fits a machine you control. Pick it when you want to use your own models, including offline local ones. Its README points people with no GPU, or who want a hosted option with no setup, to Comfy-Org's own Comfy Cloud MCP instead. If you only need a simple prompt-to-image relay, a smaller server with fewer write tools carries less reach.
11 only read, 26 change things, 4 can delete or overwrite. A ? marks an optional parameter.
generate_image changesget_imageupload_image changesget_defaults changesenqueue_workflow changesqueue changesbatch changesget_system_statsvisualize_workflowcreate_workflow changesget_workflowsave_workflow changesdownload_model changeslist_local_models deletesmodel_metadata changesapply_manifest changesclear_vram changessearch_custom_nodesinstall_custom_node deletesnode_snapshot changesbisect changesnode_pack changeslist_packs changeslist_api_nodes changescomfy_cli changeskitchen changesget_historyrestart_comfyui deletesaction: enuminstall_comfyui changesworkspace changesapps changesrunpod changesrunpod_watchtrain_doctor changestrain_prepare_dataset changestrain_start deletescalculatereport_issuetitle: stringbody: stringrepo?: stringlabels?: arraylist_toolsdescribe_toolcall_tool changes