RecraftAI Client
The one RecraftAI node you can't skip — the Client is the key handshake
- client
RecraftAI Client doesn't generate anything. It's the plumbing - and without it, none of the other seven nodes in this pack will run. You wire it up once, paste in your API token, and it hands you a client object that every other RecraftAI node expects on its first input. Think of it as the pack's power supply: boring, but nothing else turns on without it.
Here's the part that surprises people coming from the rest of ComfyUI: this pack runs nothing locally. No weights, no model files, no VRAM. Every render happens on Recraft's servers, and the Client is the thing that carries your credentials there. When you enter a token, the node builds a small object pointing at https://external.api.recraft.ai/v1 and attaches your key as a bearer token on every request - plus an X-Client-Type: ComfyUI-RecraftAI header so Recraft knows the traffic is coming from its own node pack.
The model behind all this is worth knowing before you spend a cent. Recraft V3 (codename "red_panda") topped the Hugging Face text-to-image leaderboard for five straight months, quietly beating Midjourney and FLUX 1.1 Pro along the way. It's design-focused rather than photoreal-first, and it's the rare closed service with genuinely strong text-in-image rendering. But it is closed - there are no weights to download, so the API is the only way in, and this client node is how you reach it from ComfyUI.
The inputs and output that matter
There's exactly one input: api_token, a plain string with an empty default. Leave it blank and the node falls back to the RECRAFT_API_TOKEN environment variable, which the pack seeds from a config.ini file in its own folder at startup. That's the README's suggested trick for keeping your key out of every workflow you share - put it in config.ini, leave the node field empty, and the token never lands in a JSON file that leaks when you post screenshots.
If both are empty, you get a hard API token is required error the moment you queue anything.
The single output is client, a custom RECRAFTCLIENT type. You can't preview or save it; it exists purely to feed the client input on every other node in the pack. That's the whole wiring pattern: Client → any other RecraftAI node.
Installing it
The easy way is ComfyUI Manager - search "RecraftAI" and install ComfyUI-RecraftAI, then restart. The manual way is the standard dance:
cd ComfyUI/custom_nodes
git clone https://github.com/recraft-ai/ComfyUI-RecraftAI
cd ComfyUI-RecraftAI && pip install -r requirements.txt
On the portable Windows build the pip line is .\python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-RecraftAI\requirements.txt. The dependencies are light - requests, torch, Pillow, numpy - and there are no model files to download. This thing uses your GPU for absolutely nothing.
The gotchas
- You need a key from recraft.ai/profile/api, and Recraft only lets you generate one if your API units balance is above zero. No balance, no key, no "Generate" button. This is a paid service - every generation and edit you run through this pack bills you.
- The node can't validate your token on its own. It only fails when you actually run a downstream node, which makes setup debugging slightly more annoying than it should be.
- Keys are the same in
config.iniand the node - the node's field just wins if both are set. Pick one place to put it and stay consistent.
One honest caveat before you build a whole workflow around this: this pack is barely on the community's radar, and the reason is simple - it's a commercial API wrapper in a tool that's famous for being free and local. It's great when you specifically want Recraft's model or its output quality, and a poor choice when a local model would do. Start with the free local options, and reach for this when you've hit their ceiling.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| api_token | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| client | RECRAFTCLIENT | — |