ComfyUI Node

JSON Reader

Seed, prompts, all of it

By Conor-Collins·Created 2 years ago·Updated about a year ago· 33
JSON Reader
    • Seed
    • Positive Prompt
    • Negative Prompt
    folder_pathD:/Default_Folder/
    namemetadata

    If you've ever dug through a folder of ComfyUI outputs trying to remember which seed made the good one, this node is for you. JSON Reader (class JSONReaderNode) is the read side of the pack's JSON pair: point it at a folder, give it a file name, and it hands back the seed and both prompts that were saved there. It's the natural companion to the pack's JSON node, which writes those files in the first place.

    This is a "reconstruct the past" node. The workflow that made an image is already embedded in the PNG, but that's locked away in metadata you can't easily drag into a KSampler. A JSON receipt is plain text on disk - and with this node, the seed and prompts come back out as typed outputs you can wire straight into a new generation.

    How it works

    Two inputs, three outputs. That's the whole node:

    • folder_path - where the JSON files live (the default is D:/Default_Folder/, which should tell you the author is on Windows - change it)
    • name - the file name to read, defaulting to metadata

    The outputs are exactly what the writer saved:

    • Seed (INT) - wire this into a KSampler's seed input to reproduce the generation
    • Positive Prompt and Negative Prompt (STRING) - wire into your CLIP Text Encode nodes

    So the loop becomes: batch render with JSON nodes logging every pass, then pick any JSON, read it back, and you're re-running that exact generation in seconds.

    Where it fits

    The obvious use is reproducibility - dig up what you actually generated weeks ago and rebuild it. But it's also a batch-processing tool. If you're walking a folder of saved generations and re-encoding them, upscaling them, or feeding them through a second pass, this node gives you the original settings alongside, so nothing about the source is lost in the pipeline.

    One honest note: this is not a generic JSON parser. It reads the schema the pack's JSON node writes, and it extracts those three specific fields. If you want to pull an arbitrary key out of a file, the pack's JSON Value Finder is the more general tool.

    Installing it

    The pack is deprecated and unmaintained; the README points users to the successor repo ComfyUI-CoCoTools_IO, and as of August 2026 the original GitHub URL 404s. Install via ComfyUI Manager (search ComfyUI-CoCoTools) if it resolves, or clone manually into custom_nodes:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Conor-Collins/coco_tools
    

    Then install requirements (from the python_embeded/ folder on the Windows portable build):

    python.exe -m pip install -r ./ComfyUI/custom_nodes/ComfyUI-CoCoTools/requirements.txt
    

    Restart ComfyUI after installing.

    Gotchas

    • The name field has to match the file the writer produced. The default is metadata - if you saved JSONs under a different name or into a subfolder, this node won't find them and you'll get an empty read.
    • folder_path is a raw string input, so paste the full path; don't expect a file browser.
    • Watch the seed type on the way out - it's an INT, and some KSampler seed widgets expect the same. Usually a direct wire just works.
    • It's abandoned software. The JSON files themselves are the safe, permanent thing - the node is just a convenience for reading them.
    CategoryCOCO Tools/JSON Tools

    Inputs (2)

    NameTypeDefaultDescription
    folder_pathSTRINGD:/Default_Folder/
    nameSTRINGmetadata

    Outputs (3)

    NameTypeDescription
    SeedINT
    Positive PromptSTRING
    Negative PromptSTRING