Skip to main content

基于Model Context Protocol (MCP)的ComfyUI图像生成服务,通过API调用本地ComfyUI实例生成图片,实现自然语言生图自由

Project description

ComfyUI MCP 服务

English 简体中文 Python 3.12+ License smithery badge

这是一个基于Model Context Protocol (MCP)的ComfyUI图像生成服务,通过API调用本地ComfyUI实例生成图片。

功能特性

  • 通过MCP协议提供图像生成服务,实现自然语言生图自由
  • 支持动态替换工作流中的提示词和尺寸等参数
  • 自动加载workflows目录下的工作流文件作为资源

新增功能记录

  • [2025-05-11] 支持工作流文件目录动态配置
  • [2025-05-09] 增加docker构建方式,支持Python 3.12+
  • [2025-05-07] 增加pip构建方式
  • [2025-05-06] 把项目目录src/hh修改成src/hh_mcp_comfyui,增加uvx构建方式
  • [2025-04-26] 增加图生图和移除背景样例工作流及支持图生图工具
  • [2025-04-20] 加入文生图生成工具

效果

  • Cherry Studio中使用效果 alt text

  • Cline中使用效果 alt text alt text

安装依赖

1. 确保已安装Python 3.12+

2. 使用uv管理Python环境:

  • 安装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
    
  • 初始化项目环境:
    # 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
    

测试运行服务

  • uv方式

    $ 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...
    
  • 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...
    
  • 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...
    

出现上面的信息表示服务启动成功

样例工作流copy到指定工作流目录:

  • uv

    # 进入项目目录
    $ cd hh-mcp-comfyui
    
    # 创建工作流没有这个目录执行下面进行创建(这个目录位置不能动)
    $ mkdir workflows
    
    #复制样例工作的工作流目录
    $ cp .\example\workflows\* .\workflows\
    

    特别注意:如果是使用的下面的uvx或者pip方式启动的话,请找你本地对应的安装目录把样例工作流添加进去,然后重启你的MCP服务,可以使用如下图方式找到你的安装目录的位置)

  • uvx

    $ uvx hh-mcp-comfyui
    

    alt text

  • pip

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

    alt text

使用方法

必须确保本地ComfyUI实例正在运行(默认地址: http://127.0.0.1:8188) ComfyUI安装地址

Cherry Studio、Cline、Cursor等客户端的使用方式

uv 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"
      }
    }
  }
}
uvx MCP服务配置
{
  "mcpServers": {
    "hh-mcp-comfyui": {
      "command": "uvx",
      "args": [
        "hh-mcp-comfyui"
      ],
      "env": {
        "COMFYUI_API_BASE": "http://127.0.0.1:8188",
        "COMFYUI_WORKFLOWS_DIR": "/path/hh-mcp-comfyui/workflows"
      }
    }
  }
}
pip MCP服务配置

需要先执行命令窗口先执行: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"
      }
    }
  }
}
docker MCP服务配置

*前提是已安装docker

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

测试

使用MCP Inspector测试服务端工具

  • uv方式
    $ npx @modelcontextprotocol/inspector uv --directory 你本地安装目录/hh-mcp-comfyui run hh-mcp-comfyui
    
  • uvx方式
    $ npx @modelcontextprotocol/inspector uvx hh-mcp-comfyui
    
  • pip方式
    $ pip install hh_mcp_comfyui
    $ npx @modelcontextprotocol/inspector python -m hh_mcp_comfyui
    
  • docker方式
    $ npx @modelcontextprotocol/inspector docker run --net=host -i --rm zjf2671/hh-mcp-comfyui
    

然后点击连接如图即可调试: alt text

扩展

添加新工作流

  1. 将工作流JSON文件放入/path/hh_mcp_comfyui/workflows目录中

    如果是uvx和pip启动方式请看上面 样例工作流copy到指定工作流目录 的使用方式

  2. 重启服务自动加载新工作流

开发者自定义参数

修改server.py中的generate_image工具定义来添加新参数

项目结构

.
├── .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/           # 工作流文件目录

使用注意事项(针对没有用过comfyui的特别注意)

  • 默认工作流为t2image_bizyair_flux
  • 图片尺寸默认为1024x1024
  • 服务启动时会自动加载workflows目录下的所有JSON工作流文件
  • 如果你使用的是本项目中的样例工作流需要在comfyui中下载个插件,详细操作请查看:样例工作流插件安装教程
  • 如果使用你本地的comfyui工作流的话,先要保证你的工作流能在comfyui正常运行,然后需要导出(API)的JSON格式,并放入src/workflows目录中

贡献

  1. Fork项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开Pull Request

如有问题可以到公众号中联系我:

公众号二维码

👆 扫码关注,发现更多好玩的!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hh_mcp_comfyui-2025.4.20.4.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hh_mcp_comfyui-2025.4.20.4-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file hh_mcp_comfyui-2025.4.20.4.tar.gz.

File metadata

File hashes

Hashes for hh_mcp_comfyui-2025.4.20.4.tar.gz
Algorithm Hash digest
SHA256 e2e93123e292dbef701292384b967587199cc38a66a386b1d770510e415c44bb
MD5 e7062d3b45fd5925197d3d4cd60f8a82
BLAKE2b-256 eb5b610106dd8b85d245919f8661114280f5a02de2482b32c5e83469b34cddc4

See more details on using hashes here.

File details

Details for the file hh_mcp_comfyui-2025.4.20.4-py3-none-any.whl.

File metadata

File hashes

Hashes for hh_mcp_comfyui-2025.4.20.4-py3-none-any.whl
Algorithm Hash digest
SHA256 5b327e3e64e1645dbd4166d8051cb0b25198b4236c2fd78ff6d707df4894ad63
MD5 d2cc1341ae25649416dc8ef525307d6b
BLAKE2b-256 6734722a36b92ee77779f87091ec76fd351cb32d47708555361d8996c987e7e4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page