Publish Manifest At Index
Pull one row out of your asset manifest
- row_json
- filename
- title
- alt_text
- tags_csv
The Publish lane's other index picker: MKRPublishManifestAtIndex takes a manifest (the kind MKRPublishAssetManifest produces) and an index, and returns a single row's filename, title, alt text, and tags as individual string outputs. Where MKRPublishCopyAtIndex picks a caption from a deck, this picks an asset from a manifest - same idea, different source.
What it's for
Manifests describe a whole batch, but workflows usually act on items one at a time. This node is how you say "give me asset number 3's filename and alt text" and get actual strings to wire into a filename widget, a caption box, or a metadata writer. It's the bridge between the batch-level manifest and per-asset actions.
How it works
It parses manifest_json, finds the rows array, and selects one row. The index_mode dropdown is the interesting control: List Index picks by position in the array (row 0 is the first), while Display Index matches against the row's display_index field - which matters because manifests can use custom numbering via start_index, so the displayed asset number and the list position can differ. Out-of-range indices return an empty row with a warning instead of failing.
Inputs and outputs
Inputs: manifest_json, index, index_mode (List Index / Display Index). Outputs: row_json (the full row record), filename, title, alt_text, tags_csv.
Installing it
Pack install as always:
cd ComfyUI/custom_nodes
git clone https://github.com/criskb/MKRShift_Nodes
restart ComfyUI, or Manager → MKRShift_Nodes. Pure JSON parsing - no dependencies.
Common issues
The index_mode distinction is the one that bites. If your manifest uses start_index: 1, then the first row has display_index: 1 but list position 0 - ask for List Index 1 and you get the second asset. When your "which asset is this?" sense disagrees with what comes out, switch modes. And like its copy-deck sibling, feed it a manifest-shaped JSON or you'll get the empty-warning row.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| manifest_json | STRING | — | |
| index | INT | 00–99999 | — |
| index_mode | COMBO | List Index | 2 options: List Index, Display Index |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| row_json | STRING | — |
| filename | STRING | — |
| title | STRING | — |
| alt_text | STRING | — |
| tags_csv | STRING | — |