These knowledge actions are exposed on the headless
comfyui MCP server, so
any MCP client has them — including the panel’s ChatGPT/Codex backend,
which can’t load Claude’s native skills. That’s what gives both providers the
same expertise (knowledge parity). See Backends / providers.Why this exists
Claude loads the bundled model-family skills natively. The Codex backend can’t — so the same knowledge is published as an MCP tool any backend can call. The cost actions (check_runtime, and the pack: modes below) keep the agent from
silently spending paid API credits when a free local-GPU path exists.
It is one tool, list_packs, driven by an action parameter. action is the
only required field; everything else is per-action.
Packs
action: "list"
List the bundled installer packs — one-command setups for a model family:
custom nodes + model weights (manifest.yaml) plus a ready workflow.json.
Each entry reports its family/kind, its runtime, whether it has a ready workflow +
manifest, and the manifest path for apply_manifest.
All bundled installer packs are local-GPU / free — they run on the user’s own
GPU and never spend paid API credits. Prefer applying the matching pack
(
apply_manifest) and loading its ready workflow (panel_load_workflow pack:<name>)
over building a generic graph from scratch.This action takes no other parameters.
action: "read_workflow"
Return a bundled pack’s ready workflow.json graph (discover names with
action: "list").
string
required
The pack name (from
action: "list"). Validated against path traversal; must
match an existing pack.Templates
action: "list_templates"
List the custom-node-contributed ComfyUI workflow templates available on the
connected ComfyUI (each pack’s own example_workflows/*.json), grouped by source,
via the live server’s /api/workflow_templates index. Check here for a matching
starter after checking the bundled skills + installer packs.
Scope limit: this endpoint does not include ComfyUI’s own core bundled
templates from the
comfyui-workflow-templates package — those are served to the
frontend separately, so an empty result here does not mean no official template
exists. Point the user at the frontend’s own Templates browser as well.This lists what’s available; loading a template graph onto the canvas is done in
the ComfyUI frontend’s Templates browser (the panel agent surfaces the matching
template name rather than loading it headlessly).
This action takes no other parameters.
Workflow readiness
action: "check_runtime"
Determine whether a workflow runs on the user’s own GPU (LOCAL — free) or uses
hosted API nodes (PAID api credits). Scans the workflow’s node class_types
against the connected ComfyUI’s API-node set (the same signal list_api_nodes uses)
and returns { runtime: 'local' | 'api' | 'mixed' | 'unknown', usesApiNodes, apiNodes[], unknownNodes[] }.
string
A bundled pack name (from
action: "list"). Packs are local/free; this confirms it
from the actual graph.object | string
A workflow graph to classify (UI or API/prompt format), as an object or JSON string.
Use this for ad-hoc / generated workflows.
action: "extract_deps"
Work out which custom node packs a workflow requires, mapping each node
class_type to its owning pack via ComfyUI-Manager mappings and the server’s
installed node definitions, and report which packs are installed vs missing.
Read-only — it installs nothing.
object | string
required
A ComfyUI workflow in API format (JSON string or object).
action: "install_deps"
The answer to “someone sent me this workflow and half the nodes are red”.
Resolves the missing packs and installs them through ComfyUI-Manager on the
connected ComfyUI, then reports what was installed, what was already present, and
what it could not resolve. A ComfyUI restart is normally needed before the new
nodes load.
object | string
required
A ComfyUI workflow in API format (JSON string or object).
Skills
action: "skill_list"
List the bundled ComfyUI model-family + workflow skills shipped with comfyui-mcp
(name + description for each). Call this before hand-building a model-family
workflow — if a matching skill exists, read its full guidance with
action: "skill_read" and prefer a ready installer pack (action: "list") over a
generic graph.
This action takes no other parameters.
action: "skill_read"
Return the full body of a bundled skill’s SKILL.md by name (discover names with
action: "skill_list") — model slots, node graph, recommended settings, and gotchas.
string
required
The skill name (a bundled skill directory, e.g.
krea2-txt2img). Validated against
path traversal; must match an existing skill.action: "generate_skill"
Generate a Claude skill (SKILL.md) documenting a ComfyUI custom node pack: its
nodes, inputs/outputs, and example workflows. Read-through cached under
~/.comfyui-mcp/skill-cache; needs internet access on a cache miss.
string
required
A ComfyUI Registry node ID (e.g.
comfyui-impact-pack) or a GitHub repository URL.string
Directory to write the generated
SKILL.md into. Created recursively if missing;
an existing SKILL.md is overwritten. Omit and the markdown is only returned
(and cached) rather than installed anywhere you chose.boolean
Bypass the read-through cache and rebuild the SKILL.md, overwriting the cached entry.
panel_load_workflow
A panel tool (orchestrator-hosted), available to both the Claude and ChatGPT backends.
/revert).
string
Bundled pack name (from
list_packs, e.g. krea2-txt2img-manual). Its UI workflow.json is
read server-side and loaded onto the canvas — so the (large) graph never shuttles
through the conversation. These are local-GPU / free.object | string
A UI/litegraph workflow graph (a
nodes array; not API/prompt format) to load
instead of a pack. For an ad-hoc graph that may use API nodes, check the runtime first
(list_packs with action: "check_runtime") and ask before spending paid credits.See also
- Backends / providers — Claude vs ChatGPT, the picker, capability parity
- API / partner nodes —
list_api_nodesand the paid-credit surface - Sidebar Panel — the full panel UX