ComfyUI MCP Server

Um servidor de geração de imagens que se conecta a uma instância local do ComfyUI via sua API, suportando fluxos de trabalho din

Documentação

MseeP.ai Security Assessment Badge

Serviço ComfyUI MCP

English 简体中文 Python 3.12+ License

Este é um serviço de geração de imagens ComfyUI baseado no Model Context Protocol (MCP), que gera imagens chamando uma instância local do ComfyUI via API.

Recursos

  • Fornece serviço de geração de imagens via protocolo MCP, permitindo liberdade de geração de imagens por linguagem natural.
  • Suporta substituição dinâmica de parâmetros como prompts e dimensões no fluxo de trabalho.
  • Carrega automaticamente os arquivos de fluxo de trabalho do diretório workflows como recursos.

Registro de novos recursos

  • [2025-06-29] Suporte ao fluxo de trabalho de edição de imagens kontext edit-image-85457440acc11a9f386f8ef284fd62f2.jpg
  • [2025-05-11] Suporte à configuração dinâmica do diretório de arquivos de fluxo de trabalho
  • [2025-05-09] Adicionado método de construção via docker, suporte a Python 3.12+
  • [2025-05-07] Adicionado método de construção via pip
  • [2025-05-06] Alterado o diretório do projeto de src/hh para src/hh_mcp_comfyui, adicionado método de construção via uvx
  • [2025-04-26] Adicionados fluxos de trabalho de exemplo para imagem para imagem e remoção de fundo, e suporte à ferramenta de imagem para imagem
  • [2025-04-20] Adicionada ferramenta de geração de texto para imagem

Efeitos

  • Efeito de uso no Cherry Studio image-b8f946109d63fe1ccb5e2d63933e3f9e.png

  • Efeito de uso no Cline cline_gen_image-48d8515e0b59cd313879c62a1546162d.png ComfyUI_00020_-d9171f87fc9e67fcc1966cdbfb952a0c.png

Instalação de dependências

1. Certifique-se de ter Python 3.12+ instalado

2. Use uv para gerenciar o ambiente Python:

  • Instalar uv:
    # On macOS and Linux.
    $ curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # On Windows.
    $ powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    
    # 更新uv(非必要操作):
    $ uv self update
    

Testar execução do serviço

  • Método uvx
    $ uvx hh-mcp-comfyui
    
    INFO:hh_mcp_comfyui.server:Scanning for workflows in: C:\Users\tianw\AppData\Local\uv\cache\archive-v0\dp4MTo0f1qL0DdYF_BYCL\Lib\site-packages\hh_mcp_comfyui\workflows
    INFO:hh_mcp_comfyui.server:Starting ComfyUI MCP Server...
    
  • Método pip
    $ pip install hh_mcp_comfyui
    
    $ python -m hh_mcp_comfyui
    
    INFO:hh_mcp_comfyui.server:Scanning for workflows in: F:\Python\Python313\Lib\site-packages\hh_mcp_comfyui\workflows
    INFO:hh_mcp_comfyui.server:Starting ComfyUI MCP Server...
    

Se as informações acima aparecerem, o serviço foi iniciado com sucesso

Como usar

Certifique-se de que a instância local do ComfyUI esteja em execução (endereço padrão: http://127.0.0.1:8188) Endereço de instalação do ComfyUI

Como usar em clientes como Cherry Studio, Cline, Cursor, etc.

Configuração do serviço MCP uvx
{
  "mcpServers": {
    "hh-mcp-comfyui": {
      "command": "uvx",
      "args": [
        "hh-mcp-comfyui@latest"
      ],
      "env": {
        "COMFYUI_API_BASE": "http://127.0.0.1:8188",
        "COMFYUI_WORKFLOWS_DIR": "/path/hh-mcp-comfyui/workflows"
      }
    }
  }
}
Configuração do serviço MCP pip

É necessário executar primeiro no terminal: pip install hh_mcp_comfyui

{
  "mcpServers": {
    "hh-mcp-comfyui": {
      "command": "python",
      "args": [
        "-m",
        "hh_mcp_comfyui"
      ],
      "env": {
        "COMFYUI_API_BASE": "http://127.0.0.1:8188",
        "COMFYUI_WORKFLOWS_DIR": "/path/hh-mcp-comfyui/workflows"
      }
    }
  }
}
Configuração do serviço MCP docker

Pré-requisito: docker instalado

{
  "mcpServers": {
    "hh-mcp-comfyui": {
      "command": "docker",
      "args": [
          "run",
          "--net=host",
          "-v",
          "/path/hh-mcp-comfyui/workflows:/app/workflows",
          "-i",
          "--rm",
          "zjf2671/hh-mcp-comfyui:latest"
      ],
      "env": {
        "COMFYUI_API_BASE": "http://127.0.0.1:8188"
      }
    }
  }
}

Copiar fluxos de trabalho de exemplo para o diretório de fluxos de trabalho especificado:

(Nota: Use o método uvx ou pip abaixo para encontrar o local do diretório de fluxos de trabalho da sua instalação, adicione os fluxos de trabalho de exemplo e reinicie o serviço MCP)

  • uvx

    $ uvx hh-mcp-comfyui
    

    image-2-f89caf964efbccdad7b6fa2672d1cac0.png

  • pip

    #首先安装依赖
    $ pip install hh_mcp_comfyui
    $ python -m hh_mcp_comfyui
    

    image-3-03a069f40492fea9947a351b8707aa3f.png

Teste

Use o MCP Inspector para testar as ferramentas do servidor

  • Método uvx
    $ npx @modelcontextprotocol/inspector uvx hh-mcp-comfyui
    
  • Método pip
    $ pip install hh_mcp_comfyui
    $ npx @modelcontextprotocol/inspector python -m hh_mcp_comfyui
    
  • Método docker
    $ npx @modelcontextprotocol/inspector docker run --net=host -i --rm zjf2671/hh-mcp-comfyui
    

Em seguida, clique em conectar como mostrado na figura para depurar: image-1-44c6a003ee317093afe5a61cfe028720.png

Notas de uso (atenção especial para quem nunca usou ComfyUI)

  • O fluxo de trabalho padrão é t2image_bizyair_flux
  • O tamanho padrão da imagem é 1024x1024
  • Ao iniciar, o serviço carrega automaticamente todos os arquivos de fluxo de trabalho JSON do diretório workflows
  • Se você estiver usando os fluxos de trabalho de exemplo deste projeto, precisará baixar um plugin no ComfyUI. Para detalhes, consulte: Tutorial de instalação do plugin para fluxos de trabalho de exemplo
  • Se usar seus próprios fluxos de trabalho do ComfyUI, primeiro garanta que eles funcionem corretamente no ComfyUI, depois exporte o formato JSON (API) e coloque-os no diretório /path/hh_mcp_comfyui/workflows local

Adicionar novo fluxo de trabalho

  1. Coloque o arquivo JSON do fluxo de trabalho no diretório /path/hh_mcp_comfyui/workflows

    Se for iniciado via uvx ou pip, consulte a seção acima 《Copiar fluxos de trabalho de exemplo para o diretório especificado》 para saber como usar

  2. Reinicie o serviço para carregar automaticamente o novo fluxo de trabalho

Desenvolvimento

Estrutura do projeto

.
├── .gitignore
├── .python-version
├── pyproject.toml
├── README.md
├── uv.lock
├── example/              # 示例工作流目录
│   └── workflows/
│       ├── i2image_bizyair_sdxl.json
│       ├── t2image_bizyair_flux.json
│       ├── i2image_cogview4.json
│       └── t2image_sd1.5.json
├── src/                  # 源代码目录
│   └── hh_mcp_comfyui/
│       ├── comfyui_client.py    # ComfyUI客户端实现
│       ├── server.py            # MCP服务主文件
│       └── workflows/           # 工作流文件目录

Inicializar o ambiente de desenvolvimento do projeto:

# Clone the repository.
$ git clone https://github.com/zjf2671/hh-mcp-comfyui.git

$ cd hh-mcp-comfyui

# Initialized venv
$ uv venv

# Activate the virtual environment.
$ .venv\Scripts\activate

# Install dependencies.
$ uv lock
Resolved 30 packages in 1ms

# sync dependencies.
$ uv sync
Resolved 30 packages in 2.54s
Audited 29 package in 0.02ms

Verificar se o serviço está funcionando

$ uv --directory 你本地安装目录/hh-mcp-comfyui run hh-mcp-comfyui

INFO:__main__:Scanning for workflows in: D:\cygitproject\hh-mcp-comfyui\src\hh_mcp_comfyui\workflows
INFO:__main__:Registered resource: workflow://t2image_bizyair_flux -> t2image_bizyair_flux.json
INFO:__main__:Starting ComfyUI MCP Server...

Usar o MCP Inspector para testar as ferramentas do servidor

$ npx @modelcontextprotocol/inspector uv --directory 你本地安装目录/hh-mcp-comfyui run hh-mcp-comfyui

Configuração MCP

{
  "mcpServers": {
    "hh-mcp-comfyui": {
      "command": "uv",
      "args": [
        "--directory",
        "项目绝对路径(例如:D:/hh-mcp-comfyui)",
        "run",
        "hh-mcp-comfyui"
      ],
      "env": {
        "COMFYUI_API_BASE": "http://127.0.0.1:8188",
        "COMFYUI_WORKFLOWS_DIR": "/path/hh-mcp-comfyui/workflows"
      }
    }
  }
}

Contribuição

  1. Faça um fork do projeto
  2. Crie um branch de recurso (git checkout -b feature/AmazingFeature)
  3. Faça commit das alterações (git commit -m 'Add some AmazingFeature')
  4. Envie para o branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

Se tiver problemas, entre em contato comigo pelo WeChat Official Account:

公众号二维码

👆 Escaneie para seguir, descubra mais coisas divertidas!