ComfyUI MCP Server
DSL-first workflow management for ComfyUI via Model Context Protocol (MCP)
A production-ready MCP server that enables AI agents to manage ComfyUI workflows using a human-readable Domain Specific Language (DSL). The core design philosophy is DSL-first: agents work entirely in DSL format, with JSON conversion happening transparently.
š Quick Start
Installation
Usage with Claude Code
Create MCP configuration:
Start Claude Code with MCP:
Use in conversation:
⨠Features
š DSL-First Design
Agents work entirely in human-readable DSL
Automatic JSON ā DSL conversion
No need to think about format conversion
š File Operations
read_workflow- Auto-converts JSON to DSLwrite_workflow- Saves DSL as JSON/DSLlist_workflows- Discovers workflow filesvalidate_workflow- DSL syntax validationget_workflow_info- Workflow analysis
ā” Execution Operations
execute_workflow- Run DSL workflows on ComfyUIget_job_status- Monitor execution & download imageslist_comfyui_queue- View ComfyUI queue status
šØ DSL Syntax Example
šļø Architecture
Key Components:
DSL Parser: Converts human-readable DSL to Abstract Syntax Tree
JSON Converter: Bidirectional conversion between DSL and ComfyUI JSON
MCP Server: Exposes tools via Model Context Protocol
Execution Engine: Integrates with ComfyUI API for workflow execution
š Documentation
Core Classes
DSLParser: Parse DSL text into Abstract Syntax TreeDslToJsonConverter: Convert DSL AST to ComfyUI JSONJsonToDslConverter: Convert ComfyUI JSON to DSL AST
MCP Tools
Tool | Description | Example |
| Read and convert workflows to DSL |
|
| Write DSL to disk as JSON/DSL |
|
| Find workflow files |
|
| Check DSL syntax |
|
| Analyze structure |
|
| Run on ComfyUI |
|
| Monitor execution |
|
| View queue |
|
š ļø Development
Setup
Testing
Code Quality
Documentation
š§ Configuration
Environment Variables
COMFYUI_SERVER: ComfyUI server address (default:127.0.0.1:8188)MCP_DEBUG: Enable debug loggingMCP_LOG_LEVEL: Set log level (DEBUG, INFO, WARNING, ERROR)
ComfyUI Setup
Install ComfyUI
Start server:
python main.py --listen 0.0.0.0Ensure models are installed in
models/checkpoints/
š¤ Contributing
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Development Workflow
Fork the repository
Create a feature branch:
git checkout -b feature-nameMake changes and add tests
Run tests and linting:
pytest && black . && ruff check .Submit a pull request
š License
This project is licensed under the MIT License - see the LICENSE file for details.
š Acknowledgments
ComfyUI - Amazing stable diffusion GUI
FastMCP - Excellent MCP framework
Anthropic - Model Context Protocol specification
š Roadmap
v0.2.0: Enhanced DSL features (templates, macros)
v0.3.0: Web UI for workflow management
v0.4.0: Git integration for workflow versioning
v0.5.0: ComfyUI node discovery and documentation
v1.0.0: Production deployment features
Built with ā¤ļø for the ComfyUI and AI automation community
This server cannot be installed