JSON Parse (16)
Same JSON parsing, twice the ports
- out1
- out2
- out3
- out4
- out5
- out6
- out7
- out8
- out9
- out10
- out11
- out12
- out13
- out14
- out15
- out16
- obj
JSON Parse (16) is exactly what it sounds like: the pack's JSON Parse node, but with sixteen path fields and sixteen out ports instead of eight. Same dot/bracket path syntax, same code-fence stripping, same default fallback, same obj output carrying the whole parsed object. If you've read the eight-port version, you've read this node; the only real difference is the headroom.
When you actually need sixteen
A typical LLM JSON has a handful of fields. Eight ports usually covers it - which is why the eight-port node is the pack's default. You reach for the 16-port variant when your schema genuinely sprawls: a rich character card with appearance, personality, speech style, relationships, plus image params; a big settings dump from a config-generating LLM; a multi-stage prompt where you want every segment pre-split. It's also handy when you want to route a JSON through and keep spare ports for fields you'll add later without rewiring.
The inputs and outputs that matter
json_text- the JSON string (fence-stripping on by default viastrip_code_fence).default- what any missing path resolves to.path1…path16- the extraction paths. Empty paths just leave their output at the default.- Outputs
out1…out16(all STRING) plusobj(SIMPLECHAT_JSON).
Paths work like a.b.c, items[0].name, or items[0]["name"]. Values stringify like the 8-port node: numbers become text, nested objects become JSON text. Nothing about the semantics changes - it's a strict json.loads under the hood, so feed it clean JSON or it errors.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/Moeblack/ComfyUI-SimpleChat
Restart, or use Manager and search "ComfyUI-SimpleChat". Only dependency: aiohttp.
Gotchas
Sixteen ports of pure string output is a lot of manual wiring, and every value still lands as STRING - no INT/FLOAT conversion, so numbers heading into numeric inputs still need casting. If most of your paths are empty you're carrying dead weight; the 8-port version is tidier for small schemas, and for the fixed Anima prompt schema Prompt JSON Unpack beats both because it emits typed outputs and a vars dict in one go. Only pay the 16-port sprawl when the schema actually demands it.
Inputs (19)
| Name | Type | Default | Description |
|---|---|---|---|
| json_text | STRING | — | |
| strip_code_fence | BOOLEAN | true | — |
| default | STRING | — | |
| path1 | STRING | — | |
| path2 | STRING | — | |
| path3 | STRING | — | |
| path4 | STRING | — | |
| path5 | STRING | — | |
| path6 | STRING | — | |
| path7 | STRING | — | |
| path8 | STRING | — | |
| path9 | STRING | — | |
| path10 | STRING | — | |
| path11 | STRING | — | |
| path12 | STRING | — | |
| path13 | STRING | — | |
| path14 | STRING | — | |
| path15 | STRING | — | |
| path16 | STRING | — |
Outputs (17)
| Name | Type | Description |
|---|---|---|
| out1 | STRING | — |
| out2 | STRING | — |
| out3 | STRING | — |
| out4 | STRING | — |
| out5 | STRING | — |
| out6 | STRING | — |
| out7 | STRING | — |
| out8 | STRING | — |
| out9 | STRING | — |
| out10 | STRING | — |
| out11 | STRING | — |
| out12 | STRING | — |
| out13 | STRING | — |
| out14 | STRING | — |
| out15 | STRING | — |
| out16 | STRING | — |
| obj | SIMPLECHAT_JSON | — |