apps
List, inspect, run, and track ComfyUI micro-apps; import new packaged workflows from the public registry.
Instructions
Micro-apps on this ComfyUI (panel Apps feature): named workflows packaged for one-click runs. Driven by the action parameter:
action:"list" — List every registered app. Each entry is the app's manifest: id, name, description, appMode {inputs, outputs}, deps, hideWorkflow, published. No other parameters. Read-only.
action:"get" — One app's manifest + bundle facts (has_workflow/has_prompt/has_thumbnail) by
app_id. The manifest's appMode.inputs is the app's run form: each input has nodeId, widget, label, kind (text|number|combo|toggle|image|model), optional choices and default. Read-only.action:"run" — Run one app: patches
values(keys '.', e.g. {"6.text": "a cat"}) into the app's stored prompt snapshot and queues it on ComfyUI. Returns the prompt_id — poll action:"run_status". Only pass values for inputs listed in appMode.inputs; omitted inputs keep their conversion-time defaults.action:"run_status" — Check one run by
app_id+prompt_id: status (pending|running|done|unknown) plus the run's outputs (image/video file refs under each output node, text outputs). Read-only.action:"import" — Install an app from the public registry: fetches the registry bundle (manifest + prompt snapshot [+ workflow unless hidden]) and creates it locally. The registry id becomes the local id, so re-importing reports an id conflict (already installed). Deps (models/custom nodes) are NOT installed — report the manifest's deps to the user so they can install them before running.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | action:"import" — the app's registry slug (recorded in local metadata). | |
| action | Yes | Which apps operation to perform. "list" takes no other parameters; "get"/"run" require `app_id`; "run_status" requires `app_id` + `prompt_id`; "import" requires `registry_url` + `app_id`. | |
| app_id | No | The app's uuid. REQUIRED for actions "get", "run", "run_status" (from action:"list") and "import" (the REGISTRY app's uuid, from the explore list). | |
| values | No | action:"run" — input overrides keyed '<nodeId>.<widget>' (e.g. {"6.text": "a cat", "3.seed": 42}). Unknown keys fail loudly (the manifest drifted from the snapshot). | |
| version | No | action:"import" — the registry version (recorded in local metadata). | |
| prompt_id | No | action:"run_status" — the prompt_id returned by action:"run". Required for that action. | |
| registry_url | No | action:"import" — registry worker base URL (required for that action). Must be the default public registry or an origin the operator allowlisted via COMFYUI_MCP_REGISTRY_URLS (the fetch is server-side — open URLs would be SSRF). |