Tripo Text-to-3D (API)
Your GPU can't do text-to-3D — this node rents a cloud that can
- glb
TripoTTM ("Tripo Text-to-3D (API)") is not a ComfyUI node that generates 3D on your machine. It's a thin wrapper around Tripo's hosted text-to-model API, and being honest about that up front saves you ten minutes of staring at an empty console wondering where your VRAM went. If you want a GLB file from a text prompt and you don't want to fight with a local generator, this is the least-friction path in the pack - as long as you have a Tripo API key and some patience.
The 30-second version
Type a prompt, pick a model version, hit go. The node POSTs a text_to_model task to api.tripo3d.ai/v2/openapi/task, polls that task every 5 seconds for up to 10 minutes, and when Tripo reports success it downloads the finished .glb into ComfyUI's output folder and hands you back the file path. That's the whole job. The name says "generation," but mechanically this is a downloader with a really good front-end.
The output, confusingly named glb, is a STRING - a file path, not a mesh you can preview or rewire inside the graph. There's no 3D viewer in ComfyUI, so the result leaves your workflow the moment it lands. That's fine; you open it in Blender, Unreal, or your slicer of choice. Just don't expect to feed it back into anything.
The inputs that matter
You'll touch maybe four of these:
- prompt - describe the object. The default "A cute 3D robot toy" is a genuinely good starting prompt; these models love simple, single-object phrasing.
- model_version - v3.0-20250812 is the newest and best; v2.5-20250123 is the default and a safe middle ground. The community noticed a big quality jump at v2.0 back in 2024, and each release since has been incremental. Turbo-v1.0 trades quality for speed.
- api_key - your Tripo key, or the env var name
TRIPO_API_KEYif you set up a.envfile. - save_name - used to name the output file.
The rest are worth a glance but rarely need changing. face_limit is the polygon count (500–100,000, default 20,000); the tooltip's right that 20k is "good" and 50k+ is "high detail," but you'll often remesh in Blender anyway. texture_size (512/1024/2048) and pbr (realistic lighting data - shine, roughness, metalness) matter most if you're going straight to a game engine. seed maps to Tripo's model_seed so you can reproduce a result.
Installing it
Install the whole pack - there's no way to get just this node:
cd ComfyUI/custom_nodes
git clone https://github.com/Aryan185/ComfyUI-ExternalAPI-Helpers.git
cd ComfyUI-ExternalAPI-Helpers
pip install -r requirements.txt
Restart ComfyUI and it appears under 3D/generation. ComfyUI Manager users can just search "ComfyUI-ExternalAPI-Helpers." The requirements list is python-dotenv, replicate, pillow, numpy, torch, google-genai, opencv-python, soundfile, openai, and av - heavy-ish, but it's a shared pack, so you only pay the install cost once. Grab a key at tripo3d.ai; there's a free tier, and paid credits are billed per task.
Gotchas and reality checks
The honest list:
- It's slow. Free-tier jobs can crawl, and the 10-minute poll cap is real - a task that doesn't finish in time raises an error. The pack has a sibling
TripoImageToModelnode that starts from an image instead of text, which is often the better-looking route. - Mesh topology is serviceable, not pretty. Community reviews describe Tripo output as dense but "voxel-esque" - plan a remesh/decimation pass if it's going into a production pipeline.
- It's not local, and it knows it. The top reddit reaction to "Tripo runs on their servers, not yours" was essentially "then it's not for me." If your whole reason for being in ComfyUI is staying off clouds, this node is the wrong pick - there's genuinely good local 3D work happening (Hunyuan 3D, Trellis, Sparc3D), it just doesn't live in this pack.
- One key gotcha: don't paste the key into both the node field and
.envwith different values - the code checks the field first, then falls back toTRIPO_API_KEY. Keep one source of truth.
Also worth knowing: Tripo's own team ships a dedicated ComfyUI-Tripo extension with the same API. If Tripo is your whole reason for installing anything, that dedicated node is a cleaner install. This one earns its place when you're already using the rest of the ExternalAPI pack - one key store, one .env, one dependency install for every closed-source service you touch.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | A cute 3D robot toy | Describe the object you want to create in 3D. |
| model_version | COMBO | v2.5-20250123 | 5 options: v3.0-20250812, v2.5-20250123, v2.0-20240919, v1.4-20240625, Turbo-v1.0-20250506 |
| texture_quality | COMBO | standard | 2 options: standard, detailed |
| api_key | STRING | Tripo API key or .env variable name (TRIPO_API_KEY) | |
| save_name | STRING | tripo_model | — |
| seedopt | INT | 690–2147483646 | — |
| face_limitopt | INT | 20000500–100000 | Polygon count. 20,000 is good; 50,000+ is high detail. |
| texture_sizeopt | COMBO | 1024 | 3 options: 512, 1024, 2048 |
| pbropt | BOOLEAN | true | Adds realistic lighting data (shine, roughness, metalness). |
| negative_promptopt | STRING | Things for the AI to avoid. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| glb | STRING | — |