ComfyUI MCP服务器是一个轻量级的基于Python的MCP(模型上下文协议)服务器,它与本地ComfyUI实例接口,可让AI代理通过请求来生成图像,为图像生成工作提供了便捷的途径。
此项目能让AI代理借助MCP协议,通过WebSocket向ComfyUI发送图像生成请求。它具备灵活的工作流程选择,支持动态参数设置,还能返回由ComfyUI提供的图像URL。
basic_api_test.json
工作流程。prompt
(提示词)、width
(宽度)、height
(高度)和model
(模型)。localhost:8188
)。requests
、websockets
、mcp
(可通过pip安装)。git clone
cd comfyui-mcp-server
pip install requests websockets mcp
cd
python main.py --port 8188
basic_api_test.json
)放在workflows/
目录中。python server.py
服务器将监听在ws://localhost:9000
。
python client.py
客户端将发送一个示例请求:“a dog wearing sunglasses”、512x512尺寸和模型sd_xl_base_1.0.safetensors
。输出示例如下:
服务器返回响应:
{
"image_url": "http://localhost:8188/view?filename=ComfyUI_00001_.png&subfolder=&type=output"
}
可修改client.py
中的payload
以更改prompt
、width
、height
、workflow_id
或model
。示例如下:
"params": json.dumps({
"prompt": "a cat in space",
"width": 768,
"height": 768,
"workflow_id": "basic_api_test",
"model": "v1-5-pruned-emaonly.ckpt"
})
server.py
:MCP服务器,带有WebSocket传输和生命周期支持。comfyui_client.py
:与ComfyUI的API接口,处理工作流排队。client.py
:用于发送MCP请求的测试客户端。workflows/
:存储API格式的工作流JSON文件的目录。v1-5-pruned-emaonly.ckpt
)存在于/models/checkpoints/
中。comfyui_client.py
中的DEFAULT_MAPPING
节点ID。欢迎提交问题或PR以增强灵活性(例如动态节点映射、进度流式处理)。
本项目采用Apache许可证。