comfyui-loop-mcp
comfyui-loop-mcp

あなた自身の ComfyUI のためのループ対応 MCP サーバーです。 API を呼び出すだけではありません。ループを実行します: build → run → look → critique → fix、出力が実際にブリーフを満たすまで。
node_errors がゼロで実行されるグラフは、正しいのではなく、有効です。ゆがんだ手、ずれた背景、硬いマットエッジ、目に見えるタイルの継ぎ目 — そのどれもエラーログには現れません。ピクセルにのみ現れます。だからこそ、すべてのツール説明、すべてのツール応答、そしてサーバー自身の指示は、モデルがグラフを完成と宣言する前に look するよう促します。
他の誰も持っていない部分: ラチェットはツールであって、提案ではありません。 ほとんどのエージェントツールは ComfyUI を駆動します。これはループを管理します — 長いループではコンテキストが圧縮され、その瞬間に記憶されていた "best-so-far" は消えてしまいます: ラチェットは静かにラチェットを止め、モデルはすでに拒否した変更を再試行し、最終回答としてリグレッションを渡してしまうことがあります。だから、最良のグラフと台帳は、モデルのメモリではなく、ディスク上にあります。元に戻すことは、思い出しの行為ではなく、ツール呼び出しです。
loop_start ─▶ submit ─▶ get_result ─▶ get_image ─▶ compare_images ─▶ loop_record ─┐
▲ (LOOK) (what moved?) (ratchet) │
└─────────────────── revert to best, try something else ◀─────────────────┘
↓ can't name a defect?
loop_finish + loop_report → sign-offこの手法はサーバーに同梱されています。ループプロンプトと Claude Code スキルは comfy_loop/docs/ にあり、wheel にパッケージされているので、comfy_loop / comfy_skill / comfy_install はサーバーがインストールされている場所からそれらをそのまま提供します — 単一ソース、同期を保つものはありません。(これらはもともと comfyui-llm-onboarding-prompt で始まりましたが、そのリポジトリはもはやメンテナンスされておらず、現在はこのリポジトリで保管されています。)
Comfy 自身の MCP サーバーとの比較 — ローカルとクラウドの両方を正直に
デザインの位置づけ: 発見 vs 修復 — ローカルツールが本当に勝つ/負ける場所、そしてノーススター
Comfy 自身の MCP サーバーとの比較
ComfyUI は公式サーバーを 2つ 提供しています。これは、それらと並んで構築された3つ目の存在です — 独立して、そして問題の反対側から。
Comfy-Org/comfy-mcp (最初のコミットは 2026-07-01 で、このリポジトリの翌日ですが、公開はそちらが先でした) は、ローカルの ComfyUI を comfy-cli 経由で駆動します: すべてのツールは comfy バイナリを外部プロセスとして実行し、その JSON エンベロープを解析します。Comfy Cloud MCP (https://cloud.comfy.org/mcp) は、Comfy の GPU 上でグラフを実行するリモート HTTP サーバーです。どちらも ComfyUI チームによって構築・保守されています。
これは /prompt と /object_info に直接 HTTP で通信します — CLI もアカウントも不要、httpx 以外にインストールするものもありません — そして、その機能面を、グラフが実行された後に始まる仕事の半分に費やしています。
実際の違い
彼らのローカルサーバーは、管理対象として ComfyUI インストールを扱います: 起動、停止、別バージョンへの切り替え、サインイン、ホストされたパートナーモデルへのクレジット使用、ログの追跡、パックの更新。これはこのリポジトリが持つ範囲より本当に大きく、プラットフォームベンダーが所有するのに最も適した領域です — ComfyUI や comfy-cli、パートナー API が動くたびに変化します。必要なのが インストールを駆動して保守すること なら、彼らのものを使ってください。
こちらは、管理対象を出力とみなします — それが私たちが責任を負っていた部分だからです。これは Alienrobot 自身のプロダクション業務から生まれました。そこでは、グラフが実行されることが仕事の始まりであり、終わりではありません。ここにはプロセスを起動したりクレジットを消費したりするものは何もありません。その代わりに: ピクセルをモデルに返し、2つのパスを差分してドリフトが隠れない画像にし、ブリーフが実際に要求するものを採点し、そして圧縮されたコンテキストがそれを失わないように best-so-far(現時点での最良)をディスク上に保持します。それが他の誰も持っていない部分です — /view を呼ぶのが難しいからではなく、「エージェントに look させ、リグレッションの上に構築するのを止めさせる」ことが、エンドポイントではなく規律だからです。
this repo | Comfy-Org/comfy-mcp | |
ComfyUI との通信方法 | その HTTP API( |
|
追加依存 | なし( |
|
インストールしていない ComfyUI も扱える | はい — URL が到達できるものすべて(シェルを持たないボックスを含む) | 部分的に。一部のツールは構造上ローカルのみ |
結果を見る |
|
|
結果を評価する |
| — |
最良のものを保持する |
| — |
パラメータを探索する |
|
|
グラフの事前チェック |
|
|
サブグラフテンプレート | 展開され再配線される(昇格したウィジェットは保持) | クライアント側で展開 |
探索のトークンコスト | コンパクトなノード表記( | 明言された目標ではない |
不足分のインストール | ComfyUI-Manager: | レジストリ |
ゼロから稼働まで | エージェントが行う: | ターミナルで |
ComfyUI プロセスの実行 | いいえ — 再起動のみ(Manager 経由); シェルはエージェントが所有 |
|
ホスト型/パートナーモデル、アカウント、クレジット | 意図的になし |
|
ジョブ制御 |
| 1 つの |
MCP サーフェス | 43 ツール + 2 プロンプト + 3 リソース | 39 ツール |
サイズ / ライセンス | 約 3,700 行、MIT | 約 16,000 行、AGPL-3.0-or-later または商用 |
作者 | Alienrobot — 当社自身の VFX/生成的作業のために構築され、使用されている | ComfyUI チーム、プラットフォーム本体と並行して |
対応範囲 | ループ: 発見、変換、出力の評価 | インストール全体: ライフサイクル、アカウント、パートナー API、パック |
どちらを使うか
GPU なし → Cloud MCP。ローカルにあるものは、手元にないハードウェアに対抗できない。
「インストールして、実行して、動かし続ける」 → Comfy-Org/comfy-mcp。ライフサイクル、パートナーモデル、バックグラウンドダウンロード、バージョン固定。
「最初の結果は動く、そして訓練された目がそれを拒否する」 → これ。 6 本の指、ずれた背景、硬いマットエッジ、目に見えるタイルシーム、沸騰するクリップ。それがループであり、これは完全にそのループを中心に構築されたサーバーだ。
これらは組み合わせ可能です。両方を実行することを妨げるものは何もなく、ツール名も衝突しません。
(パッケージ名は衝突しました。このリポジトリも一時的に comfy-mcp という名前でした。これは ComfyUI の名前空間を所有する人々と争っても勝ち目のない議論です。そのため comfyui-loop-mcp となり、インポートパッケージは comfy_loop で、両方をサイドバイサイドでインストールできます。)
追加しないもの
競合他社の機能リストを丸ごと取り込むと、結局は平凡なツールが 2 つになるだけです。彼らから取り入れたものは、ループが必要とするもの — 事前チェック、ジョブ状態、ログの追跡、VRAM の余裕、アップデート — だけです。意図的に除外しているものは次のとおりです:
アカウント、クレジット、ホスト型パートナーモデル。 売り文句は「あなたのマシンから何も出て行かない、サインアップ不要、メーターなし」です。クレジットゲートはそれと矛盾します。Kling や Veo を使いたいなら、向こうのサーバーが同意ゲート付きで適切に行います。このリポジトリが再発明する理由はありません。
ComfyUI プロセスの起動と停止。 HTTP クライアントは実行していないサーバーを起動できません。また、シェルを持たないボックスにこれを向けることはエッジケースではなくサポート対象です。
restart_comfyui(Manager 経由)が正直な限界です — しかし「できない」は「助けない」と同じではありません。エージェントは通常シェルを持っているので、到達不能なサーバーはこのマシン用のインストール/起動コマンドを返し、エージェントがそれらを実行することを期待します。このサーバーも Comfy-Org のものも、あなたの代わりに ComfyUI をインストールしません(向こうはターミナルでcomfy installを実行するよう促します)。違いは、ここでは指示がツール呼び出しを通して返され、それに対応できる人に向けられていることです。ワークフローの保存/共有/サービスとしての再現。
save_workflowは往復検証済みのファイルを渡します。その後それがどこに置かれるかはあなた次第です。
Related MCP server: ComfyPilot
ループにマッピングされた 3 つの MCP プリミティブ
プリミティブ | 公開内容 | ループ工程 |
ツール |
| 推測するな、発見せよ |
| 拡張(テンプレートが必要とするものをインストール) | |
| GPUが関与する前に検証 | |
| 圧縮(トークン効率の高いグラフ) | |
| 上書き付きで実績のあるテンプレートを実行(グラフはコンテキスト不要) | |
| ビルド → 実行 | |
| 見る | |
| ラチェット+台帳、ディスク上 | |
| 制御 | |
プロンプト |
| 規律全体をひとつのコマンドで |
リソース |
| 真実+ドキュメント |
3つの点が、これを単なるAPIラッパーではなくループ対応にしている:
get_imageはレンダリング済みの出力をモデルに返す——これが「見る」を現実にするステップだ。モデルは文字通りピクセルを見る。ツールの応答がループを促進する。
submit_workflowは成功時に*「有効だが正しくはない——さあ見よ」と言い、拒否時には「イテレーションではない——指定されたノードを修正して再提出せよ」と言う。get_resultは指示で締めくくる:「ここで止まるな——見て、それからパラメータを1つ変更するか、ブリーフが満たされたと宣言せよ」*。サーバー指示にはループ優先ポリシー(下記参照)が含まれており、クライアントが接続時に注入する。
ループ優先ポリシー(サーバー指示)
ハンドシェイク時にサーバーはエージェントにいつループすべきか、いつすべきでないかを伝える:
常にJSONを書く前にライブAPIから発見し、実行して検証する;
node_errorsはイテレーションではない——修正して再提出する。ループを優先するのは、訓練された目が出力を拒否しうる場合——構図/数、類似性、マット/エッジ品質、アップスケール/レストア、再ライティング、テクスチャの継ぎ目、動画の時間的安定性、「見た目を良くする」など。
ラチェット——これまでの最良を保持し、それを上回る場合のみ変更を維持し、そうでなければ元に戻して別の方法を試す;プラトーではパラメータ → 配線 → モデルの順にピボットする。ブリーフに客観的テストがある場合のみそれをゲートとし、それ以外は目視で判断する。
ループをスキップするのは機械的なタスクのみ(フォーマット変換、純粋なAPIクエリ、またはユーザーが実行可能なグラフだけを明示的に望む場合)。
迷ったときは、完了を宣言する前に少なくとも1回は見て批評するパスを行う。
ラチェット/台帳/ピボットはKarpathyのAutoResearchループから適応したもので、主観的な画像作業向けに調整されている(客観的なゲートは存在する場合のみ;永久に走らせる代わりに人間の承認チェックポイントを置く)。これらのポリシー行はサーバーの instructions +ツール応答にあり、完全なメソッドは comfy_loop プロンプトにあり、リポジトリのループドキュメントをそのまま提供する。
MCPは強制できない——能力と指針を提供するだけだ。これによりループは、エージェントが繰り返し優先するよう指示される強力で明確に範囲設定されたデフォルトとなる。Claude Codeで確実な保証を得るには、同じテキストを常時オンのスキルとしてインストールせよ:
mkdir -p ~/.claude/skills/comfyui-workflows cp comfy_loop/docs/SKILL.md ~/.claude/skills/comfyui-workflows/スキル=常時オンの規律、MCP=それが駆動するツール。これは
comfy_skillプロンプトが提供するのと同じファイルなので、両者が矛盾することはない——そして独自の古いレシピを保持する代わりに、ブートストラップはcomfy_installに委ねる。
ツールリファレンス
発見
ツール | 引数 | 戻り値 |
| — | ループステップ 0、および実際の事前チェック。何も応答しない場合、このマシン固有の対処方法を返します — 見つかったインストールを開始するか、新規作成するか、リモート URL のトンネルを開くか(トラブルシューティング を参照)。応答する場合も、ここからレンダリング成功までの間に何が立ちはだかっているかを挙げます: CPU 上で動作している torch(すべてのレンダリングは動作しますが、約50倍遅く、エラーは報告されません)、ディスク上に重みがない(完全に機能する ComfyUI だが何もレンダリングできない)、ComfyUI-Manager がない(修正するための2つのコマンド付き。 |
|
| クラス名または表示名が一致するノード(スキルのクラス限定検索の厳密なスーパーセット)。キーワードを省略すると件数を返します。 |
|
| 1つのノードのインターフェースをコンパクトな |
|
| ローダーがディスク上で提供する実際のモデルファイル(グラウンドトゥルース)を、その enum から読み取ります。レガシーリストと |
|
| ダウンロード可能なモデルのカタログ(ComfyUI-Manager のリスト)。まだ持っていない checkpoints/LoRAs/VAEs/upscalers を見つけられます。各結果はインストール済みかどうかを示します。インストールは |
|
|
|
|
| テンプレートを取得します。 |
|
| FlowZip テキストを完全な litegraph JSON に展開し直します。 |
|
| FlowZip/litegraph → API/プロンプト形式( |
|
| テンプレートの上書き可能な入力(node_id → params + 現在の値)を完全なグラフを読み込まずに一覧表示します — サブグラフ内のパラメータも含みます。また、作者自身の Note/MarkdownNote テキストも返します。そこにはトリガーワードと必要な重みが実際に含まれており、命令としてではなく信頼できないデータとして引用符付きで示されます。 |
|
| 動作確認済みのテンプレートを |
拡張(テンプレートが必要とするものをインストール — ホストに ComfyUI-Manager が必要です)
ツール | 引数 | 戻り値 |
|
| ノードクラスを |
|
| ComfyUI-Manager のキューを介してパックをインストールします(信頼されたレジストリ、任意のコードは実行されません)。その後、再起動が必要です。 |
|
|
|
| — | ComfyUI を(Manager 経由で)再起動し、新しいノードが |
|
| Manager のキューを介して ComfyUI コアおよび/またはインストール済みのすべてのパックを更新し、その後再起動が必要だと伝えます。サードパーティのコードを実行します — 先にその旨を伝えてください。ループ途中では実行しないこと: 以前のパスが古いコードに対して測定されたラチェットの下にノードの動作を移します。 |
検証 — GPU が関与する前に知り得るすべて
ツール | 引数 | 戻り値 |
|
| "これはこのマシンで実行できるか" へのひとつの答え: 所持していないノードクラス(同じパスでパック ID に解決済み)、そのローダーのリストにないモデルファイル名(実際に持っている最も近いもの付き)、未設定のままの必須入力、存在しないノードを指す接続、ノードで宣言された範囲外の値、そして出力ノードのないグラフ — これはグリーンで実行され、表示するものが何も生成されません。 |
構築 → 実行 → 確認
ツール | 引数 | 戻り値 |
|
| ローカル画像を ComfyUI の |
|
| 成功時: |
|
|
|
|
| 実際の画像をモデルに返し、ピクセルを判断できるようにします。 |
|
| 比較結果を画像として返します。 |
|
| 平均/最大絶対差分 + 変化したピクセルの割合(%) — 「意図した箇所だけを変更した」ことを確認するゲート。フレームをこっそり書き換えてしまう「小さな調整」を捕捉します。 |
|
| 要件に客観的テストがある場合の、ラチェット用の客観的スコア。 |
|
| ビデオ出力の寸法、fps、フレーム数。フレームにインデックスを付ける前に呼び出してください — 範囲が必要ですし、比較しようとしている2つのクリップがそもそも同じ長さかどうかを知る必要があります。 |
|
| ビデオ出力の1フレームをフレームインデックス指定で画像として返します。 |
|
| 両クリップの同じフレームインデックスで同じ比較を行います。タイムスタンプで比較すると、長さが異なった時点で(フレーム上限、トリム、fps の違い)静かに誤ります — 無関係な2つの瞬間を完全な自信を持って比較することになります。フレーム数が一致しない場合、警告は画像に焼き付けられ、読み飛ばせるテキストとしては残りません。 |
|
| フレーム間の不安定性を数値化したもの — 「ボイル(チラつき)するか?」に対する客観的なゲートであり、これは単一の静止画では決して示せません。単純な連続フレーム差分なので、実際の動きもカウントされます。変更前後の同じクリップに対して使うか、静的であるべき領域に |
ループは永続的な状態として — ラチェットはツールであり、記憶の訓練ではない。 長いループは圧縮される。もし現時点での最良と台帳がモデルのコンテキストにしか存在しなければ、 ラチェットは静かにラチェット動作を停止し、モデルはすでに拒否した変更を再試行し、 退行を最終結果として渡すことになる。だからそれらはディスク上に置かれる。
ツール | 引数 | 戻り値 |
|
| 実行を開始 → |
|
| パスを記録し、ラチェットを適用する。 |
|
| 同じグラフを1つの入力の最大8つの値にわたって、1回の呼び出しで実行する — 推論で到達できない値(denoise、cfg、strength)のため。他のすべては同一に保たれるため、出力はちょうど1つの変数だけが異なる。値 → |
|
| 現時点での最良のグラフ。圧縮後の真実の源 — あなたの記憶ではない。 |
|
| 追記専用のループログ:すべてのパス、何が変わったか、それが何をしたか。圧縮後にスレッドを復元する。また、承認時にユーザーに渡すログでもある。 |
|
| 収束チェックポイントで閉じ、承認のために提示する最終的な台帳と最良のグラフを返す。 |
|
| 実行全体を1つの自己完結型HTMLページとしてレンダリングする — すべてのパス、何が保持されたか、何が元に戻されたか、サムネイルはbase64でインライン化され、ComfyUIをオフにしても開ける。最終画像は何も証明しない。捨てたパスこそが、ループが収束したことを示すのだ。 |
配信
ツール | 引数 | 戻り値 |
|
| API → UI/litegraph に変換し、人間が開いて編集できるようにし、ComfyUIのワークフローリストに保存する。ラウンドトリップ検証済み:結果はAPIに変換し直され、入力と差分比較される。 |
制御
ツール | 引数 | 戻り値 |
| — | デバイス / VRAM(解像度やバッチの調整時、またはOOM後に有用)。 |
| — | 実行中と保留中のもの。 |
|
| ブロックせずに1つの実行の状態:キュー済み(位置付き)、実行中、N個の出力で完了、またはそれを殺した実行エラー。複数が進行中の場合に必要なもの — たとえば |
|
| 1つのキュー済み実行を削除する。または、そのIDが実行中のものであれば中断する。IDなしでは保留キューをクリアし、実行中のジョブには触れない。 |
| — | 現在の実行をキャンセルする。 |
|
| モデルをアンロードし、エグゼキュータのキャッシュをリセットする( |
|
| ComfyUI自身のログの末尾を表示する。そこでは失敗が自ら説明する:ノード内のトレースバック、OOM、起動時にインポートに失敗したカスタムノード(それが |
プロンプト: comfy_loop(完全自律メソッド)と comfy_skill(コンパクトな
スキル)。どちらもリポジトリのmarkdownから逐語的に提供される。さらに comfy_install —
ブートストラップ手順。サーバーが実行されているマシンに対して生成される:
すでにインストールがある場合のインストール方法、venvを構築するためのインタープリタ
(このサーバー自身のもの。Pythonが解決の前提条件になることはない)、comfy-cli と
git が存在するかどうか、そしてこのボックスのアクセラレータが実際に必要とする
torchビルド(CUDA / ROCm / MPS / なし)。サーバーはそのどれも実行できない。
エージェントは実行できる。そしてそれが宛先だ。
リソース: comfyui://object_info(ライブの完全ダンプ)、comfyui://loop-method、
comfyui://skill。
ループが実際に動くのを見る
このMCPサーバーを通じて実際のComfyUI(RTX 4090、SD1.5)に対して完全に駆動される。 ブリーフ:「暖かい木のテーブルの上の1個の赤いりんごの、くっきりとシャープに焦点の合ったマクロスタジオ写真、細かい皮の質感、豊かなディテール。」 シードは42に固定され、各パスがちょうど1つのつまみを変更し、効果が帰属可能になる。 客観的指標はラプラシアン分散(標準的なシャープネス/焦点の尺度)。

パス | 1つの変更 | シャープネス (varLap) | 見た目による判定 |
1 | ベースライン — 6ステップ、cfg 2.5 | 425 | 柔らかく、平らで、マット。最も弱い。 |
2 | ステップ 6 → 24 | 1204 | よりシャープ — ただし高い数値は木目によるもので、りんごの皮はまだプラスチックのよう。 |
3 | cfg 2.5 → 7.5 | 515 | りんごは豊かになる(彩度が上がり、皮に斑点)— 背景が柔らかくなったため指標は下がる。 |
4 | euler → dpmpp_2m + karras | 740 | 勝者。 くっきりしたハイライト、目に見える皮目、信じられる木。 |
5 | ステップ 24 → 36 | 661 | ≈ パス4。収穫逓減 → 停止。 |
ループが基づいている教訓をライブで捉えた: メトリクスはパス 2 でピークに達したが、 パス 2 が最良の画像ではない — そのスコアはリンゴのディテールではなく背景テクスチャによって 水増しされていた。勝者(パス 4)は見ることで選ばれた。緑の数字は 有効であって、正しいわけではない。(example_apple.png がそのパス 4 の結果である。)
…そしてもう半分: モデル側が間違っている場合
リンゴの例はメトリクスを盲信できない理由を示している。この実行例は モデルを盲信できない理由を示している — これこそがラチェットがツールであり プロンプトのメモではない理由そのものである。
指示: "シームレスにタイル可能な石畳テクスチャ — ラップに目に見えるシームがない"
客観的ゲート付き(measure_image → tile_seam)。シードは全体で同じため、
各パスはちょうど 1 つのことだけを変更する。以下のすべてのテクスチャは
2×2 にタイルされている — シームは隠れる場所がない。

パス | 1 つの変更 |
| ラチェット |
1 | ベースライン SDXL | h 1.77 · v 1.23 → 境界値 | 保持(初回) |
2 |
| h 0.78 · v 1.12 → シームレス | 新記録 |
3 |
| h 1.03 · v 1.56 → シーム復活 | 差し戻し |
パス 3 でモデルは loop_record に結果が "better" だと伝えた。実際は違った:
x_only は水平にタイルし、垂直方向のラップは壊れたまま — 右の画像で
石が水平の継ぎ目に沿って平らに切り落とされているのが見える。客観スコアが
その主張を覆し、パス 2 を復元し、良いグラフを渡し返した。
これこそがこのサーバーが防ぐために存在する失敗である: 終わりたいエージェントは 回帰を改善と呼ぶ。 もし best-so-far がディスク上ではなくモデルのコンテキストに あったなら、その回帰が最終回答になっていただろう。
インストール
短いバージョン: エージェントにやってもらう。 これを Claude Code(または シェルを持つ任意の MCP クライアント)に貼り付けて、そこで止める:
https://github.com/huikku/comfyui-loop-mcp から ComfyUI loop MCP をセットアップ — クライアントに登録し、ComfyUI が動いていなければインストールと起動も行う。
あなたの手を借りずにそれを完了するために必要なものはすべて揃っている: サーバーの登録は
claude mcp add 1 つで、接続後には comfy_install プロンプトが
あなたのマシン用のブートストラップを返す — 既存の ComfyUI の起動コマンド、
venv を構築するインタープリタ、カードに実際に必要な torch ビルド、
ComfyUI-Manager、モデルの置き場所。check_comfyui はその後、まだ欠けているもの
(ウェイトなし、torch が CPU 上、Manager なし)をレポートではなく
エージェントが修正すべきものとして名指しする。
文章よりも設定を貼り付けたい場合、これはサーバーを GitHub から直接実行する —
クローンも pip install も不要:
{
"mcpServers": {
"comfyui": {
"command": "uvx",
"args": ["--from", "git+https://github.com/huikku/comfyui-loop-mcp", "comfyui-loop-mcp"],
"env": { "COMFYUI_URL": "http://localhost:8188" }
}
}
}Claude Code なら 1 行:
claude mcp add comfyui -- uvx --from git+https://github.com/huikku/comfyui-loop-mcp comfyui-loop-mcp代わりにリポジトリをクローンすると .mcp.json がすでにある —
Claude Code は最初のオープンでサーバーを提示し、コマンドは一切不要。
追加後はクライアントを再接続する; MCP サーバーは接続時に読み込まれる。
開発する場合:
git clone https://github.com/huikku/comfyui-loop-mcp && cd comfyui-loop-mcp
pip install -e . # or: uv tool install --editable .Python ≥ 3.10 と到達可能な ComfyUI が必要。mcp[cli]、httpx、
anyio、pillow をインストール。MCP SDK 1.x と 2.x の両方で動作 —
2.0 は FastMCP を MCPServer に改名し、Image ヘルパーを移動したが、
サーバーはどちらの方法でもインポートする。
comfy-mcpとしてインストールしていた場合? その名前は PyPI 上で Comfy-Org のサーバーのものであるため、 これは現在comfyui-loop-mcp(インポートパッケージcomfy_loop、コマンドcomfyui-loop-mcp)。最初にpip uninstall comfy-mcpを実行し、MCP クライアント設定を更新する。ディスク上の既存のループ実行は自動的に見つかる —COMFY_LOOP_STATE_DIRを別の場所に指定するまで、古い~/.comfy-mcp/runsが 引き続き使用される。
常時オンの規律(Claude Code)
このメソッドはスキルとしてもインストールされるため、頼まれるのを待つのではなく トリガーワードで読み込まれる — エージェントにもこれを頼むか、または:
mkdir -p ~/.claude/skills/comfyui-workflows
cp comfy_loop/docs/SKILL.md ~/.claude/skills/comfyui-workflows/comfy_skill プロンプトが提供するファイルと同じものなので、スキルとサーバーは
ずれることがない。
設定
環境変数 | デフォルト | 目的 |
|
| ComfyUI サーバー |
| このパッケージの上のリポジトリルート |
|
|
| オンラインテンプレートカタログが読み込む |
| 未設定 |
|
|
| ラチェットと台帳の置き場所。実行がすでにある場合は旧名の |
リモートの ComfyUI を指す
ComfyUI は通常 127.0.0.1 にバインドするため、別のマシン上の ComfyUI は
デフォルトではネットワーク越しに到達できない。2 つのオプションがある:
SSH トンネル(最も簡単、ComfyUI をプライベートに保つ): ポートを転送し、
COMFYUI_URLは localhost のままにする:ssh -N -L 8188:localhost:8188 your-remote-host # COMFYUI_URL stays http://localhost:8188ComfyUI をネットワークにバインドして直接指す(信頼できるネットワークのみ — 認証なしの API を公開することになる):
python main.py --listen 0.0.0.0 --port 8188 # COMFYUI_URL=http://<remote-ip>:8188
使用方法
エージェントで
comfy_loopプロンプトを読み込む(またはcomfyui://loop-methodリソースを読ませる)と、完全なメソッドが取り込まれる。 クライアントがサーバー指示を注入する場合、ループ優先ポリシーは すでに有効になっている。目標を与える。
check_comfyui→list_nodes/get_node/list_models→ API 形式の JSON を構築 →submit_workflow→get_result→get_imageを実行し、批判と反復を — パスごとに 1 つの変更 — 欠陥を名指しできなくなるまで行い、承認のために結果を提示する。
トラブルシューティング
「ComfyUI に到達できません」 — 返信は苦情ではなく一連の指示であり、 このサーバーにはないシェルを持つエージェント宛てである: このマシン上の ComfyUI(
$COMFYUI_PATH、comfy-cli のワークスペース、~/ComfyUI、~/comfy、~/code、~/github、/opt)を探し、そのインストールの venv python を使った 起動コマンドか、なければクローン + venv + Manager + 起動シーケンスを返す。COMFYUI_URLがリモートの場合、ローカルへのインストールは意図的に 提案しない — それは間違ったマシンに 2 つ目の未使用 ComfyUI を残すだけであり、 代わりに SSH トンネルを提示する。すべてのツールがこれを返す —check_comfyuiだけでなく、アドバイスはトランスポートに付加されている。ノード/モデルが見つからない — ComfyUI 側でパック/モデルをインストールし、 その後 ComfyUI を再起動して
/object_infoに反映させる(それまで API は 古い情報のまま)。get_imageが何も返さない — グラフにSaveImage/PreviewImageノードがあることを確認する;get_resultは実際に生成されたものを列挙する。install_node_packがブロックされる / 何もしない — インストールツールは ホストに ComfyUI-Manager が必要で、 Manager のセキュリティレベルが API インストールを許可している必要がある。 インストール後、/object_infoに新しいノードが表示される前にrestart_comfyuiが必要。find_missing_nodesが「間違った」パックを選ぶ — 複数のパックが同名の ノードをエクスポートできる; 解決は最初のレジストリ一致を取る。インストールが クラスを提供しない場合、報告されたパックを確認し、正しいものを明示的に インストールする。
ライセンス
MIT。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA lightweight MCP server that bridges AI agents with a local ComfyUI instance to generate and iteratively refine images, audio, and video through conversational tool calls.41MIT
- AlicenseBqualityBmaintenanceAn MCP server that bridges AI agents with ComfyUI for automated workflow building, execution, monitoring, and output routing.961MIT
- AlicenseAqualityCmaintenanceMCP server that lets OpenCode (or any MCP-compatible AI coding tool) directly control ComfyUI for AI image generation.142MIT
- AlicenseAqualityAmaintenanceThe MCP server that drafts ComfyUI workflows a human can actually read. It lets coding agents build, repair, port, validate, and run ComfyUI workflows against your own ComfyUI instance, delivering clean, organized, fully-labeled workflows.292MIT
Related MCP Connectors
MCP server for Hailuo (MiniMax) AI video generation
MCP server for Luma Dream Machine AI video generation
MCP server for Flux AI image generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/huikku/comfyui-loop-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server