
ComfyUI MCP
io.github.GermaniU由 GitHub 帳號 GermaniU 發布v0.1.1更新於 Oct 31, 2026
MCP server that wraps ComfyUI (SDXL/Wan 2.2) for image and short-video generation.
概覽
本機 MCP 伺服器,包裝自架的 ComfyUI 引擎,讓助理透過提示詞與預設集產生 SDXL 圖片與 Wan 2.2 短影片。
- 可以做什麼
- 以文字提示詞產生圖片,可選預設集、畫面比例、隨機種子、批次數量,以及臉部細節或 JPEG 預覽
- 用 img2img 與降噪強度對已產生的圖片做變體
- 產生 1 至 5 秒的 MP4 影片,支援文生影片、以產生圖片為起點的動畫,以及草稿模式
- 檢視後端狀態:列出可用的檢查點、LoRA 與預設集,查詢 ComfyUI 版本、顯示記憶體用量與佇列
- 為先前產生的檔案建立區域網路下載連結
- 適用情境
- 當你已在自己的 GPU 上執行 ComfyUI,希望助理直接產出圖片或短影片,而不必學習節點圖或在用戶端安裝 PyTorch 時使用。適合在同一張 12 GB 顯示卡上讓 LLM 與 ComfyUI 共用的區域網路環境。
- 執行需求
- 需要可連線的 ComfyUI 後端(COMFYUI_URL,預設回送埠 8188),並已另行安裝 SDXL 檢查點,影片還需 Wan 2.2 模型;下載連結需設定 COMFYUI_PUBLIC_URL。伺服器本身以容器映像執行,或以 Python 3.11 以上搭配 uv 安裝。可選 MCP_AUTH_TOKEN、MCP_HOST、MCP_PORT、CORS 與逾時變數。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 ComfyUI MCP,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
[ComfyUI MCP — Generación de imágenes para agentes IA vía Model Context Protocol]
English · Español
ComfyUI MCP — Generación de imágenes para agentes IA vía Model Context Protocol (MCP)
Conecta la generación de imágenes SDXL a cualquier agente IA en tu red. Servidor MCP open source que expone inferencia de ComfyUI (SDXL / RTX 3060) a Claude Code, Cursor, Windsurf, Hermes Gateway y cualquier cliente compatible con Model Context Protocol. FastMCP HTTP/SSE + GPU Arbiter, cero dependencias en clientes, 100% en tu hardware.
[License: MIT] [MCP] [Python] [CI] [FastMCP] [PRs Welcome]
Tags: mcp-server · comfyui · sdxl · image-generation · ai-agents · fastmcp · claude-code · cursor · hermes-gateway · gpu-arbiter · local-first · self-hosted
[El agente genera una imagen real vía MCP en la RTX 3060]
El agente pide una imagen con un preset y recibe la URL de descarga — la GPU trabaja en el server, el cliente no instala PyTorch.
💡 Por qué existe
Generar imágenes en entornos multi-agente requiere instalar bibliotecas pesadas de PyTorch, GPUs dedicadas y configuraciones complejas en cada máquina cliente. ComfyUI MCP resuelve esto actuando como un adaptador middleware HTTP/SSE desacoplado:
- 🚀 Cero Instalación Local: Cualquier cliente o gateway consumirá la generación de imágenes vía HTTP/SSE en puerto
8201sin instalar PyTorch ni bajar modelos SDXL localmente. - 🧠 GPU Arbiter Inteligente: Alterna automáticamente entre
llama-server(LLMs) yComfyUIen GPUs de 12GB (RTX 3060) sin colisiones de VRAM. - 🎯 Presets Profesionales: Generación lista para producción con presets como
producto(RealVisXL V4.0) orealista(Juggernaut XL).
🏗️ Arquitectura y Deslinde de Componentes
⚠️ IMPORTANTE: Entender los Límites del Sistema
comfyui-mcpes únicamente la capa de transporte e interfaz MCP. No incluye el motor de inferencia de ComfyUI ni los archivos de peso de modelos. Para la guía de despliegue del servidor backend en el host Linux/Pop!_OS, consulta docs/SERVER_SETUP.md y docs/ARCHITECTURE.md.
📦 Instalación Rápida
Requisitos
- Python 3.11+
uv≥ 0.13.4 (recomendado) opip≥ 26.2.2: las versiones anteriores aún confían en la CA emSign comprometida (GHSA-6q48-6c7w-9gw2).pyproject.tomlexige el mínimo de uv ([tool.uv] required-version).
Clonar e Instalar
⚙️ Configuración (Variables de Entorno)
Crea un archivo .env o exporta las siguientes variables:
Seguridad: sin
MCP_AUTH_TOKEN, cualquier equipo de la LAN —o una página web abierta en un navegador de la LAN, con CORS*— puede generar imágenes y ocupar la GPU. Definir un token es lo recomendado salvo en redes totalmente confiables.
🛠️ Herramientas Expuestas (Tool Reference)
1. generate_image (txt2img)
Genera imágenes desde un prompt textual usando SDXL.
- Parámetros:
prompt(string, requerido): Descripción de la imagen (en inglés funciona mejor).preset(string, opcional):producto,realista,rapidooanime. Default:"producto".aspect(string, opcional):1:1,4:5,5:4,9:16,16:9,3:2,2:3(~1MP). Default:"1:1".negative_prompt(string, opcional): Elementos a excluir. Default: negativo genérico de calidad.seed(integer, opcional): Semilla para reproducibilidad. Default: aleatoria.batch(integer, opcional): Imágenes por llamada (1-4). Default:1.checkpoint,lora,lora_strength,steps,cfg(opcionales): Sobreescriben los valores del preset.filename_prefix(string, opcional): Prefijo del archivo de salida. Default:"mcp".detail_face(bool, opcional): Pasada de FaceDetailer (requiere Impact Pack). Default:false.preview(bool, opcional): Devuelve además una miniatura JPEG (~512px) para que el modelo vea el resultado. Solo para clientes con visión. Default:false.
2. img2img (Image-to-Image)
Varía una imagen ya generada (en output/ de ComfyUI) con un nivel de denoise.
- Parámetros:
image_filename(string, requerido): Nombre del archivo generado (ej:mcp_00001_.png).prompt(string, opcional): Instrucción de transformación. Vacío = variación visual pura.denoise(float, opcional):0.0idéntica,1.0completamente nueva. Default:0.55.preset(string, opcional): Default:"realista".negative_prompt,seed,checkpoint,lora,lora_strength,steps,cfg,filename_prefix,preview(opcionales).
3. generate_video (Wan 2.2)
Genera MP4 de 1-5 s. Sin imagen usa Wan 2.2 TI2V 5B (~720p, 24 fps, 30 pasos uni_pc/simple, CFG 5, shift 8); con image_filename recomienda Wan 2.2 A14B I2V GGUF (16 fps, 480×832 o 832×480). En benchmarks locales de 5 s/121 frames, el 5B fp8 tardó 1620.7–1903.6 s (~27–31.7 min) en dos escenas/orientaciones; A14B I2V, 489.2 s (~8.2 min) para 81 frames con una imagen de mapache. Son mediciones, no garantías para otros inputs ni para draft. Requiere modelos separados (ver SERVER_SETUP). No se ha probado aún esta integración MCP contra la GPU real.
- Parámetros:
prompt(string, requerido): Escena y movimiento, preferentemente en inglés.aspect(string, opcional): A14B16:9(832×480) o9:16(480×832); 5B16:9(1280×704),9:16(704×1280) o1:1(960×960). Default"16:9"; A14B explícito rechaza1:1yautoelige 5B.seconds(integer, opcional): 1-5 (se recorta fuera del rango); A14B 16 fps + 1 frame (5 s = 81), 5B 24 fps + 1 (5 s = 121). Default3.image_filename(string, opcional): Imagen generada a animar desde[output]; conviene igualar la orientación.autoelige A14B solo con imagen, parámetros compatibles y nodos/pesos disponibles en ComfyUI; de lo contrario usa 5B e indica el motivo. Sin imagen usa 5B.model(string, opcional):auto(default),a14b(requiere imagen) o5b(conserva la ruta I2V previa y T2V). No cambia los argumentos anteriores.draft(bool, opcional): Solo 5B: mantiene la resolución ~720p y recorta a un máximo de 2 s (49 frames a 24 fps); no reduce resolución ni tiene tiempo medido. A14B rechazadraft=true.steps,cfg: A14B fija4y1con LoRA lightx2v; valores incompatibles con A14B explícito devuelven error, mientrasautoelige 5B. 5B usa 30 y 5 por defecto; valores explícitos los sustituyen.negative_prompt,seed,filename_prefix(opcionales). Default de prefijo"mcp-video".preview(bool, opcional): Miniatura JPEG del primer frame.
Los timeouts se configuran al iniciar el servidor con las variables anteriores: cuentan desde el envío, incluyendo cola, carga y generación; no garantizan un tiempo de respuesta ni una cancelación efectiva. Al vencer se intenta retirar el prompt de la cola e interrumpir ComfyUI, pero el trabajo puede continuar y la interrupción de ComfyUI puede afectar otra ejecución concurrente. Ajusta los límites según carga real y timeout del cliente MCP. negative_prompt=null usa el negativo por defecto; "" lo desactiva.
4. list_models
Retorna la lista de checkpoints, LoRAs y presets disponibles en la instancia de ComfyUI.
5. comfy_health
Obtiene el estado de salud del backend: versión de ComfyUI, uso de VRAM de la GPU y tareas en cola.
6. comfy_view_url
Construye la URL LAN de descarga directa para un archivo generado previamente dado su filename y subfolder.
🎨 Matriz de Presets
🧭 ¿Y los otros servidores MCP de ComfyUI?
Hay tres familias, y resuelven problemas distintos. Este no compite con las otras dos: las complementa.
En una frase:
- Si necesitas control total del grafo de nodos → un servidor de workflow graph (p. ej.
comfy-pilot). - Si no tienes GPU y no te importa pagar por imagen → una API cloud (Flux, Nano Banana, GPT-image).
- Si tienes la GPU y quieres generar sin aprender ComfyUI, compartiendo la tarjeta con tu LLM → este.
🔗 Integración con Clientes MCP
Configuración para Claude Code CLI (~/.claude.json)
Configuración para Hermes Gateway (~/.hermes/config.yaml)
Configuración para Cursor / Windsurf / Claude Desktop
Añade un servidor MCP de tipo SSE / HTTP con la URL http://<LAN_IP>:8201/mcp.
📋 Componentes Faltantes y Roadmap (Server Gaps)
Dado que este repo representa la capa MCP, los siguientes elementos están fuera de este repositorio y deben configurarse en el servidor host:
- Servidor Backend ComfyUI: Requiere instalación independiente de Python + PyTorch CUDA.
- Descarga de Checkpoints: Los modelos SDXL deben descargarse manualmente en el directorio
models/checkpoints/del servidor ComfyUI. - GPU Arbiter Script: El script
gpu-broker.shy las reglas/etc/sudoers.d/gpu-arbiterdeben residir en la máquina Linux con la GPU. - Futuras Mejoras del MCP:
- Soporte para inyección de workflows JSON personalizados dinámicos.
- Cancelación y limpieza de colas de procesamiento vía tool MCP.
- Conexión por WebSocket para reporte de progreso en tiempo real.
🧪 Pruebas Unitarias
📄 Licencia
Este código MCP está bajo la Licencia MIT (LICENSE); no licencia los modelos ni los distribuye. Los repositorios originales de Wan 2.2 TI2V-5B y Wan 2.2 I2V-A14B declaran Apache 2.0 para sus modelos. Los empaquetados ComfyUI, GGUF y LoRA de terceros pueden tener términos propios: verifica las licencias de cada distribución antes de descargarlos, redistribuirlos o usarlos comercialmente. Requisitos y nombres de archivos en SERVER_SETUP.
來源:README.md,提交 2467770
工具
0版本歷史
1- v0.1.1最新Oct 17, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分