Comfy MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Uses LangChain for creating simple LLM Prompt chains to generate image generation prompts from topics

  • Optionally connects to an Ollama server for prompt generation using LLMs hosted on Ollama

Servidor MCP cómodo

Un servidor que utiliza el marco FastMCP para generar imágenes basadas en indicaciones a través de un servidor Comfy remoto.

Descripción general

Este script configura un servidor que utiliza el framework FastMCP para generar imágenes basadas en indicaciones mediante un flujo de trabajo específico. Interactúa con un servidor Comfy remoto para enviar indicaciones y recuperar las imágenes generadas.

Prerrequisitos

  • Paquete uv y administrador de proyectos para Python.
  • Archivo de flujo de trabajo exportado desde Comfy UI. Este código incluye un ejemplo de Flux-Dev-ComfyUI-Workflow.json que se utiliza aquí solo como referencia. Deberá exportar desde su flujo de trabajo y configurar las variables de entorno según corresponda.

Puede instalar los paquetes necesarios para el desarrollo local:

uvx mcp[cli]

Configuración

Establezca las siguientes variables de entorno:

  • COMFY_URL para apuntar a la URL de su servidor Comfy.
  • COMFY_WORKFLOW_JSON_FILE para señalar la ruta absoluta del archivo json de exportación de API para el flujo de trabajo comfyui.
  • PROMPT_NODE_ID al id del nodo de solicitud de texto.
  • OUTPUT_NODE_ID al id del nodo de salida con la imagen final.
  • OUTPUT_MODE a url o file para seleccionar la salida deseada.

Opcionalmente, si tiene un servidor Ollama en ejecución, puede conectarse a él para generar mensajes.

  • OLLAMA_API_BASE a la URL donde se ejecuta ollama.
  • PROMPT_LLM al nombre del modelo alojado en ollama para la generación de solicitudes.

Ejemplo:

export COMFY_URL=http://your-comfy-server-url:port export COMFY_WORKFLOW_JSON_FILE=/path/to/the/comfyui_workflow_export.json export PROMPT_NODE_ID=6 # use the correct node id here export OUTPUT_NODE_ID=9 # use the correct node id here export OUTPUT_MODE=file

Uso

Se puede iniciar Comfy MCP Server con el siguiente comando:

uvx comfy-mcp-server

Ejemplo de configuración de escritorio de Claude

{ "mcpServers": { "Comfy MCP Server": { "command": "/path/to/uvx", "args": [ "comfy-mcp-server" ], "env": { "COMFY_URL": "http://your-comfy-server-url:port", "COMFY_WORKFLOW_JSON_FILE": "/path/to/the/comfyui_workflow_export.json", "PROMPT_NODE_ID": "6", "OUTPUT_NODE_ID": "9", "OUTPUT_MODE": "file", } } } }

Funcionalidad

generate_image(prompt: str, ctx: Context) -> Image | str

Esta función genera una imagen mediante una solicitud específica. Sigue estos pasos:

  1. Comprueba si todas las variables de entorno están configuradas.
  2. Carga una plantilla de aviso desde un archivo JSON.
  3. Envía el mensaje al servidor Comfy.
  4. Sondea al servidor para conocer el estado del procesamiento del mensaje.
  5. Recupera y devuelve la imagen generada una vez que está lista.

generate_prompt(topic: str, ctx: Context) -> str

Esta función genera un mensaje de generación de imágenes completo a partir de un tema específico.

Dependencias

  • mcp : para configurar el servidor FastMCP.
  • json : para manejar datos JSON.
  • urllib : Para realizar solicitudes HTTP.
  • time : para agregar retrasos en el sondeo.
  • os : Para acceder a las variables de entorno.
  • langchain : para crear una cadena de indicaciones LLM simple para generar indicaciones de generación de imágenes a partir del tema.
  • langchain-ollama : para módulos específicos de ollama para LangChain.

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

-
security - not tested
A
license - permissive license
-
quality - not tested

El servidor Comfy MCP utiliza el marco FastMCP para generar imágenes a partir de indicaciones mediante la interacción con un servidor Comfy remoto, lo que permite la creación automatizada de imágenes según las configuraciones del flujo de trabajo.

  1. Overview
    1. Prerequisites
      1. Configuration
        1. Usage
          1. Example Claude Desktop Config
        2. Functionality
          1. generate_image(prompt: str, ctx: Context) -> Image | str
          2. generate_prompt(topic: str, ctx: Context) -> str
        3. Dependencies
          1. License
            ID: h3eoexienb