npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

mcp-comfy-ui-builder

v2.4.1

Published

MCP server for ComfyUI: seed knowledge base (62+ nodes), 50+ tools for workflow building, real-time execution (WebSocket), batch/chain, model management. For Cursor and Claude.

Readme

mcp-comfy-ui-builder

CI npm Docker License: MIT

ComfyUI Node Discovery — seed knowledge base and MCP tools for Cursor/Claude.
Publishable to the MCP Registry via server.json and mcpName.

What is this

  • Knowledge base: Seed knowledge/base-nodes.json and node-compatibility.json from bundled data (62 seed nodes; 100–600+ after sync). No external services required for suggest/build.
  • Sync: Custom packs from ComfyUI-Manager; nodes from running ComfyUI via sync-nodes CLI or on MCP startup.
  • MCP server (50+ tools): Node discovery, dynamic workflow builder, 9 templates (txt2img, txt2img_flux, img2img, …), WebSocket real-time execution, batch/chain, model management, plugin system.
  • Real-time execution: Sub-second progress via WebSocket with automatic polling fallback; ~90% less network traffic for batch runs.

Install

npm install mcp-comfy-ui-builder

Or from source: git clone https://github.com/MIt9/mcp-comfy-ui-builder.git && cd mcp-comfy-ui-builder && npm install

Quick start

  1. Build (postbuild fills knowledge from seed)

    npm run build
    npm run mcp
  2. Use knowledge in code

    import baseNodes from './knowledge/base-nodes.json' assert { type: 'json' };

Commands

| Command | Description | |---------|-------------| | npm run seed | Fill knowledge from seed. Use --force to overwrite. | | npm run sync-manager | Update custom packs list from ComfyUI-Manager | | npm run sync-nodes | Sync nodes from running ComfyUI to knowledge base (requires COMFYUI_HOST) | | npm test | Run tests (vitest) | | npm run mcp | Start MCP server (after npm run build) |

Documentation

Single entry point — task-oriented navigation:

Requirements

  • Node.js 18+

MCP Server (Cursor / Claude)

Server provides 50+ tools across 9 categories:

Core Features

Node Discovery:

  • list_node_types, get_node_info, check_compatibility, suggest_nodes
  • discover_nodes_live, search_nodes, sync_nodes_to_knowledge

Dynamic Workflow Builder:

  • create_workflow, add_node, connect_nodes, validate_workflow
  • Build workflows programmatically without JSON manipulation

Templates & Macros:

  • list_templates, build_workflow — Pre-built templates (txt2img, img2img, inpainting, upscale, LoRA, ControlNet, batch)
  • create_template, apply_template — Parameterized templates
  • list_macros, insert_macro — Reusable sub-workflows

Real-time execution 📡

  • execute_workflow_sync — Execute with WebSocket progress streaming (sub-second updates)
  • execute_workflow_stream — Full event history collection (WebSocket-only)
  • get_execution_progress — Real-time progress with node-level granularity
  • execute_batch — Concurrent execution with 90% reduced network traffic
  • execute_chain — Sequential workflows with data passing

Resources & Model Management:

  • get_system_resources — GPU/VRAM/RAM + recommendations (max resolution, model size, batch size); call first before building workflows to avoid OOM
  • list_models, check_model_exists, get_workflow_models
  • Supports checkpoint, lora, vae, controlnet, upscale, embedding, clip

Outputs & Queue:

  • list_outputs, download_output, download_all_outputs
  • list_queue, interrupt_execution, clear_queue

Plugins:

  • list_plugins, reload_plugins — Data-only plugin system

Install (requires COMFYUI_PATH):

  • install_custom_node, install_model — Install nodes and models via ComfyUI-Manager

WebSocket features

  • <100ms latency for progress updates (vs 1.5s polling)
  • Node-level tracking: See exactly which node is executing with progress percentage
  • Automatic fallback: Gracefully falls back to polling if WebSocket unavailable
  • Shared connection: Single WebSocket for batch/chain execution (90% reduced traffic)

Set COMFYUI_HOST environment variable for execution/model/output tools:

export COMFYUI_HOST="http://localhost:8188"

See doc/MCP-SETUP.md for full tool list and doc/WEBSOCKET-GUIDE.md for real-time features.

Running MCP

From project root, first build the project, then start the server:

npm run build
npm run mcp

Or without npm: node dist/mcp-server.js. Server works via stdio (stdin/stdout). More details → doc/MCP-SETUP.md.

Connect MCP (Cursor / Claude)

What you need: Node.js 18+, one-time build (npm run build), absolute path to dist/mcp-server.js, restart after config change. If the server fails to start with «spawn node ENOENT», use the full path to node in command (run which node and put that path). See doc/MCP-SETUP.md → Troubleshooting.

Minimal config (knowledge and workflow tools only):

{
  "mcpServers": {
    "comfy-ui-builder": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/mcp-comfy-ui-builder/dist/mcp-server.js"]
    }
  }
}

Use full path in command (e.g. "/opt/homebrew/bin/node") if Cursor/IDE reports «spawn node ENOENT».

With ComfyUI execution (execute_workflow, get_execution_status, list_outputs, etc.): add "env": { "COMFYUI_HOST": "http://127.0.0.1:8188" } to the server block. See doc/MCP-SETUP.md for full checklist, optional env vars (COMFYUI_PATH, COMFYUI_KNOWLEDGE_DIR), and troubleshooting.

Publish on GitHub

  1. Create a new repository on GitHub: name mcp-comfy-ui-builder, visibility Public (or Private). Do not initialize with README, .gitignore, or license (project already has them).

  2. Add remote and push:

    git remote add origin https://github.com/MIt9/mcp-comfy-ui-builder.git
    git branch -M main
    git push -u origin main
  3. If you fork this repo, replace MIt9 with your GitHub username in the URLs above.

Cursor: Settings → MCP; Claude Desktop: config file ~/Library/Application Support/Claude/claude_desktop_config.json (macOS). Replace the path with your absolute path to dist/mcp-server.js, then restart the app. Full guide: doc/MCP-SETUP.md.

License

MIT