comfyui-mcp est stdio — il ne peut pas être un service compose
comfyui-mcp est un serveur MCP stdio. Il n’a pas de port et n’expose
rien sur le réseau : le client MCP (Claude Code, Cursor, un pont MCP, …)
le lance comme un processus enfant et lui parle via stdin/stdout.
Donc dans un docker-compose.yml, un service comfyui-mcp est une impasse
— il démarrerait, n’aurait personne à qui parler, et sortirait. Ça piège
presque tout le monde qui branche ComfyUI dans compose, parce qu’un fichier
compose correct a l’air de « manquer » un service. Ce n’est pas le cas : ce
que vous composez, c’est ComfyUI, et le serveur MCP tourne là où tourne
votre client MCP, en atteignant ComfyUI en HTTP simple via COMFYUI_URL.
La commande
npx qui lance le serveur exige Node.js >= 22 sur la
machine (ou le conteneur) qui l’exécute — le principal piège des images de
base allégées.Les deux formes de déploiement
npx local + ComfyUI local
Le défaut. ComfyUI tourne directement sur votre machine ; le client MCP
lance
npx -y comfyui-mcp@latest, qui détecte automatiquement
l’installation locale et son port. Aucune config nécessaire. Voir
Installation.npx local + ComfyUI dockerisé / distant
ComfyUI tourne dans un conteneur (ou sur un autre hôte) ; le client MCP
lance encore
comfyui-mcp en local, pointé vers lui avec COMFYUI_URL
(ou --comfyui-url). Une URL non-loopback met le serveur en mode
distant : tous les outils HTTP marchent — y compris l’installation de
nœuds personnalisés, qui passe par l’API HTTP de ComfyUI-Manager. Les
outils qui ont besoin du système de fichiers ou d’un processus local
(installer ComfyUI lui-même, les opérations comfy-cli, lire les logs,
supprimer des fichiers de modèles) renvoient une erreur claire.Exemple : ComfyUI dans docker-compose
Un exemple prêt à l’emploi vit dans le dépôt àdocker/compose/
— ComfyUI comme service (NVIDIA par défaut, variante AMD/ROCm commentée),
montages bind pour les modèles et les sorties, et la config client dans les
commentaires d’en-tête :
localhost :
comfyui-mcp, donc
son image doit contenir Node.js >= 22 avec le serveur lançable via
npx -y comfyui-mcp@latest. Les ponts sont des logiciels tiers — configurez
le vôtre d’après sa propre doc ; le fichier compose d’exemple a une
ébauche commentée.
Notes AMD / ROCm
- Utilisez le tag d’image
yanwk/comfyui-boot:rocmet décommentez le passage ROCm dans l’exemple — les morceaux que les gens manquent :devices: [/dev/kfd, /dev/dri],group_add: [video],security_opt: [seccomp:unconfined]. comfyui-mcplui-même n’a aucune dépendance GPU/CUDA — les hôtes ROCm sont entièrement pris en charge. Le panneau agent est une extension ComfyUI, pas un service, et il est optionnel quand un frontend externe est votre surface.docker/runpod/dans ce dépôt est une image cloud RunPod orientée CUDA (voir Déploiement cloud), pas une image ComfyUI à usage général — les utilisateurs AMD ne devraient pas commencer là.