使用说明

项目简介

comfy-ui-mcp-server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在桥接大型语言模型 (LLM) 和 ComfyUI。它允许 LLM 通过 MCP 协议调用 ComfyUI 的图像生成能力。该服务器将 ComfyUI 的功能封装成 MCP 工具,使得 LLM 客户端能够以标准化的方式请求图像生成服务。

主要功能点

  • 图像生成工具: 提供 'generate_image' 工具,LLM 客户端可以通过发送文本提示 (prompt) 和其他参数,指示 ComfyUI 生成图像。
  • ComfyUI 集成: 与本地运行的 ComfyUI 实例通信,利用 ComfyUI 强大的图像生成流程。
  • MCP 标准协议: 遵循 MCP 协议规范,易于与各种支持 MCP 协议的 LLM 客户端集成。
  • 简单的资源管理: 实现了基础的笔记存储功能(尽管在当前版本中可能不是核心功能,但作为示例展示了资源管理能力)。

安装步骤

  1. 安装 Python 环境: 确保您的系统已安装 Python 3.8 或更高版本。
  2. 安装 comfy-ui-mcp-server: 您可以使用 'uv' 或 'pip' 包管理器进行安装。推荐使用 'uv' 以获得更快的安装速度。
    uv pip install comfy-ui-mcp-server
    # 或
    pip install comfy-ui-mcp-server
  3. 安装 ComfyUI (如果尚未安装): comfy-ui-mcp-server 依赖于本地运行的 ComfyUI 实例。请根据 ComfyUI 的官方文档安装并运行 ComfyUI。确保 ComfyUI 服务器正在运行并且可以通过配置的地址访问。

服务器配置

MCP 客户端(例如 Claude 桌面应用)需要配置才能连接到 comfy-ui-mcp-server。以下是配置示例,您需要将其添加到 MCP 客户端的配置文件中。请注意,具体的配置文件位置和格式可能因 MCP 客户端而异,以下以 Claude 桌面应用为例。

Claude 桌面应用配置示例 (Development/Unpublished Servers Configuration):

在 Claude 桌面应用的配置文件 'claude_desktop_config.json' 中,您需要添加 'mcpServers' 配置项。以下是一个示例配置,假设 comfy-ui-mcp-server 仓库位于 'E:\Claude\comfy-ui-mcp-server' 目录。

"mcpServers": {
  "comfy-ui-mcp-server": {
    "command": "uv",
    "args": [
      "--directory",
      "E:\\Claude\\comfy-ui-mcp-server",
      "run",
      "comfy-ui-mcp-server"
    ]
  }
}

配置参数说明:

  • '"comfy-ui-mcp-server"': 服务器名称,您可以在 MCP 客户端中用这个名称来引用该服务器。
  • '"command": "uv"': 启动服务器的命令。这里使用 'uv',它是一个快速的 Python 包安装和运行工具。如果您的环境中没有 'uv',可以替换为 'python'。
  • '"args"': 启动命令的参数列表。
    • '"--directory"': 指定服务器代码所在的目录。请根据您的实际仓库路径修改 '"E:\Claude\comfy-ui-mcp-server"'。
    • '"run"': 'uv run' 命令用于运行 Python 包。
    • '"comfy-ui-mcp-server"': 指定要运行的 Python 包名称,即 'comfy_ui_mcp_server' 包。

如果使用 'python' 作为 'command',配置可能如下:

"mcpServers": {
  "comfy-ui-mcp-server": {
    "command": "python",
    "args": [
      "-m",
      "comfy_ui_mcp_server"
    ]
  }
}

重要提示:

  • 请根据您的实际环境调整 'command' 和 'args' 配置。
  • 确保 ComfyUI 服务器已启动并运行,并且 comfy-ui-mcp-server 可以访问到 ComfyUI 服务器的地址 (默认为 '127.0.0.1:8188')。您可以通过设置环境变量 'COMFY_SERVER' 来修改 ComfyUI 服务器地址。

基本使用方法

  1. 启动 MCP 服务器: 根据上述配置,MCP 客户端会在需要时自动启动 comfy-ui-mcp-server。您也可以手动在命令行中进入 comfy-ui-mcp-server 仓库目录,并运行 'uv run comfy-ui-mcp-server' 或 'python -m comfy_ui_mcp_server' 来手动启动服务器。
  2. 在 MCP 客户端中使用图像生成工具: 在支持 MCP 协议的 LLM 客户端中,您应该能够看到 'generate_image' 工具。您可以使用自然语言指示 LLM 调用该工具,并提供图像描述 (prompt) 以及其他可选参数,例如负面提示、种子、图像尺寸等。
  3. 查看生成的图像: 生成的图像将通过 MCP 协议返回给 LLM 客户端。具体的展示方式取决于 LLM 客户端的功能。同时,图像也会被 ComfyUI 保存到本地文件系统中(具体路径取决于 ComfyUI 的配置)。

示例对话流程 (在支持 MCP 客户端中):

用户: "请生成一张猫咪在星空下弹钢琴的图片。"

LLM 客户端 (识别到用户请求图像生成,并调用 'generate_image' 工具):

  • 工具名称: 'generate_image'
  • 参数:
    • 'prompt': "猫咪在星空下弹钢琴"
    • 'negative_prompt': "bad hands, bad quality" (默认负面提示)
    • ... (其他默认参数)

comfy-ui-mcp-server (接收到工具调用请求):

  • 将请求转发给本地 ComfyUI 服务器。
  • 等待 ComfyUI 生成图像。
  • 将生成的图像数据通过 MCP 协议返回给 LLM 客户端。

LLM 客户端 (接收到图像数据):

  • 向用户展示生成的猫咪弹钢琴的图片。

信息

分类

AI与计算