How Text to CAD works
Text to CAD is our prompt-to-STL workflow for precise, editable 3D models. It uses generated CadQuery Python as the bridge between natural language and real CAD geometry.
Short answer
MakeIt3D Text to CAD turns a written prompt into CadQuery code, runs that code in a CAD worker, previews the generated model, and exports an STL. The core advantage is editability: the model is not only a mesh, it starts as readable parametric source code.
Research basis
CadQuery is a Python library for building parametric CAD models. Its documentation emphasizes plain-text, editable source code, customizable parameters, and CAD exports such as STEP, AMF, 3MF, and STL. It is built on OCP, the Python binding layer for the OpenCascade modeling kernel.
That makes CadQuery a practical target for AI generation: the output is code, not a black-box mesh. The generated script can expose dimensions as variables, express design intent, and be rerun after edits. CadQuery's own design principles also align with this: scripts should read close to how a person describes a part and should capture design intent.
OpenAI's agent tooling points to the next layer of improvement. Agents can use tools, execute code, call functions, retrieve files or docs, and hand work to specialized agents. For CAD, that means the generator does not have to be a single pass. It can become a loop: plan, write, execute, inspect, repair, validate, and explain.
Current pipeline
The current version is intentionally simple: generate code, run it, preview the STL, then let the user iterate.
Prompt to design intent
The system first extracts dimensions, constraints, part families, output format, and likely manufacturing intent from the user's prompt.
Design intent to CadQuery
The model writes Python that builds a parametric shape with CadQuery workplanes, sketches, selectors, booleans, fillets, shells, and exports.
Worker execution
A CAD worker runs the script in a constrained environment, using CadQuery and the underlying OCP/OpenCascade modeling kernel to create geometry.
Preview and export
The app receives the generated STL, previews it in the browser, and lets the user download the model for slicing, prototyping, or iteration.
Why this matters
Text prompts are good for intent, but CAD requires exact geometry. CadQuery gives the system a precise code target.
Source-code CAD is debuggable. If a fillet fails, a hole lands on the wrong face, or an export breaks, the script can be repaired.
Parameters can remain visible. A user can change width, wall thickness, clearance, or hole count without regenerating from scratch.
The same workflow can later export richer CAD formats, not only STL, because the underlying model starts as CAD operations.
Agent skills roadmap
In this context, agent skills mean narrow, reusable abilities around the CAD workflow. They would let Text to CAD behave less like one prompt and more like an engineering assistant.
Part-family skill
Classify prompts into brackets, boxes, gears, adapters, furniture, architectural blocks, or decorative objects, then apply specialized templates and constraints.
Dimensional reasoning skill
Normalize units, infer missing dimensions, flag impossible dimensions, and keep key parameters editable at the top of the generated script.
CadQuery repair skill
Read stack traces and geometry failures, patch the script, rerun it, and stop only after the STL export succeeds or the request is clearly impossible.
Manufacturability skill
Review wall thickness, overhangs, hole clearances, tolerances, watertightness, and slicer-friendly orientation before presenting the final model.
Documentation retrieval skill
Pull the relevant CadQuery examples and API references for the requested operation, reducing hallucinated method names and improving code quality.
Evaluation skill
Render thumbnails, inspect bounding boxes and mesh statistics, compare the output against the prompt, and produce a short quality report.
Theoretical upgrade
Multi-agent CAD loop
A planner agent could translate the prompt into a part specification. A code agent could write CadQuery. A validator agent could run the script, inspect mesh metadata, and compare the result against the prompt. A repair agent could patch failures until the model exports.
Safer execution boundary
The CAD worker should stay sandboxed. Agent skills should not mean arbitrary execution. They should mean better allowed operations, clearer validation, smaller tool scopes, and repeatable checks before returning a downloadable file.
Sources
LLM to CAD: Using Large Language Models to Generate 3D Models
MakeIt3D is an LLM-to-CAD platform. It uses a large language model (Claude by Anthropic) to convert a text description into CadQuery Python code, which is then executed to build real parametric geometry. The output is a downloadable STL file — not a scanned mesh, but a precise, editable CAD model starting from source code.
What is LLM to CAD?
LLM to CAD (large language model to CAD) is the practice of using AI language models to write CAD source code. Instead of manually designing parts in software like Fusion 360 or SolidWorks, users describe what they want in plain English. The LLM translates that into runnable parametric code that a CAD kernel executes.
LLM to 3D model vs. image to 3D model
LLM to 3D model and image to 3D model are complementary but different. Image-to-3D (photogrammetry-style AI) reconstructs a mesh from a photo. LLM-to-CAD generates geometry from text through code — the result is dimensionally accurate and parametric, making it suitable for engineering, prototyping, and 3D printing.
LLM to CAD vs. traditional CAD software
Traditional CAD software (Fusion 360, SolidWorks, FreeCAD, CATIA, OpenSCAD) requires users to learn a GUI, apply features manually, and manage a parametric history tree. LLM to CAD replaces the manual step with a language model that writes the script. The result is the same geometry — parametric, editable, dimensionally accurate — but the starting point is a text prompt instead of hours of software-specific learning.
The tradeoff: LLM-generated CAD is fast and accessible but may require prompt iteration for complex assemblies. Traditional CAD offers more control for intricate multi-part designs. MakeIt3D bridges the two: the LLM writes the first draft, and the user can edit the source code for fine-tuning.
LLM to CAD vs. OpenSCAD AI generation
OpenSCAD is a script-based CAD tool that LLMs can also target. CadQuery has several advantages for AI generation: it uses standard Python (easier for LLMs to write correctly), supports more complex modeling operations like shells, workplane selectors, and boolean trees, and its output is compatible with professional STEP and STL workflows. MakeIt3D chose CadQuery as its code target for these reasons.
Which LLM is best for CAD generation?
MakeIt3D Text to CAD uses Claude (Anthropic) as the LLM for CadQuery code generation. Claude excels at writing structured Python, following dimensional constraints, and producing code that executes correctly on the first attempt. The model is also well-suited to interpreting natural language descriptions of mechanical intent — understanding what "snap-fit lid" or "M3 clearance hole" means in physical terms.
How MakeIt3D does LLM-to-CAD
- User writes a natural language prompt describing a 3D part or object.
- Claude LLM generates CadQuery Python code from the prompt.
- A secure CAD worker executes the script using the OpenCascade kernel via CadQuery.
- The generated STL is previewed in the browser and available for download.
- Users can iterate by refining the prompt or editing the generated code directly.
- Auto mode runs multi-step generation with automatic error repair between attempts.
LLM CAD generation use cases
- 3D-printable brackets, mounts, and enclosures from text descriptions
- Rapid prototyping without CAD software experience or CAD seat licenses
- Parametric parts that can be adjusted by changing a single number in the prompt
- Generating STL files for Bambu Lab, Prusa, and other FDM printers from a sentence
- Converting engineering requirements into geometry without a CAD seat
- Creating custom jigs, fixtures, and tooling inserts for manufacturing
- Generating architectural elements, furniture joints, and structural connectors
- Producing electrical enclosures, PCB standoff cases, and DIN rail mounts
Can ChatGPT generate STL files?
ChatGPT and other general-purpose LLMs can write CadQuery or OpenSCAD code, but they do not execute it or produce STL files directly. MakeIt3D Text to CAD closes that gap: it uses a Claude LLM to write the CAD code AND runs it in a secure worker to produce the STL output. You get a downloadable, printable file — not just a code snippet to run yourself.
Prompt to STL workflow overview
The prompt-to-STL workflow enabled by MakeIt3D has four steps: (1) describe the part in plain English, (2) the LLM writes CadQuery Python, (3) the CAD worker executes it and exports STL, (4) you download and print. The entire workflow takes under two minutes for most standard geometric parts.