ComfyUI MCP Server
Integra ComfyUI con MCP, permitiendo el uso de flujos de trabajo personalizados. Requiere un servidor ComfyUI en ejecución.
Documentación
ComfyUI MCP Server
1. Resumen
- Una implementación de servidor para integrar ComfyUI con MCP.
- ⚠️ IMPORTANTE: Este servidor requiere un servidor ComfyUI en ejecución.
- Debes alojar tu propio servidor ComfyUI,
- o tener acceso a una dirección de servidor ComfyUI existente.
2. Depuración
2.1 Depuración de ComfyUI
python src/test_comfyui.py
2.2 Depuración de MCP
mcp dev src/server.py
3. Instalación y Configuración
3.1 Configuración de ComfyUI
-
Edita
src/.envpara configurar el host y el puerto de ComfyUI:COMFYUI_HOST=localhost COMFYUI_PORT=8188
3.2 Agregar Flujos de Trabajo Personalizados
- Para agregar nuevas herramientas, coloca tus archivos JSON de flujo de trabajo en el directorio
workflowsy decláralos como nuevas herramientas en el sistema.
4. Herramientas Integradas
-
text_to_image
- Devuelve solo la URL de la imagen generada.
- Para obtener la imagen real:
- Usa la herramienta
download_image, o - Accede a la URL directamente en tu navegador.
- Usa la herramienta
-
download_image
- Descarga imágenes generadas por otras herramientas (como
text_to_image) usando la URL de la imagen.
- Descarga imágenes generadas por otras herramientas (como
-
run_workflow_with_file
-
Ejecuta un flujo de trabajo proporcionando la ruta a un archivo JSON de flujo de trabajo.
# You should ask to agent like this. Run comfyui workflow with text_to_image.json -
imagen de ejemplo de CursorAI

-
-
run_workflow_with_json
-
Ejecuta un flujo de trabajo proporcionando los datos JSON del flujo de trabajo directamente.
# You should ask to agent like this. Run comfyui workflow with this { "3": { "inputs": { "seed": 156680208700286, "steps": 20, ... (workflow JSON example) }
-
5. Cómo Ejecutar
5.1 Usando UV (Recomendado)
-
Ejemplo
mcp.json:{ "mcpServers": { "comfyui": { "command": "uv", "args": [ "--directory", "PATH/MCP/comfyui", "run", "--with", "mcp", "--with", "websocket-client", "--with", "python-dotenv", "mcp", "run", "src/server.py:mcp" ] } } }
5.2 Usando Docker
- Descargar imágenes a una carpeta local con
download_imagepuede ser difícil ya que el contenedor Docker no comparte el sistema de archivos del host. - Cuando uses Docker, considera:
- Establece
RETURN_URL=falseen.envpara recibir datos de imagen como bytes. - Establece
COMFYUI_HOSTen.enva la dirección adecuada (por ejemplo,host.docker.internalo la IP de tu servidor). - Nota: Los payloads de imágenes grandes pueden exceder los límites de respuesta al usar datos binarios.
- Establece
5.2.1 Construir Imagen Docker
# First build image
docker image build -t mcp/comfyui .
{
"mcpServers": {
"comfyui": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"3001:3000",
"mcp/comfyui"
]
}
}
}
5.2.2 Usar Imágenes Existentes
También puedes usar una imagen preconstruida.
{
"mcpServers": {
"comfyui": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"3001:3000",
"overseer66/mcp-comfyui"
]
}
}
}
5.2.3 Usar Transporte SSE
-
Ejecuta el servidor SSE con Docker:
docker run -i --rm -p 8001:8000 overseer66/mcp-comfyui-sse -
Configura
mcp.json(cambia localhost a tu IP o dominio si es necesario):{ "mcpServers": { "comfyui": { "url": "http://localhost:8001/sse" } } }
NOTA: Al agregar nuevos flujos de trabajo como herramientas, necesitas reconstruir y volver a implementar las imágenes Docker para que estén disponibles.