https://github.com/ConstantineB6/comfy-pilot
MCP server + embedded terminal that lets Claude Code see and edit your ComfyUI workflows
https://github.com/ConstantineB6/comfy-pilot
ai claude claude-code comfyui comfyui-custom-node generative-ai image-generation mcp model-context-protocol stable-diffusion workflow-automation
Last synced: about 10 hours ago
JSON representation
MCP server + embedded terminal that lets Claude Code see and edit your ComfyUI workflows
- Host: GitHub
- URL: https://github.com/ConstantineB6/comfy-pilot
- Owner: ConstantineB6
- License: mit
- Created: 2026-01-28T05:38:18.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2026-02-16T09:58:06.000Z (5 months ago)
- Last Synced: 2026-02-16T17:41:33.885Z (5 months ago)
- Topics: ai, claude, claude-code, comfyui, comfyui-custom-node, generative-ai, image-generation, mcp, model-context-protocol, stable-diffusion, workflow-automation
- Language: Python
- Size: 2.34 MB
- Stars: 42
- Watchers: 1
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-servers - **ConstantineB6/comfy-pilot** - MCP server for ComfyUI that lets AI agents view, edit, and run node-based image generation workflows with an embedded terminal. `http` `ai` `git` `github` (π¦ Other)
README
# Comfy Pilot
[](https://github.com/ConstantineB6/Comfy-Pilot/stargazers)
[](https://opensource.org/licenses/MIT)
[](https://registry.comfy.org/publishers/constantine/nodes/comfy-pilot)
Talk to your ComfyUI workflows. Comfy Pilot gives Claude Code direct access to see, edit, and run your workflows β with an embedded terminal right inside ComfyUI.

## Why?
Building ComfyUI workflows means manually searching for nodes, dragging connections, and tweaking values one at a time. With Comfy Pilot, you just describe what you want:
- *"Build me an SDXL workflow with ControlNet"* β Claude creates all the nodes, connects them, and sets the parameters
- *"Look at the output and increase the detail"* β Claude sees your generated image and adjusts the workflow
- *"Download the FLUX schnell model and set up a workflow for it"* β Claude downloads the model and builds a workflow from scratch
No copy-pasting node names. No hunting through menus. Just say what you want.
## Installation
**CLI (Recommended):**
```bash
comfy node install comfy-pilot
```
**ComfyUI Manager:**
1. Open ComfyUI
2. Click **Manager** β **Install Custom Nodes**
3. Search for "Comfy Pilot"
4. Click **Install**
5. Restart ComfyUI
**Git Clone:**
```bash
cd ~/Documents/ComfyUI/custom_nodes && git clone https://github.com/ConstantineB6/comfy-pilot.git
```
Claude Code CLI will be installed automatically if not found.
## Requirements
- ComfyUI
- Python 3.8+
## Features
- **MCP Server** - Gives Claude Code direct access to view, edit, and run your ComfyUI workflows
- **Embedded Terminal** - Full xterm.js terminal running Claude Code right inside ComfyUI
- **Image Viewing** - Claude can see outputs from Preview Image and Save Image nodes
- **Graph Editing** - Create, delete, move, and connect nodes programmatically
## Demo
https://github.com/user-attachments/assets/325b1194-2334-48a1-94c3-86effd1fef02
## Usage
1. Restart ComfyUI after installation
2. The floating Claude Code terminal appears in the top-right corner
3. The MCP server is automatically configured for Claude Code
4. Ask Claude to help with your workflow:
- "What nodes are in my current workflow?"
- "Add a KSampler node connected to my checkpoint loader"
- "Look at the preview image and tell me what you see"
- "Run the workflow up to node 5"
## MCP Tools
The MCP server provides these tools to Claude Code:
| Tool | Description |
|------|-------------|
| `get_workflow` | Get the current workflow from the browser |
| `summarize_workflow` | Human-readable workflow summary |
| `get_node_types` | Search available node types with filtering |
| `get_node_info` | Get detailed info about a specific node type |
| `get_status` | Queue status, system stats, and execution history |
| `run` | Run workflow (optionally up to a specific node) or interrupt |
| `edit_graph` | Batch create, delete, move, connect, and configure nodes |
| `view_image` | View images from Preview Image / Save Image nodes |
| `search_custom_nodes` | Search ComfyUI Manager registry for custom nodes |
| `install_custom_node` | Install a custom node from the registry |
| `uninstall_custom_node` | Uninstall a custom node |
| `update_custom_node` | Update a custom node to latest version |
| `download_model` | Download models from Hugging Face, CivitAI, or direct URLs |
### Example: Creating Nodes
```
Create a KSampler and connect it to my checkpoint loader
```
Claude will use `edit_graph` to:
1. Create the KSampler node
2. Connect the MODEL output from CheckpointLoader to KSampler's model input
3. Position it appropriately in the graph
### Example: Viewing Images
```
Look at the preview image and describe what you see
```
Claude will use `view_image` to fetch and analyze the image output.
### Example: Downloading Models
```
Download the FLUX.1 schnell model for me
```
Claude will use `download_model` to download from Hugging Face to your ComfyUI models folder. Supports:
- Hugging Face (including gated models with token auth)
- CivitAI
- Direct download URLs
## Terminal Controls
- **Drag** title bar to move
- **Drag** bottom-right corner to resize
- **β** Minimize
- **Γ** Close
- **β»** Reconnect session
## Architecture
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Browser (ComfyUI) β
β βββββββββββββββββββ ββββββββββββββββββββββββββββ β
β β xterm.js β β Workflow State β β
β β Terminal β β (synced to backend) β β
β ββββββββββ¬βββββββββ ββββββββββββββ¬ββββββββββββββ β
β β WebSocket β REST API β
βββββββββββββΌβββββββββββββββββββββββββΌβββββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ComfyUI Server β
β βββββββββββββββββββ ββββββββββββββββββββββββββββ β
β β PTY Process β β Plugin Endpoints β β
β β (claude CLI) β β /claude-code/* β β
β βββββββββββββββββββ ββββββββββββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β βΌ
β ββββββββββββββββββββββββββββ
ββββββββββββΆβ MCP Server β
β (stdio transport) β
ββββββββββββββββββββββββββββ
```
## Files
- `__init__.py` - Plugin backend: WebSocket terminal, REST endpoints
- `js/claude-code.js` - Frontend: xterm.js terminal, workflow sync
- `mcp_server.py` - MCP server for Claude Code integration
- `CLAUDE.md` - Instructions for Claude when working with ComfyUI
## Troubleshooting
### "Command 'claude' not found"
Install Claude Code CLI:
**macOS / Linux / WSL:**
```bash
curl -fsSL https://claude.ai/install.sh | bash
```
**Windows (PowerShell):**
```powershell
irm https://claude.ai/install.ps1 | iex
```
**Windows (CMD):**
```cmd
curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd
```
### MCP server not connecting
The plugin auto-configures MCP on startup. Check ComfyUI console for errors, or manually add to `~/.claude.json`:
```json
{
"mcpServers": {
"comfyui": {
"command": "python3",
"args": ["/path/to/comfy-pilot/mcp_server.py"]
}
}
}
```
### Terminal disconnected
Click the β» button to reconnect, or check ComfyUI console for errors.
## License
MIT