mcpField
C
Comfyui Mcp

Comfyui Mcp

ローカル
github.com/artokun開発ツール8762 日前に更新

Comfyui Mcp について

Comfyui Mcp は、ComfyUI 向けの MCP サーバー兼 Claude Code プラグインです。エージェントによるワークフローの作成・実行、メディア生成、モデルやカスタムノードの管理に対応し、ローカルとリモートの環境で利用できます。

主な機能

  1. 01ComfyUI ワークフローの作成・編集・実行
  2. 02画像・動画・音声の生成
  3. 03モデルとカスタムノードの管理
  4. 04キュー、ログ、失敗の調査
  5. 05ワークフローの可視化と差分比較
  6. 06VRAM 制御とジョブ進捗の確認

活用シーン

  1. 01自然言語で画像を生成し反復調整
  2. 02失敗した ComfyUI ワークフローの診断
  3. 03ローカルまたはリモート環境でモデルとノードを管理
  4. 04ワークフローの版を比較してジョブ進捗を確認

MCP 対応

ComfyUI のワークフロー作成・実行やモデル、ノード管理の機能を MCP クライアントに公開します。stdio または HTTP トランスポートで、ローカルやリモートの ComfyUI に接続できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"artokun-comfyui": {
"command": "npx",
"args": [
"-y",
"comfyui-mcp"
]
}
}
}
起動コマンドnpx -y comfyui-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmcomfyui-mcp0.52.206

ツール

41

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
actionenumはい実行する comfy-cli 操作。分類:status;server_*(ライフサイクル);jobs_*(一覧表示/状態確認/待機/監視/キャンセル);search_nodes;workflow_*(検証/実行);transfer_*(アップロード/ダウンロード);models_*(フォルダー一覧/フォルダー内一覧/検索/表示/ダウンロード/削除);skills_*(一覧表示/表示/検証/インストール/状態確認/アンインストール)。status | server_start | server_stop | server_restart | jobs_list | jobs_status | jobs_wait | jobs_watch | jobs_cancel | search_nodes | workflow_validate | workflow_run | transfer_upload | transfer_download | models_list_folders | models_list_folder | models_search | models_show | models_download | models_remove | skills_list | skills_show | skills_validate | skills_install | skills_status | skills_uninstall
detailenumいいえaction:"status" — 実行する確認の種類。version | which | env | discover
workspacestringいいえ任意の ComfyUI ワークスペース上書き設定(comfy-cli がカスタムノード/モデル用に使用するデータ/ベースルート)。指定しない場合は、現在の --base-directory / COMFYUI_PATH を使用します。CLI 実行ファイルは COMFYUI_CODE_PATH のチェックアウトにある .venv から取得される場合があります。
launchArgsarrayいいえactions "server_start"/"server_restart" 用の追加 ComfyUI 起動引数。例:['--listen','0.0.0.0','--port','8188']。
promptIdstringいいえ単一のプロンプト ID。"jobs_status"/"jobs_watch"/"jobs_cancel" および "transfer_download" では必須です。"jobs_wait" でも指定でき、その場合は 1 要素の promptIds リストに正規化されます。
promptIdsarrayいいえaction:"jobs_wait" — 待機するプロンプト ID。これか promptId、または all=true を使用します。
allbooleanいいえaction:"jobs_wait" — 既知のすべてのジョブを待機します。
limitintegerいいえ"jobs_list"、"search_nodes" および "models_*" の一覧表示/検索アクションにおける結果の上限。
timeoutSecondsintegerいいえアクション "jobs_wait"/"jobs_watch"/"workflow_run" — 待機する最大秒数。
whereenumいいえjobs/search_nodes/workflow/transfer/models アクションの対象:"local"(デフォルト)または "cloud"(Comfy Cloud)。local | cloud
querystringいいえaction:"search_nodes" — あいまい検索テキスト。必須。
objectInfoPathstringいいえaction:"search_nodes" — ライブの対象の代わりに検索する、オフラインの object_info JSON ファイル。
workflowPathstringいいえアクション "workflow_validate"/"workflow_run" — API/UI ワークフロー JSON ファイルのパス。必須。
waitbooleanいいえaction:"workflow_run" — 送信後すぐに返すのではなく、出力を待機します。
filesarrayいいえaction:"transfer_upload" — アップロードする入力ファイル。必須。
outDirstringいいえaction:"transfer_download" — 出力ディレクトリ。
overwritebooleanいいえaction:"transfer_upload" — --no-overwrite を渡すには false に設定します。
urlOnlybooleanいいえaction:"transfer_download" — ファイルをダウンロードせず、URL を出力します。
folderstringいいえaction:"models_list_folder" — 一覧表示するモデルフォルダー(必須)。action:"models_show" — 同名ファイルから選択するための任意のフォルダー。
textstringいいえaction:"models_search" — 検索テキスト。
typestringいいえaction:"models_search" — モデルタイプのフィルター(checkpoint、lora、vae、…)。action:"models_show" — 同名ファイルから選択するための同じフィルター。
namestringいいえアクション "models_show"/"skills_show" — モデルまたはスキル名。models_show では、相対パス(例:vae/qwen_image_vae.safetensors)を指定すると同名ファイルから選択できます。
urlstringいいえaction:"models_download" — ダウンロードするモデルの URL。必須。
relativePathstringいいえアクション "models_download"/"models_remove" — ワークスペース相対のモデルディレクトリ(デフォルトは models/checkpoints)。
modelNamesarrayいいえaction:"models_remove" — 削除するモデルファイル名。必須。
pathstringいいえaction:"skills_validate" — 検証するスキルのパス。必須。
scopeenumいいえactions "skills_install"/"skills_uninstall"/"skills_status" — インストール範囲。user | project
projectDirstringいいえプロジェクトスコープのスキル操作に使用する作業ディレクトリ。scope='project' の場合は必須です。
targetsarrayいいえactions "skills_install"/"skills_uninstall" — エージェントの対象。
skillsarrayいいえactions "skills_install"/"skills_uninstall" — スキル名。
applybooleanいいえactions "skills_install"/"skills_uninstall" — 実際に変更を適用します。デフォルトは false = ドライラン。

詳細

comfyui-mcp — ANY LLM で ComfyUI を操作

ComfyUI を最初から最後まで操作するエージェントパネル。クリックしてデモを視聴

ComfyUI を最初から最後まで操作するエージェントパネル。ローカルにインストール済みのものを読み取り、 グラフを接続し、VRAM を解放して、レンダリングを実行します。
76 秒のデモを視聴 →

ComfyUI 向けの、ローカルファーストでエージェントネイティブなコントロールプレーンです。 MCP サーバーとライブサイドバーエージェントを組み合わせ、画像・動画・音声の生成、ワークフローの作成と実行、モデルとカスタムノードの管理を行い、自然言語で ComfyUI のライブグラフを編集できます。手持ちのモデルをそのまま使えます。サブスクリプションの Claude または ChatGPT、Google アカウントの Gemini、Ollama 経由の無料ローカルモデル(完全オフライン)、または単一の API キーで利用できるホスト型モデル(DeepSeek、GLM、MiMo、Kimi、GPT、OpenRouter 経由の Claude)に対応しています。どのプランでもツールとパネルは同じです。組み込みのLLM Arenaは、実際の ComfyUI タスクで各モデルを評価するため、利用中のモデルの能力を把握できます。ひとつの設定で、ローカルインストール、LAN、VPS、Comfy Cloud のいずれにも接続できます。

npm version Node.js License Documentation

comfyui-mcp MCP server comfyui-mcp MCP server

Deploy on RunPod Join the Discord  GPU ポッドをワンクリックで起動。 このプロジェクト、Agent Panel、ComfyUI-Manager v2 をプリインストールした、すぐに実行できる ComfyUI を自分の GPU 上で利用できます。セットアップは不要です。

macOS、Linux、Windows で動作します。ComfyUI のインストール先とポートを自動検出します。

お困りの方、ご質問がある方は、サポート、モデルのヒント、リリースのお知らせを受け取れるDiscord にご参加ください。

38 個の MCP ツール | 42 個の AI スキル(Flux・WAN・LTX 2.3 動画・MiniMax H3・Qwen・Z-Image・Ideogram 4・ERNIE・ANIMA・モデルレジストリ・Civitai・ノード作成・起動/パフォーマンスフラグ) | 56 個のインストーラーパック | 11 個のスラッシュコマンド | 4 個の自律エージェント | 3 個のフック

このプラグインには、リリースのたびに拡充されるスキルが含まれています。モデルごとの生成ガイド(厳選したダウンロード URL 付き)、ワークフローレシピ、トラブルシューティング、カスタムノードの作成方法を提供します。これらを使えば、Claude は試行錯誤することなく、アーキテクチャごとに適切なサンプラー、CFG、解像度、モデルファイルを把握できます。

ComfyUI-Manager と Comfy Registry で ComfyUI Agent Panel が利用可能になりました

ComfyUI のサイドバーで動作する自律型 AI エージェントです。Claude、ChatGPT、Gemini、またはあらゆるローカル/ホスト型 LLM で実行できます(Ollama およびすべての OpenAI 互換エンドポイントに対応)。サブスクリプションなら API キーなしで利用でき、ローカルモデルならアカウントも不要です。プロバイダーを選ぶと、ライブグラフを操作します。編集、空間レイアウト、ワークフロー/パックのワンショット読み込み、巻き戻し/ロールバック、保留中メッセージのトレイ、アクティビティカード、マルチタブに対応しています。有料 API クレジットを消費する前に確認を求めます。 ComfyUI-Manager で comfyui-agent-panel を検索してインストールしてください。詳細はこちら →

ドキュメント全文:comfyui-mcp.artokun.io/docs


クイックスタート

1. ComfyUI をインストールします(まだの場合):ComfyUI Desktop またはソースから

2. MCP サーバーを Claude Code の設定ファイル(~/.claude/settings.json)に追加します:

{
  "mcpServers": {
    "comfyui": {
      "command": "npx",
      "args": ["-y", "comfyui-mcp"],
      "env": {
        "CIVITAI_API_TOKEN": ""
      }
    }
  }
}

3. 使い始めましょう。 ComfyUI を起動した状態で、Claude に画像の生成を依頼します:

> Generate an image of a sunset over mountains

Claude はチェックポイントを探す(またはダウンロードする)と、ワークフローを構築して実行し、画像を返します。

注記:これはスタンドアロンの MCP サーバーとして実行されるため、このリポジトリをクローンする必要はありません。npx がダウンロードして実行します。

スコープ:ローカル、リモート、または Comfy Cloud

comfyui-mcp はローカルファーストです。Mac/Linux/Windows 上のセルフホスト型 ComfyUI を主な対象としており、同じエージェントが単一の設定からリモート環境(RunPod、VPS、LAN、リバースプロキシ経由)にも接続します。ローカルファーストであり、ローカル専用ではありません。

単なるブリッジではありません。 多くの ComfyUI MCP サーバーは単純なコネクターです。プロンプトを転送して画像を返すだけです。comfyui-mcp は本格的な制御プレーンです。グラフをノードごとに作成・編集し、ワークフローを実行して反復し、モデルやカスタムノードを管理します。また、モデルごとの知識(サンプラー、CFG、解像度、厳選されたモデル URL)も備えているため、試行錯誤せずにエージェントが適切な結果を得られます。最小限のローカルリレーをお求めなら、軽量なサーバーで十分です。ComfyUI を操作するエージェントをお求めなら、このプロジェクトが適しています。

Comfy Cloud ユーザー向けには、Comfy-Org が独自のエージェントツールを提供しています。Comfy Cloud MCP(Comfy Cloud の GPU 上でホストされるパブリックベータ版)、Comfy In-App Agent(Comfy Cloud 内で動作するプライベートアルファ版)、そして Comfy Local MCP(ファーストパーティー版、非公開テスト中で一般公開前)で、いずれも Comfy チームが保守しています。GPU をお持ちでない場合や、セットアップを一切したくない場合は、そちらがより適した選択肢です。ぜひご利用ください。

このプロジェクトの特徴は、ご自身の環境とお好みのモデルで実行できることです。アカウントもネットワーク接続も不要な、Ollama 経由の無料ローカルモデルも利用できます。comfyui-mcp にはコミュニティ向けクラウドモードも含まれているため(COMFYUI_API_KEY を設定してください。詳しくはデプロイモードを参照)、単一の MCP からひとつの設定で 3 種類すべてのデプロイ形態を利用できます。

ローカルと Comfy Cloud のエージェントの比較では、Comfy Cloud が適している場合も含めて、両者を並べて比較しています。(上記のステータスは 2026 年 7 月時点のものです。Comfy-Org の更新は速いため、最新状況は同社のドキュメントをご確認ください。)

リモート/ホスト型コネクター(1 つのコマンド)

Claude Desktop のカスタムコネクターや、Comfy 独自の cloud.comfy.org/mcp コネクターのようなリモートクライアントから comfyui-mcp を使用するには、次のフラグを指定して、認証付きで パブリックにアクセス可能な Streamable-HTTP サーバーとして実行します。

npx -y comfyui-mcp@latest --tunnel

これにより、HTTP トランスポートが強制され、認証トークンが生成され、 cloudflared のクイックトンネルが開かれ、 そのまま貼り付けて使える https://…/mcp URL、トークン、Claude Desktop 用コネクターのスニペットが 出力されます。認証では、Authorization: Bearer <token> または X-API-Key: <token>(Comfy Cloud の方式と同じ)を使用できます。詳しい手順とヘッドレスでの使用方法については、 リモート/ホスト型コネクターガイドを 参照してください。

認証はオプトインです。COMFYUI_MCP_HTTP_TOKEN が設定されておらず、--tunnel も指定されていない場合、 デフォルトの stdio(およびループバックでの通常の --http)の動作は変わりません。開いたままの ローカル接続です。OAuth(Comfy のブラウザーサインインフロー)は今後対応予定です。


Claude Code プラグイン

このパッケージは、MCP ツールにスラッシュコマンド、スキル、エージェント、フックを追加する Claude Code プラグインとしても提供されます。

プラグインとしてインストールする
# In Claude Code
/plugin marketplace add artokun/comfyui-mcp
/plugin install comfy
スラッシュコマンド
コマンド説明
/comfy:gen <prompt>テキストの説明から画像を生成します。チェックポイントを自動選択し、ワークフローを構築して、画像を返します
/comfy:viz <workflow>カテゴリーごとにノードをグループ化し、ワークフローを Mermaid ダイアグラムで可視化します
/comfy:node-skill <pack>Registry ID または GitHub URL から、カスタムノードパック用の Claude スキルを生成します
/comfy:debug [prompt_id]ワークフローが失敗した原因を診断します。履歴とログを読み、根本原因を追跡し、修正方法を提案します
/comfy:batch <prompt, params>cfg、sampler、steps、seed などを変えてパラメーターを振り、生成します
/comfy:convert <file>UI 形式と API 形式のワークフローを相互に変換します
/comfy:install <pack>カスタムノードパックをインストールします。git clone、pip install、必要に応じて再起動を行います
/comfy:gallery [filter]生成物をメタデータとともに閲覧します。日付、件数、ファイル名で絞り込めます
/comfy:compare <a vs b>2 つのワークフローを並べて比較し、追加/削除されたノードや変更されたパラメーターを表示します
/comfy:recipe <name> <prompt>複数ステップのレシピです。portrait、hires-fix、style-transfer、product-shot を利用できます
組み込みスキル

スキルは合計 42 個あります。モデルファミリーガイド(Flux、WAN、LTX 2.3、MiniMax H3、Qwen、Z-Image、Ideogram 4、ERNIE、ANIMA に加え、anime/WAN/Z-Image の LoRA トレーニング)、model-registry(厳選されたダウンロード URL)、civitai ペアリングスキル、ノード作成、launch/performance-flags マトリクス、および以下の基本 4 スキルです。全リストはプラグインのドキュメントページをご覧ください。

インストーラーパック。 packs/ には、1 コマンドでセットアップできる ComfyUI 構成が 13 個まとめられています。ANIMA、Ideogram 4、LTX-2.3、ERNIE、WAN(animate/longer-videos/transparent)、Qwen(image/image-edit)、Z-Image(turbo/base/xy-plot)、artokun-flow(WAN Animate: replace/animate)です。それぞれ、カスタムノード、モデル URL、ワークフローを記述したマニフェストであり、apply_manifest と生成される install-windows.bat/install-runpod.sh の両方を動作させます。また、すべてのモデルリンクとペイロードサイズを検証する CI も備えています。packs/README.mdを参照してください。

スキル説明
comfyui-coreワークフロー形式、ノードの種類、データフローパターン、パイプラインアーキテクチャ、MCP ツールの使用ガイド
prompt-engineeringCLIP の重み構文 (word:1.3)、BREAK トークン、埋め込み、SD1.5/SDXL/Flux/SD3 向けのモデル別プロンプト作成
troubleshootingよくあるエラーの一覧。OOM、dtype の不一致、ノード不足、NaN テンソル、黒い画像、CUDA エラー、およびモデルごとの VRAM 推定値
model-compatibilityモデルファミリー(SD1.5/SDXL/Turbo/Lightning/Flux/SD3/LTXV)ごとのローダー、解像度、CFG、サンプラー、ControlNet、LoRA、VAE の互換性マトリクス
エージェント
エージェントモデル説明
comfy-explorerSonnetカスタムノードパックを調査します。ドキュメントを読み、/object_info に問い合わせ、スキルファイルを生成します
comfy-debuggerSonnetワークフローの失敗を自律的に診断します。ログと履歴を収集し、失敗したノードを特定し、モデルとカスタムノードを確認して、修正を提案し、必要に応じて適用します
comfy-optimizerSonnetワークフローのパフォーマンスを分析します。冗長なノード、VRAM の無駄、モデルファミリーに合わない CFG/ステップ数、精度の問題を検出し、最適化を提案します
comfy-researcherSonnet指定された画像生成の問題に対応する ComfyUI カスタムノードパックを見つけ、順位付けします
フック
イベントトリガーアクション
PreToolUseenqueue_workflowVRAM ウォッチドッグ — /system_stats 経由で GPU メモリを確認し、実行前に空き容量が 1GB 未満の場合は警告します
PreToolUserestart_comfyui(アクション stop/restart)保存警告 — ComfyUI を停止する前に、未保存のワークフローの変更を保存するようユーザーに促します
PostToolUseすべての comfyui ツールジョブ完了通知 — 完了したジョブを確認し、完了サマリーを会話に挿入します
バックグラウンドスクリプト
スクリプト説明
monitor-progress.mjs進捗モニター — ComfyUI の WebSocket に接続し、リアルタイムでステップの進捗を表示します(例:step 5/14 (36%))。ワークフローをキューに追加した後、バックグラウンドの Bash タスクとして実行します。出力ファイル名を含む完了状況と、ノードの詳細を含むエラーを報告します。queue(action:"status")をループでポーリングする方法に代わるものです。

パネルエージェント(Claude・ChatGPT・Gemini・あらゆるローカル/ホスト型 LLM)

ヘッドレス MCP サーバーに加えて、このパッケージにはパネルオーケストレーターが含まれています。ComfyUI のサイドバーに組み込まれた自律型エージェントで、ライブキャンバスを操作するComfyUI Agent Panelを支えます。ご自身のサブスクリプション(Claude または ChatGPT)でバックグラウンド実行され、パネルの Connect ボタンから必要に応じて起動します。

npx -y comfyui-mcp@latest connect
自分のマシンからリモート ComfyUI を操作する(connect)

Node やエージェントのない環境(RunPod のポッドやクラウドマシンなど)で ComfyUI が実行されていても、自分のマシンでエージェントを実行し、そのリモート ComfyUI を操作できます。リモートマシンでエージェントにログインする必要はなく、リモート環境へのインストールや設定も不要です。

npx -y comfyui-mcp@latest connect https://abcd1234-3000.proxy.runpod.net

これは、URL から COMFYUI_URL を設定して --panel-orchestrator を実行する簡易コマンドです。オーケストレーターは Claude/ChatGPT のログイン情報を使ってローカルで実行され、公開プロキシ URL 経由でリモート ComfyUI に接続します。リモートの HTTPS ポッドでは、connect が Cloudflare 経由でローカルエージェントブリッジへのトークン認証付き wss:// トンネルを開き、その URL をポッドのパネルに渡します。これにより、ブラウザーの確認なしに、どのブラウザーからでもポッドの HTTPS ページが自分のマシンに接続できます。セキュアなページからは、混在コンテンツとプライベートネットワークアクセスのルールにより、自分のマシンへ平文の ws:// ソケットを開くことはできません。ローカルの ComfyUI では、平文の ws://127.0.0.1:9199 ループバックブリッジを使用します。リモートポッドでこのループバックを強制するには --insecure-bridge を追加し、SSH ポートフォワーディングなどで独自の接続経路を用意してください。いずれの場合も、パネルの JS はローカルブラウザーで動作し、エージェントとログイン情報は自分のマシン上でのみ実行されるため、リモート環境へのインストールは不要です。

完了するには、connect を自分のマシンで実行したまま、ブラウザーでリモート ComfyUI を開き、Agent パネルの Connect をクリックします。パネルはフロントエンドのみの拡張機能です。ComfyUI ホストに実行できないオーケストレーターの起動を求めるのではなく、connect プロセスがすでに提供しているブリッジに接続します。

複数プロバイダーに対応し、完全な機能互換性を実現。 オーケストレーターは、プロバイダーに依存しない AgentBackend ポート(依存性注入)を基盤とし、2 つのアダプターを備えています。

  • ClaudeBackend は、Claude Agent SDK(@anthropic-ai/claude-agent-sdk)をラップします。claude.ai のサブスクリプションを利用する永続的なストリーミングセッションです(OAuth、キー不要)。
  • CodexBackend は、codex app-server の JSON-RPC プロトコル(@openai/codex)を介して OpenAI Codex をラップし、ChatGPT のサブスクリプションを利用します(codex login、キー不要)。

さらに、同じポートに対応するアダプターとして、Gemini CLI(ACP)、Antigravity(agy、Google AI Pro/Ultra のサブスクリプション経由。サインインするには、antigravity.google からインストールして agy を一度実行してください)、Grok、Kimi、GLM、Ollama/LM Studio/llama.cpp(ローカル)、OpenRouter、および OpenAI 互換のエンドポイントが用意されています。全体の一覧については、docs/backends をご覧ください。

どちらもオプションの依存関係で、パネルが選択するのはプロバイダーであり、ポートではありません。各バックエンドは、それぞれ独自のループバックブリッジポート上で独自のオーケストレーターを実行します。機能マトリックスによって、各バックエンドがサポートする機能をパネルに伝えます(たとえば、現時点で会話のロールバックに対応しているのは Claude のみです。Codex app-server はスレッド全体の再開にしか対応していないためです)。

ライブキャンバスのツールとモデルに関する知識は、すべてのプロバイダーで共通です。 panel_* ツールの定義は共通のリストにあり、インプロセスの Claude SDK MCP サーバーと、Codex 用にオーケストレーターがホストするループバックのストリーマブル HTTP MCP 上の @modelcontextprotocol/sdk サーバーの両方に登録されます(Codex がホストできるのは、設定で宣言された MCP サーバーのみです)。ヘッドレスの comfyui MCP も同様に両方に注入されます。Claude ではインプロセスで、ChatGPT では codex app-server -c mcp_servers で宣言されるため、生成、モデル、ワークフローのツールはどこでも同じです。

すべてのバックエンドで同じ専門知識を活用し、コストのガードレールを設ける新しいツール:

ツール説明
list_packs(action: "skill_list" / "skill_read")バンドルされたモデルファミリーとワークフローのスキルを検索・参照します。Claude が標準で読み込む知識を、あらゆる MCP クライアント(Codex バックエンドなど)から利用できるようにします
list_packs(action: "list" / "read_workflow")ワンコマンドのインストーラーパック(カスタムノード+重み+すぐ使えるワークフロー。すべてローカル GPU/無料)を一覧表示し、パックのグラフを読み取ります
list_packs(action: "list_templates")接続中の ComfyUI のカスタムノードが提供するワークフローテンプレートを一覧表示します
list_packs(action: "check_runtime")ワークフローを ローカル(ユーザーの GPU、無料)または API/混在/不明(ホスト型 API ノードは有料クレジットを消費)に分類し、有料 API クレジットを使う前にエージェントが確認するようにします
list_packs(action: "extract_deps" / "install_deps")ワークフローに必要なカスタムノードパックを特定し、不足しているパックを ComfyUI-Manager 経由でインストールします
panel_load_workflow(パネルツール)バンドルされた pack 名(サーバー側で読み込まれ、チャット経由では決して転送されません)またはグラフ JSON を指定して、完全なワークフローを一度にライブキャンバスへ読み込みます
panel_strip_workflow / panel_slice_workflow(パネルツール)もつれたグラフを仮想化解除する(Get/Set バス、Reroute、サブグラフ、バイパスを実際の接続に置き換える)、または巨大なワークフローから rgthree で切り替えられるパイプラインを切り出します。pack、サーバー側の path、またはインラインのグラフを指定できます。手作業で追跡せずに、専門的なワークフローを理解・再構築するためのツールです

MCP ツール

ワークフローの実行、生成、反復、構成、モデルなどに関する 38 個のツールを提供します。

画像生成(高レベル)
ツール説明
generate_image action: "image"テキストプロンプトから生成します。txt2img ワークフローを構築し、指定されていないパラメーターにはデフォルト値を適用して、チェックポイントを自動選択します
generate_image action: "controlnet"ControlNet 画像(ポーズ/深度/canny/法線)とプロンプトを条件として生成します
generate_image action: "ip_adapter"IP-Adapter を使い、参照画像のスタイルや被写体を基に生成します(ComfyUI_IPAdapter_plus が必要です)
generate_image action: "video" / "3d"同じ簡単なエントリーポイントから、短い動画クリップ(LTX-2.3、ローカル GPU)または 3D モデル(ホスト型パートナー API ノード)を生成します
generate_image action: "upscale"アップロードまたはステージングされた画像を ESRGAN の超解像で後処理します
generate_image (action:"remove_background")アップロードまたはステージングされた画像を、透明な BiRefNet の切り抜き画像に後処理します
音声生成(高レベル)
ツール説明
generate_image action: "audio"テキストプロンプトから音声を生成します。ACE Step 1.5(歌詞や構成を含む音楽)と Stable Audio 3(音楽、楽器、効果音)に対応し、ローカルモデルを自動選択します
アセットと反復
ツール説明
get_image (action:"view")生成されたアセットのバイト列をインライン画像として返し、エージェントが結果を確認できるようにします
get_image (action:"analyze_color")生成画像のパレット/コントラスト/色の統計情報(主要色、平均値と輝度の統計、コントラストのチェック)を返します。エージェントは視覚モデルとの往復なしで色について推論できます
generate_image (action:"regenerate")asset_id を生成したワークフローを、任意のパラメーターを上書きして再実行します
get_image (action:"list_assets")最近生成されたアセットを asset_id で新しい順に一覧表示します
get_image (action:"asset_metadata")元のワークフローを含む、アセットの完全な来歴情報を返します
デフォルト
ツール説明
get_defaults action:"get"生成デフォルトの統合結果と、ソースごとの適用元を表示します
get_defaults action:"set"実行時のデフォルトを更新します。persist: true を指定すると設定ファイルに書き込みます
get_defaults action:"get_ui" / action:"set_ui"ComfyUI 独自のフロントエンド UI 設定(Comfy.* ID)を読み取り/書き込みます。上記の生成デフォルトとは別のストアです
ワークフローの実行
ツール説明
enqueue_workflow action: "enqueue"ワークフロー(API 形式の JSON)を送信します。ブロックせずに prompt_id をすぐに返します
enqueue_workflow action: "rerun" / "run_url" / "template_schema"過去の生成を再実行するか、URL から共有ワークフローを読み込んで実行するか、バンドル済みテンプレートの上書き可能なスロットを確認します
enqueue_workflow (action:"run_template")1 回の操作で、バンドル済みパックのエキスパートグラフを解決し、<nodeId>.<widget> の上書きを適用して、キューに追加します
queue実行キューを操作する、アクションパラメーター指定型のツールです。list(実行中と保留中)、status(prompt ID によるジョブ 1 件の状態)、get_workflow(保留中ジョブの完全なペイロード)、move/edit(保留中ジョブを先頭または末尾に再キューイングし、新しい prompt ID を付与。パッチ適用または置換に対応)、cancel(実行中ジョブを中断します。interrupt → verify → /free の順に処理を強化し、終了しない場合は WEDGED を報告します。clear_pending: true を指定すると、保留中のジョブもすべて削除します)、cancel_queued、clear
get_system_statsGPU、VRAM、Python のバージョン、OS などのシステム情報を取得します
ワークフローの可視化
ツール説明
visualize_workflow渡されたワークフローをレンダリングおよび変換する、アクションパラメーター指定型のツールです。render(ノードをカテゴリ別にまとめた Mermaid フローチャート)、render_hierarchical(同じグラフをセクション分けして表示。概要、1 セクションの詳細、一覧、または AI 向けの要約)、mermaid(Mermaid ダイアグラムから実行可能なワークフロー JSON への変換)、to_dsl/from_dsl(コンパクトで、情報を損なわずに往復変換できる作成 DSL)を利用できます
ワークフローの構成
ツール説明
create_workflow作成に使用する、アクションをパラメーターで指定する単一のツールです。create(テンプレートから作成:txt2img、img2img、upscale、inpaint、controlnet、ip_adapter、ace_step_15、stable_audio_3)、modify(操作:set_input、add_node、remove_node、connect、insert_between)、validate(ドライラン — ノードの不足、接続の破損、無効な出力インデックス、モデルファイルの不足を検証)、node_info(ComfyUI の /object_info エンドポイントから利用可能なノードタイプを取得)
ワークフローライブラリ
ツール説明
get_workflow保存済みのワークフローファイルを読み込む、アクションをパラメーターで指定する単一のツールです。list(サブフォルダーも含むユーザーライブラリ)、get(ファイル名を指定してワークフローの JSON を取得)、analyze(生の JSON の代わりに構造化された概要を表示)、query(大きなグラフをすべて出力せずにフィルタリング/たどる/集計)、strip(絶対パス、ライブラリのファイル名、またはインラインのグラフから任意のワークフローを仮想化解除 — GetNode/SetNode のバス、Reroute、サブグラフ定義、バイパスされたノードを実際の接続に解決し、フラットなグラフを返します。サーバー側で任意のパスを読み込めるため、キャッシュ済みライブラリにはない、個別に用意したワークフローや上級者向けワークフローも読み込めます)、slice(トグルテンプレートのモノリスをチャンク解除 — rgthree Fast-Groups-Bypass で切り替えるパイプラインを、単独で有効なグラフに切り出します。次にバスをフラット化するには strip と組み合わせてください)、from_image(ComfyUI が PNG に埋め込んだワークフロー)、prompt_director(Prompt Director のサニタイズ済みランタイム状態)
save_workflowライブラリに書き込む、アクションをパラメーターで指定する単一のツールです。save(ワークフローを保存 — 同じファイル名のファイルがあれば上書き)、lock(モデルごとの SHA-256 とノードパックごとの Git コミットを記録した来歴ロックを作成)、verify_lock(そのロックに対する差異を報告)
画像管理
ツール説明
upload_imageimg2img、inpaint、または ControlNet 用に、ローカル画像を ComfyUI の input/ ディレクトリにコピーします
get_image (action:"list_outputs")出力ディレクトリから最近生成された画像と動画を新しい順に閲覧します — サブフォルダー(例:SaveVideo の output/video/…)も再帰的に検索し、各結果の subfolder を返します
モデル管理
ツール説明
download_modelモデルの重みを検索して取得し、転送状況を追跡します。action:download(URL から正しい ComfyUI サブディレクトリにダウンロード)、status、cancel、search(HuggingFace)、search_civitai、search_creators、download_civitai、resolve_missing
list_local_modelsインストール済みのモデルと、ComfyUI の検索場所を確認します。action:list(タイプ別にインストール済みモデルを表示:checkpoints、loras、vae、upscale_models、controlnet、embeddings、clip、unet、diffusion_models、text_encoders)、remove(モデルファイルを削除)、embeddings、list_paths、add_path、remove_path(最後の 3 つは追加の検索パスを設定する YAML を表示/編集)
メモリ管理
ツール説明
clear_vramキャッシュ済みモデルをアンロードして GPU VRAM を解放します — ComfyUI の /free エンドポイントを呼び出し、解放前後の統計情報を報告します
レジストリと検索
ツール説明
search_custom_nodesキーワードで ComfyUI Registry のノードパックを検索します(action: "search")。または、1 つのパックの詳細をすべて取得します(action: "details")
list_packs (action: "generate_skill")Registry ID または GitHub URL から Claude スキルの .md ファイルを生成します
comfy_cli公式の comfy nodes search を通じて、実際に読み込まれているノードクラスを検索します(action:"search_nodes")
公式 comfy-cli

comfy-cli 1.11.1 以降をインストールすると、公式の JSON ベースのツールを有効にできます。MCP は COMFY_CLI_PATH、PATH、または選択したワークスペースの .venv/venv から comfy を解決します。ローカルのカスタムノード操作では、対応する CLI が利用可能な場合は comfy node を優先し、それ以外の場合は Manager HTTP にフォールバックします。リモートのターゲットでは、引き続き Manager HTTP を使用します。

ツール説明
comfy_cli公式 CLI 全体を操作できる、アクション指定型の単一ツールです。status、server_start/server_stop/server_restart、jobs_list/jobs_status/jobs_wait/jobs_watch/jobs_cancel、search_nodes、workflow_validate/workflow_run、transfer_upload/transfer_download、models_*(一覧表示/検索/表示/ダウンロード/削除)、skills_*(一覧表示/表示/検証/インストール/状態確認/アンインストール)に対応しています。
診断
ツール説明
get_system_stats (action:"logs")ComfyUI サーバーのログを取得します。キーワード(例:error、warning、ノード名)で絞り込むこともできます。
kitchenこの GPU で comfy-kitchen ができることを確認し(status)、グラフで活用できていない箇所を特定し(assess)、より高速な方法を適用します(apply)。プローブに失敗した場合は不明として扱い、不可とは判断しません。
get_history action: "list"実行履歴を、詳細なエラー情報、Python のトレースバック、実行時間、キャッシュされたノード情報とともに取得します。
get_history action: "diagnose"FAILED になった実行を 1 回の呼び出しで説明します。失敗したノードとトレースバックに加え、不足しているモデル(ファイル名とウィジェット)およびノードタイプを示します。
プロセス制御
ツール説明
restart_comfyui action:"restart"起動時の引数をすべて保持したまま、ComfyUI を停止して再起動します。
restart_comfyui action:"stop"実行中の ComfyUI プロセスを停止します(再起動用に PID と起動時の引数を保存します。Windows では action:"start" で再起動できません)。
restart_comfyui action:"start"前回の停止時に保存した情報を使って ComfyUI を起動します(macOS/Linux。Windows では拒否されます)。
restart_comfyui action:"status"読み取り専用です。現在の start/stop/restart の動作と、このツールで停止を取り消せるかどうかを確認します。stop の前に呼び出してください。
生成トラッカー
ツール説明
get_history action: "suggest"ローカルの生成履歴から、実績のあるサンプラー/スケジューラー/ステップ数/CFG の設定を提案します。モデルファミリー、LoRA ハッシュ、またはテキスト検索で絞り込めます。
get_history action: "stats"ローカルの生成トラッキング統計(実行総数、組み合わせの種類数、モデルファミリーごとの内訳)を表示します。

enqueue_workflow を呼び出すたびに、設定がローカルの SQLite データベース(generations.db)に記録されます。繰り返し使用された設定の組み合わせは、重複行を作成する代わりに reuse_count が増加するため、その数を人気度の指標として利用できます。トラッカーはモデルと LoRA をファイル名ではなくコンテンツハッシュ(AutoV2/SHA256)で識別するため、ファイル名を変更しても同じグループとして扱われます。

# View local stats from the CLI
npm run generations:stats

例

画像を生成する
> /comfy:gen a cyberpunk city at night with neon lights

Claude は次の処理を行います。

  1. インストール済みのチェックポイントを確認します(必要に応じてダウンロードします)。
  2. プロンプトを使って txt2img ワークフローを構築します。
  3. ComfyUI で実行します。
  4. 生成した画像を返します。
ワークフローを可視化する
> /comfy:viz ~/workflows/my-workflow.json

カテゴリ別にノードをグループ化した Mermaid ダイアグラムを生成します。

flowchart LR
  subgraph Loaders
    1["CheckpointLoaderSimple"]
  end
  subgraph Conditioning
    2(["Positive Prompt"])
    3(["Negative Prompt"])
  end
  subgraph Sampling
    5{{"KSampler<br/>steps:20 cfg:8"}}
  end
  1 -->|MODEL| 5
  2 -->|CONDITIONING| 5
  3 -->|CONDITIONING| 5
失敗したワークフローをデバッグする
> /comfy:debug

直近の実行履歴とログを読み込み、失敗したノードを特定して、不足しているモデルやノードパックを確認し、修正方法を提案します。

> /comfy:debug abc123-def456

プロンプト ID を指定して、特定の実行を診断します。

パラメーターの総当たりテスト
> /comfy:batch a cat in a field, cfg:5-10:2, sampler:euler,dpmpp_2m

すべてのパラメーターの組み合わせで画像のグリッドを生成し、結果をまとめた概要表を表示します。

対応する総当たりテストのパラメーター:cfg、steps、sampler、scheduler、seed、denoise、width、height。

複数ステップのレシピ
> /comfy:recipe hires-fix a dramatic fantasy landscape with castles

2段階で実行します。まず512x768でtxt2imgを実行し、次にimg2imgで1024x1536にアップスケールしてディテールを加えます。

利用可能なレシピ:

レシピ説明
portrait1024x1024で生成した後、2倍にアップスケールして2048x2048にします
hires-fix低解像度で生成 → denoise 0.4-0.5でimg2imgアップスケール
style-transferimg2imgで既存の画像にスタイルプロンプトを適用します
product-shot背景を白くすっきりさせた商品画像
ワークフロー形式の変換
> /comfy:convert ~/workflows/my-ui-workflow.json

ComfyUIのUI形式(ノード+リンクの配列)とAPI形式(ノードID → {class_type, inputs})を相互に変換します。

カスタムノードパックのインストール
> /comfy:install comfyui-impact-pack

レジストリを検索して詳細を表示し、リポジトリをcustom_nodes/にクローンして依存関係をインストールし、ComfyUIの再起動を促します。

出力ギャラリーの閲覧
> /comfy:gallery last 5
> /comfy:gallery today

各画像に埋め込まれたメタデータ(チェックポイント、プロンプト、シード、ステップ数、CFG、サンプラー)とともに、最近の出力を一覧表示します。

ワークフローの比較
> /comfy:compare workflow-a.json vs workflow-b.json

追加・削除されたノード、変更されたパラメーター(変更前 → 変更後の値)、および視覚的な比較に使える任意のMermaid図を表示します。

実行前の検証
> Validate this workflow before I run it

ワークフローを実行せずに、ノードタイプの不足、接続の破損、無効な出力インデックス、モデルファイルの不足を確認します。

モデルの管理
> What checkpoints do I have installed?
> Search HuggingFace for SDXL turbo models
> Download this model to my checkpoints folder
VRAMの管理
> Free my VRAM
> What embeddings do I have?
画像からワークフローを抽出
> Extract the workflow from this image: ~/outputs/ComfyUI_00042_.png

PNGのメタデータチャンクを読み取り、画像の生成に使用された正確なワークフローとプロンプトを復元します。

カスタムノードの詳細確認
> /comfy:node-skill comfyui-impact-pack

すべてのノード、その入力/出力、使用パターンを記載したスキルファイルを生成します。

プロセス制御
> Restart ComfyUI
> Stop ComfyUI
> Start ComfyUI back up

設定

サーバーはComfyUIのインストール先とポートを自動検出します。必要に応じて環境変数で上書きできます。

キーと上書き設定の配置場所:

  • パネルユーザー。 API Keysカード(「connected」の横にある▾メニュー)を使用します。キーは~/.comfyui-mcp/panel-secrets.jsonに保存され、再起動なしで反映されます。
  • MCPのみの構成(Claude Desktop、Claude Codeなど)。上記のセットアップ例のように、MCPクライアント設定のenvブロックを使用します。
  • 実際の環境変数は、保存済みのキーより常に優先されます。開発時には、サーバーは上書きファイルとして~/.comfyui-mcp/.envも読み込みます。通常のインストールでは、このファイルは必要ありません。
デプロイモード

comfyui-mcpは、環境に応じて自動選択される3つのモードのいずれかで動作します。

モード条件ローカルファイルシステム/プロセスツール
ローカルデフォルトはい
リモート--comfyui-url/COMFYUI_URLがループバック以外のホストを指す、または--force-remoteが設定されているいいえ — 古いローカルインストールにアップロードが誤って取り込まれないよう、サーバーはCOMFYUI_PATHの自動検出をスキップします
クラウドCOMFYUI_API_KEYが設定されている(接続先はComfy Cloud)いいえ — HTTPプリミティブはX-API-Keyを介してcloud.comfy.orgにルーティングされます。WebSocketおよびローカル専用ツールはCLOUD_UNSUPPORTEDをスローします

一部の構成(例:dstackを使ってRunPod上のComfyUIを操作する場合)では、リモートのComfyUIをlocalhost:8188にポートフォワードするため、上記のループバックチェックでは、実際にはローカルではないインストールがローカルと判定されることがあります。ホスト名にかかわらずリモートモードを強制するには、--comfyui-url/COMFYUI_URLとともに--force-remote(またはCOMFYUI_MCP_FORCE_REMOTE=1)を指定します。

npx -y comfyui-mcp@latest --comfyui-url http://localhost:8188 --force-remote
変数デフォルト説明
COMFYUI_URLComfyUI の完全な URL(例:https://comfy.example.com:8443)。COMFYUI_HOST/PORT/SSL を上書きし、自動検出をスキップします。パスプレフィックスは保持されます(例:リバースプロキシ経由のインスタンスの https://host/comfyapi)。ループバック以外のホストを指定すると、リモートモードが有効になります。
COMFYUI_MCP_FORCE_REMOTE1/true を設定するか、--force-remote を渡すと、COMFYUI_URL/--comfyui-url がループバックホストに解決される場合でも、リモートモードを強制します。localhost から到達可能なポートフォワーディング経由のリモートインストール(例:dstack/RunPod)で使用します。COMFYUI_URL/--comfyui-url がない場合は効果がありません。
COMFYUI_HOST127.0.0.1ComfyUI サーバーのアドレス
COMFYUI_PORT(自動検出)ComfyUI サーバーのポート(8188、次に8000を試します)
COMFYUI_PATH(自動検出)モデル、入力/出力、ユーザー状態に使用する ComfyUI のデータ/ベースディレクトリのパス。一般的なインストールでは、チェックアウト先も兼ねます。リモート/クラウドモードでは自動検出されません。
COMFYUI_CODE_PATHCOMFYUI_PATHコードとデータが異なるルートにある場合の、ComfyUI チェックアウト先(main.py、.venv、core git)のオプションパス。pip、venv、core の更新にはこのチェックアウト先を使用します(core の更新では、接続中のローカルサーバーから確認したチェックアウト先を優先し、これをフォールバックとして使用します)。パックの読み書き(custom_nodes、comfy-cli の --workspace、apply_manifest の clone/checkout、workflow-lock のパックコミット)は、稼働中の --base-directory/COMFYUI_PATH データルートで引き続き行われます(#1770)。
COMFY_CLI_PATH(自動検出)公式の comfy 実行ファイル(comfy-cli >=1.11.1)のパス。解決時には PATH と、選択したワークスペースの .venv/venv も確認します。
COMFYUI_PYTHONpythonレガシーな git-clone 依存関係フォールバックで使用する Python インタープリター。必要に応じて、ComfyUI 仮想環境の Python を指定してください。
COMFYUI_MCP_BRIDGE_HOST127.0.0.1パネルブリッジのバインド先ホスト。0.0.0.0(または LAN IP)を設定すると、オーケストレーターを24時間稼働のサーバーで実行し、別のマシンからパネルを接続できます(下記のトークンが必須です)。オーケストレーターは、すぐに貼り付けて使用できる ws://…/?token=… のブリッジ URL を出力します。
COMFYUI_MCP_BRIDGE_TOKEN(必要に応じて生成)すべてのブリッジ接続を保護する共有シークレット(WS アップグレード時に定数時間で照合)。COMFYUI_MCP_BRIDGE_HOST がループバック以外の場合は必須です。再起動後もブリッジ URL が有効になるよう、値を固定してください。起動時のバナー以外ではログに記録されません。
COMFYUI_MCP_DATA_DIR~/.comfyui-mcpローカルの COMFYUI_PATH がない場合(リモート/クラウド/未検出時)に、インスタンスごとのデータ(get_history の action: "suggest" が使用する generations.db)を保存するベースディレクトリ。instances/<host_port>/ 以下で、接続先ごとに分けられます。
COMFYUI_API_KEYComfy Cloud API キー。設定するとクラウドモードが有効になり、サーバーは cloud.comfy.org と通信します。ログには記録されません。
COMFYUI_CLOUD_URLhttps://cloud.comfy.orgComfy Cloud エンドポイントを上書きします(テスト/ステージング用)。
COMFYUI_AUTH_TOKENリバースプロキシ/API ゲートウェイの背後にあるセルフホスト ComfyUI 用の汎用認証トークン(Comfy Cloud とは別のものです)。設定すると、すべての ComfyUI リクエストに付加されます。ログには記録されません。
COMFYUI_AUTH_HEADERAuthorizationCOMFYUI_AUTH_TOKEN のヘッダー名(例:X-API-Key)。
COMFYUI_AUTH_SCHEMEAuthorization の場合は Bearer、それ以外はなしトークン値に付けるスキームのプレフィックス(例:Bearer、Token)。
CIVITAI_API_TOKENモデルのダウンロードに使用する CivitAI API トークン
HUGGINGFACE_TOKENAPI レート制限を緩和するための HuggingFace トークン
COMFYUI_DOWNLOAD_PROXYモデルのダウンロード通信のみに使用する HTTP/HTTPS プロキシ(標準のプロキシ環境変数と、Windows の静的な WinINet 設定も適用されます)
GITHUB_TOKENスキル生成に使用する GitHub トークン(レート制限を回避します)
REGISTRY_ACCESS_TOKENnode_pack(action: "publish")用の Comfy Registry API キー(環境変数のみで設定し、ログには記録されません)
COMFYUI_DOWNLOAD_CACHE_DIR~/.comfyui-mcp/cacheコンテンツアドレス方式のモデルダウンロードキャッシュ(重複排除+並行リクエストの集約)
COMFYUI_LRU_CACHE_SIZE_GB0ダウンロードキャッシュの上限(GB単位)。0 にすると LRU による削除が無効になります
COMFYUI_STARTUP_CHECK_INTERVAL_S / …_MAX_TRIES1 / 60ローカル ComfyUI の起動時に使用する、準備完了プローブの間隔と最大試行回数
COMFYUI_ALWAYS_RESTARTfalseクラッシュしたローカル ComfyUI を自動再起動します(COMFYUI_RESTART_MAX_ATTEMPTS/COMFYUI_RESTART_WINDOW_S の範囲内)
COMFYUI_MCP_STALL_S180レンダリング停止の監視機能:サンプラーのステップが同じ進捗を再出力し続けた場合に、STALL/BACKLOG の注記をエージェントの次のターンに先頭追加するまでの秒数(15~3600秒に制限。パネルから実行中に調整可能)
COMFYUI_MCP_INTERRUPT_S30queue(action:"cancel")が、ジョブを実際に停止する割り込みを待ってから /free によるエスカレーションを行い、停止不能と報告するまでの秒数
LOG_LEVELinfoログの詳細度:debug、info、warn、error
トランスポート

このサーバーはデフォルトで stdio を使用します。これは Claude Code、Claude Desktop、および MCP Inspector が想定する方式であるため、フラグは不要です。MCP ゲートウェイ、リモート/ホスト型の構成、または fetch ベースのクライアントでは、ストリーミング対応 HTTP を有効にしてください。

# stdio (default)
npx -y comfyui-mcp@latest

# streamable-HTTP on http://127.0.0.1:9100/mcp
npx -y comfyui-mcp@latest --http
npx -y comfyui-mcp@latest --http --host 0.0.0.0 --port 9100   # bind/port overrides
FlagEnvDefaultDescription
--http / --transport httpMCP_TRANSPORT=httpstdiostdio の代わりに /mcp でストリーミング対応 HTTP を提供します
--host <h>MCP_HOST127.0.0.1HTTP のバインド先ホスト(公開するには 0.0.0.0 を使用)
--port <n>MCP_PORT9100HTTP ポート
--comfyui-url <url>COMFYUI_URL(自動検出)特定の(リモートを含む)ComfyUI を対象にします
--force-remoteCOMFYUI_MCP_FORCE_REMOTEfalseループバックの --comfyui-url に対してリモートモードを強制します(例: localhost への dstack/RunPod ポートフォワード)
その他のエージェントとローカル LLM(Hermes、OpenClaw、Copilot CLI、Ollama)

comfyui-mcp は Claude 以外のハーネスをサポートしています。1 つのコマンドで サーバーエントリをハーネス自身の設定に書き込みます(既存の ファイルを上書きするのではなくマージします):

npx -y comfyui-mcp setup hermes     # → ~/.hermes/config.yaml      (compact by default)
npx -y comfyui-mcp setup openclaw   # → ~/.openclaw/openclaw.json  (compact by default)
npx -y comfyui-mcp setup copilot    # → ~/.copilot/mcp-config.json (full by default)
# flags: --compact | --full, --comfyui-url <url>, --dry-run

モデルの要件。 ツール呼び出しは必須要件です。ツール呼び出しを備えていない モデルは動作しません。シンキングとビジョンを推奨します。シンキングが ないと、多段階のツールチェーンが劣化します。ビジョンがないと、エージェントは 生成できても自身の出力を見ることができません。

コンパクトツールモード。 --compact / COMFYUI_MCP_TOOL_MODE=compact は、直接的なツールセットの代わりに 3 つのメタツール(list_tools → describe_tool → call_tool)を登録し、スキーマを 一度に 1 つのツールずつコンテキストに取り込みます。これは小規模なローカルモデルにとって適切なトレードオフです。 直接的なツールセットがデフォルトであり、フロンティアモデルのハーネスが求めるものです。 微調整済みモデルで無料で ローカル実行できます。 ollama pull artokun/gemma4-comfyui-mcp:e4b (ほかに約 2 GB の VRAM 向け :e2b、約 8 GB 向け :12b)は Gemma 4 であり、 comfyui-mcp のツールセット全体にわたる 1,055 件の サーバー検証済みトラジェクトリで QLoRA トレーニングされており、パネルの Ollama デフォルトです。標準の gemma4:*/qwen3:4b もエンドツーエンドで検証済みです (npm run test:local-llm)。gemma3 はネイティブのツール呼び出しを備えておらず、 サポートされていません。ホスト型モデルのガイダンス(DeepSeek/MiMo/GLM クラス)、 ハーネスごとのセットアップ、トラブルシューティングを網羅した完全なガイドは ローカル LLM とその他のエージェント です。

FlagEnvDefaultDescription
setup <agent>comfyui エントリを hermes / openclaw / copilot の設定に書き込み、終了します
--compact / --tool-mode compactCOMFYUI_MCP_TOOL_MODE=compactfull直接的なツールセットの代わりに 3 つのメタツール(list_tools / describe_tool / call_tool)を有効にします — 小規模なローカルモデルに推奨。--full も引き続き受け付けられ、現在は no-op です
リモート ComfyUI

どこで実行されている ComfyUI でもサーバーの対象にできます。ローカルへのインストールは不要です:

npx -y comfyui-mcp@latest --comfyui-url http://192.168.1.50:8188
npx -y comfyui-mcp@latest --http --comfyui-url https://comfy.example.com:8443

リバースプロキシ/API ゲートウェイの背後(パスプレフィックス + 認証ヘッダー)。独自の認証レイヤーを持つ プレフィックス付きルートで公開されるセルフホスト可能な ComfyUI 向けです(これは Comfy Cloud ではありません。Comfy Cloud は COMFYUI_API_KEY を使用します):

COMFYUI_URL=https://gateway.example.com/comfyapi \
COMFYUI_AUTH_TOKEN=your-token \
  npx -y comfyui-mcp@latest --http        # → Authorization: Bearer your-token, requests under /comfyapi

# custom header / scheme:
COMFYUI_URL=https://gateway.example.com/comfyapi \
COMFYUI_AUTH_HEADER=X-API-Key COMFYUI_AUTH_TOKEN=your-token \
  npx -y comfyui-mcp@latest --http        # → X-API-Key: your-token
自動検出

ポート: /system_stats を介して 8188(CLI のデフォルト)を試し、次に 8000(デスクトップアプリのデフォルト)を試します。

パス: 一般的な場所を順に確認します:

  • ~/Documents/ComfyUI(macOS/Windows デスクトップアプリのデータディレクトリ)
  • ~/Library/Application Support/ComfyUI(macOS)
  • ~/AppData/Local/Programs/ComfyUI/resources/ComfyUI(Windows デスクトップアプリのインストール先)
  • ~/AppData/Local/ComfyUI(Windows)
  • ~/ComfyUI、~/code/ComfyUI、~/projects/ComfyUI、~/src/ComfyUI
  • /opt/ComfyUI、~/.local/share/ComfyUI(Linux)
  • ~/Documents と ~/My Documents をスキャンして、"ComfyUI" を含むディレクトリを探します

COMFYUI_PATH を設定すると検出をスキップし、明示的なパスを使用します。


仕組み

サーバーは、REST API と WebSocket インターフェースを通じて ComfyUI と通信します。

  • WebSocket。 ワークフローをキューに登録し、リアルタイムの進行状況を受け取り(バックグラウンド監視スクリプトを通じてステップごとに確認)、実行結果を取得します
  • REST API。 システム統計、ノード定義(/object_info)、ログ、履歴、キュー管理、ワークフローライブラリ、VRAM 制御(/free)、埋め込み
  • ファイルシステム。 モデルディレクトリの読み書き、インストールパスの検出、画像のアップロード、PNG メタデータの抽出、出力の閲覧
  • 外部 API。 HuggingFace(モデル検索)、ComfyUI Registry(カスタムノードの検出)、GitHub(スキルの生成)、CivitAI(モデルのダウンロード)

MCP クライアント(Claude Code)との通信はすべて、Model Context Protocol を使用して stdio 経由で行われます。ログは stderr に出力されるため、プロトコルストリームに混在することはありません。


開発

前提条件
セットアップ
git clone https://github.com/artokun/comfyui-mcp.git
cd comfyui-mcp
npm install
スクリプト
スクリプト説明
npm run devtsx を使ってソースから実行します(ホットリロード)
npm run buildTypeScript を dist/ にコンパイルします
npm startコンパイル済みの出力を実行します
npm test単体テストを実行します(vitest)
npm run test:integration統合テストを実行します(ComfyUI の実行が必要です)
npm run lint出力を生成せずに型チェックします
npm run generations:statsローカルの生成追跡統計を表示します
npm run sync-agentsClaude のスキル/コマンド/フックを Google Antigravity、OpenCode、および .agents ファイルをサポートするその他の AI IDE 形式に同期します
Claude Code でのローカルテスト

npm パッケージの代わりに、ローカルビルドを Claude Code に指定します。

{
  "mcpServers": {
    "comfyui": {
      "command": "node",
      "args": ["/path/to/comfyui-mcp/dist/index.js"],
      "env": {}
    }
  }
}

または、プラグインを直接テストします。

claude --plugin-dir ./plugin
プロジェクト構成
scripts/
  generation-stats.mjs         # CLI: npm run generations:stats
src/
  index.ts                 # MCP server entry point (stdio transport)
  config.ts                # Auto-detection & environment config
  comfyui/
    client.ts              # ComfyUI WebSocket/HTTP client wrapper
    types.ts               # TypeScript interfaces
  services/
    workflow-executor.ts   # Execute workflows, handle images & errors
    workflow-composer.ts   # Templates (txt2img, img2img, upscale, inpaint)
    workflow-validator.ts  # Dry-run validation (missing nodes, models, connections)
    image-management.ts    # Upload images, extract PNG metadata, list outputs
    mermaid-converter.ts   # Workflow → Mermaid diagram
    workflow-converter.ts  # UI → API: de-virtualize Get/Set buses + Reroutes, expand subgraphs, resolve bypass (powers get_workflow's strip action)
    workflow-slicer.ts     # sliceWorkflow() — rgthree Fast-Groups-Bypass pipeline un-chunker (shared by the CLI + get_workflow's slice action)
    mermaid-parser.ts      # Mermaid diagram → Workflow
    model-resolver.ts      # HuggingFace search, local models, downloads
    generation-tracker.ts  # SQLite generation log, settings dedup, stats
    file-hasher.ts         # SHA256 hashing of .safetensors with cache
    workflow-settings-extractor.ts  # Extract settings from workflow JSON
    process-control.ts     # Stop, start, restart ComfyUI process
    registry-client.ts     # ComfyUI Registry API
    skill-generator.ts     # Generate node pack skill docs
  tools/                   # MCP tool registration (one file per group)
    workflow-execute.ts    # enqueue_workflow, get_system_stats
    workflow-visualize.ts  # visualize_workflow (render/render_hierarchical/mermaid/to_dsl/from_dsl)
    workflow-compose.ts    # create_workflow (create/modify/validate/node_info)
    workflow-validate.ts   # the validate action's body
    workflow-library.ts    # get_workflow (8 read actions), save_workflow (save/lock/verify_lock)
    image-management.ts    # get_image (7 read actions), upload_image (5 write actions)
    model-management.ts    # download_model, list_local_models (the two consolidated model tools)
    memory-management.ts   # clear_vram
    registry-search.ts     # search_custom_nodes (search/details)
    node-management.ts     # install_custom_node (install/update/fix/uninstall/enable/disable/list/…)
    node-pack.ts           # node_pack (scaffold/verify/publish/read/write/patch/git/…)
    generation-tracker.ts  # the get_history suggest/stats jobs
    diagnostics.ts         # get_system_stats (action:"logs"), get_history
    process-control.ts     # restart_comfyui (restart/start/stop)
    index.ts               # Registers all tool groups
  utils/
    errors.ts              # Custom error hierarchy with MCP integration
    logger.ts              # stderr-only logging (safe for stdio transport)
    image.ts               # Base64 encoding utilities
plugin/
  .claude-plugin/          # Plugin manifest
  .mcp.json                # MCP server config for plugin
  commands/                # Slash commands
    gen.md                 # /comfy:gen — image generation
    viz.md                 # /comfy:viz — workflow visualization
    node-skill.md          # /comfy:node-skill — skill generation
    debug.md               # /comfy:debug — failure diagnosis
    batch.md               # /comfy:batch — parameter sweeps
    convert.md             # /comfy:convert — format conversion
    install.md             # /comfy:install — node pack installation
    gallery.md             # /comfy:gallery — output browser
    compare.md             # /comfy:compare — workflow diff
    recipe.md              # /comfy:recipe — multi-step pipelines
  skills/                  # Knowledge bases
    comfyui-core/          # Workflow format, node types, pipeline patterns
    prompt-engineering/    # CLIP syntax, model-specific prompting
    troubleshooting/       # Error catalog with patterns and fixes
    model-compatibility/   # Compatibility matrix per model family
  agents/                  # Autonomous agents
    explorer.md            # Research custom node packs, generate skills
    debugger.md            # Diagnose workflow failures
    optimizer.md           # Analyze and optimize workflows
  hooks/                   # Pre/post tool-use hooks
    hooks.json             # Hook configuration
    vram-check.mjs         # VRAM watchdog before execution
    save-warning.mjs       # Save prompt before stop/restart
    job-complete-notify.mjs # Job completion notification via temp files
  scripts/                 # Background scripts
    monitor-progress.mjs   # Real-time WebSocket progress monitor
    launch-server.mjs      # MCP server launcher — global install if present, else npx with a
                           #   cold-start handshake rescue so a first run cannot time out (#1447)

トラブルシューティング

「ポート 8188、8000 で ComfyUI が検出されません」 ComfyUI が実行中であることを確認してください。デスクトップアプリはデフォルトでポート 8000 を使用し、CLI は 8188 を使用します。カスタムポートを使用する場合は、COMFYUI_PORT を設定してください。

「COMFYUI_PATH が設定されていません」 自動検出で ComfyUI のデータディレクトリを見つけられませんでした。models/ フォルダーを含むディレクトリ(例:~/Documents/ComfyUI)を COMFYUI_PATH に設定してください。

「複数の ComfyUI インストールが検出されました」 これは情報メッセージです。サーバーは最初に見つかったものを使用します。特定のインストールを選ぶには、COMFYUI_PATH を設定してください。

モデルのダウンロードに失敗します HuggingFace のアクセス制限付きモデルには、HUGGINGFACE_TOKEN を設定してください。CivitAI には、CIVITAI_API_TOKEN を設定してください。

ワークフローの実行エラー /comfy:debug を使用して失敗の原因を調べてください。または、get_history(action: "diagnose")/get_system_stats (action:"logs") を直接呼び出すと、ComfyUI の Python トレースバックを含むすべてのエラーメッセージを確認できます。

メモリ不足(OOM) 大きなワークフローを実行する前に、clear_vram を使用して GPU メモリを解放してください。VRAM ウォッチドッグフックは、ワークフローの実行前に空き容量が 1GB 未満の場合に警告します。モデル別の VRAM 使用量の推定については、troubleshooting スキルを参照してください。

カスタムノードが見つからない /comfy:install <pack> を使用して、レジストリから不足しているノードパックをインストールしてください。デバッグコマンドは不足しているパックを検出し、インストールを提案します。


コントリビューション

コントリビューションを歓迎します。開発環境のセットアップ、プロジェクトの規約、MCP ツールの追加方法、リリース手順については、CONTRIBUTING.md を参照してください。

簡単な手順:フォーク → ブランチを作成(feat/my-feature)→ 変更を加える(npm run build と npm test が成功することを確認し、ツールに手を加えた場合は npm run docs:gen を実行します)→ PR を作成します。


メンテナー

@artokun が開発・メンテナンスしています。Comfy-Org エコシステム全体で継続的に貢献しています。

  • Comfy-Org/ComfyUI_frontend. マージ済み PR は 10 件で、その大半は v2 グラフレンダラーに関するものです。サブグラフのレンダリング、プロモートされたウィジェットの連携、ビューポートの状態保持に加え、cloud/1.41、cloud/1.42、core/1.41、core/1.42 へのバックポートも行っています。
  • Comfy-Org/ComfyUI(コア)。Python バックエンドの動画・音声保存処理におけるクラッシュを修正しました(#12683、#12550)。

Comfy-Org にお勤めの方(または ComfyUI エコシステム関連で採用を行っている方)がいらっしゃいましたら、ぜひお話ししたいです。[email protected] までメールでご連絡ください。


ライセンス

MIT です。詳しくは LICENSE をご覧ください。


変更履歴

リリース履歴の全容は、構成が整理された CHANGELOG.md をご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。