Mayo Dropdown
A dropdown you can actually edit without hand-editing workflow JSON
- value
- label
ComfyUI's stock combo widgets are frozen the moment you save the workflow. Want a new option in a list? You're opening the graph JSON and editing it by hand, or rebuilding the node. Mayo Dropdown is the small fix for that: a list selector whose options live in a node property you can change from the UI, any time, no code.
What it does
One dropdown, two outputs. The label output is the exact text of whatever you picked. The value output is an INT - the 1-based position of that choice in the list. So you get both the human-readable name and a number you can feed into anything that's index-driven, like picking one LORA from a stack by position or driving a switch node.
How it works
The Python side registers an option enum (with three placeholder defaults: "Option 1", "Option 2", "Change in Properties Panel") plus an options_list string. Then a bit of JavaScript takes over. It hides the options_list widget - the source literally calls it "THE AGGRESSIVE HIDE", shrinking it to zero height and giving it an empty draw function - and redirects the list into the node's Properties Panel as dropdown_values. Change that property and the dropdown repopulates live, no restart.
At execution it splits options_list on commas, trims whitespace, finds your selection, and returns (position, label). If the saved choice no longer exists in the list, the index falls back to 1 instead of erroring - no red node, just a quietly sensible default.
The inputs and outputs that matter
option- the dropdown you pick from. This is the one widget you actually touch.value(INT) - 1-based position in the list, for index-driven wiring.label(STRING) - the chosen text, for prompts, filenames, or a text encoder.
To change the options: right-click the node → Properties → edit dropdown_values as comma-separated text. Whitespace around commas is trimmed for you.
Installing it
Search "Mayo Nodes" in ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Pasu2k/comfyui-mayo-nodes
Then restart ComfyUI. This pack ships no requirements.txt, no model downloads, nothing extra to pip install - pure Python standard library plus a little JS. In an ecosystem where new-user pain is mostly dependency hell, a node that just installs is quietly a relief.
Where people get tripped up
The most common confusion is finding the options at all: the list isn't in the node's visible widgets, it's in the Properties Panel, because the text widget is deliberately hidden. That's by design - a cleaner node - but it reads as "broken" until you know to right-click.
Keep the list comma-separated. A comma inside an option name splits it in two. Empty entries are filtered out, so a stray trailing comma won't break anything.
It's a tiny, personal utility node from a small pack, and it does exactly one job - but if you've ever hand-edited a .json workflow just to add a dropdown option, you'll know why that job is worth having a node for.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| option | COMBO | 3 options: Option 1, Option 2, Change in Properties Panel | |
| options_list | STRING | Option 1, Option 2, Change in Properties Panel | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| value | INT | — |
| label | STRING | — |