使用说明
ComfyUI MCP服务器
1.概述
- 用于将ComfyUI与MCP集成的服务器实现。
- ⚠️ 重要提示:此服务器需要正在运行的ComfyUI服务器。
- 您必须托管自己的ComfyUI服务器,
- 或者可以访问现有的ComfyUI服务器地址。
2.调试
2.1 ComfyUI调试
python src/test_comfyui.py
2.2 MCP调试
mcp dev src/server.py
3.安装和配置
3.1 ComfyUI配置
-
编辑
src/.env要设置ComfyUI主机和端口:COMFYUI_HOST=localhost COMFYUI_PORT=8188
3.2添加自定义工作流
- 要添加新工具,请将工作流JSON文件放置在
workflows目录,并将它们声明为系统中的新工具。
4.内置工具
-
text_to_image
- 仅返回生成图像的URL。
- 要获取实际图像,请执行以下操作:
- 使用
download_image工具,或 - 直接在浏览器中访问URL。
- 使用
-
download_image
- 下载其他工具生成的图像(如
text_to_image)使用图像URL。
- 下载其他工具生成的图像(如
-
run_workflow_with_file
-
通过提供工作流JSON文件的路径来运行工作流。
# You should ask to agent like this. Run comfyui workflow with text_to_image.json -
CursorAI的示例图像
-
-
运行工作流
-
通过直接提供工作流JSON数据来运行工作流。
# You should ask to agent like this. Run comfyui workflow with this { "3": { "inputs": { "seed": 156680208700286, "steps": 20, ... (workflow JSON example) }
-
5.如何跑步
5.1使用紫外线(推荐)
-
示例
mcp.json:{ "mcpServers": { "comfyui": { "command": "uv", "args": [ "--directory", "PATH/MCP/comfyui", "run", "--with", "mcp", "--with", "websocket-client", "--with", "python-dotenv", "mcp", "run", "src/server.py:mcp" ] } } }
5.2使用Docker
- 将图像下载到本地文件夹
download_image这可能很困难,因为Docker容器不共享主机文件系统。 - 使用Docker时,请考虑:
- 集
RETURN_URL=false在.env以字节形式接收图像数据。 - 集
COMFYUI_HOST在.env发送到适当的地址(例如。,host.docker.internal或服务器的IP)。 - 注意:使用二进制数据时,大型图像有效载荷可能会超过响应限制。
- 集
5.2.1构建Docker镜像
# First build image
docker image build -t mcp/comfyui .
{
"mcpServers": {
"comfyui": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"3001:3000",
"mcp/comfyui"
]
}
}
}
5.2.2使用现有图像
您还可以使用预构建的映像。
{
"mcpServers": {
"comfyui": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-p",
"3001:3000",
"overseer66/mcp-comfyui"
]
}
}
}
5.2.3使用SSE传输
-
使用Docker运行SSE服务器:
docker run -i --rm -p 8001:8000 overseer66/mcp-comfyui-sse -
配置
mcp.json(如果需要,将localhost更改为您的IP或域):{ "mcpServers": { "comfyui": { "url": "http://localhost:8001/sse" } } }
注意:当添加新的工作流作为工具时,您需要重建和重新部署Docker映像以使其可用。