generate_and_print
Generates a 3D model from a text prompt, validates and slices it, then uploads a print preview to the target printer without starting. Call start_print only after reviewing the preview.
Instructions
Full pipeline: generate a model, validate, slice, and upload (preview).
**EXPERIMENTAL:** This generates a 3D model, validates it, slices it,
and uploads it to the printer — but does NOT start printing. 3D
printers are delicate hardware and AI-generated models are not
guaranteed to be safe or printable. You MUST call ``start_print``
separately after reviewing the preview results.
When possible, prefer downloading proven models from marketplaces
(Thingiverse, MyMiniFactory) instead of generating new ones.
Args:
brief_id: The saved goal's id from ``design_session``, so this make
is recorded against the goal and checked against it. Empty when
there is no goal.
prompt: Text description of the 3D model to generate.
provider: Generation provider: ``"meshy"``, ``"gemini"``,
``"tripo3d"``, ``"stability"`` (cloud, each needs its own
key) or ``"openscad"`` (local, keyless). Default
``"meshy"``.
style: Optional style hint for cloud providers.
printer_name: Target printer. Omit for the default printer.
profile: Slicer profile path.
printer_id: Optional printer model ID for bundled profile
auto-selection (e.g. ``"prusa_mini"``).
timeout: Max seconds to wait for generation (default 600).
material: Filament material for the slice (``"PLA"``,
``"PETG"``, …). It sets the temperatures, melt rate and
cooling, and its density weighs the print. Omitted, the
spool the printer reports loaded answers, then PLA —
``slice.filament`` says which.
placement: Where the part goes when the plate still holds
the last print: ``[x, y]`` in mm, a named region
(``"front-left"``, ``"centre"``, …), or ``"keep"``.
Omitted, an occupied plate refuses before slicing and
lists the spots that would work. The clearance verdict
is free; placing and starting a second print on an
occupied plate is a kiln-pro feature.INLINE 3D STAGE: on success this tool opens Kiln's interactive 3D stage — an inline viewer panel the user can orbit, zoom, and turn over — in hosts that render MCP Apps panels (Kiln's hosted connection attaches a browser stage link for hosts that don't). Oversized meshes are decimated automatically for the stage; the PNG preview is the floor, not the whole experience.
MAKE DOORS: design_session, Kiln's front door for making an object, is not installed here (signed in to Kiln it runs on Kiln's servers). On this install compile_scad IS the make → preview → iterate loop: make it, show the preview, iterate.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"prompt": "<prompt>"
},
"name": "generate_and_print"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | Optional style hint for cloud providers. | |
| prompt | Yes | Text description of the 3D model to generate. | |
| profile | No | Slicer profile path. | |
| timeout | No | Max seconds to wait for generation (default 600). Default: 600. | |
| brief_id | No | The saved goal's id from ``design_session``, so this make is recorded against the goal and checked against it. Empty when there is no goal. Default: "". | |
| material | No | Filament material for the slice (``"PLA"``, ``"PETG"``, …). It sets the temperatures, melt rate and cooling, and its density weighs the print. Omitted, the spool the printer reports loaded answers, then PLA — ``slice.filament`` says which. | |
| provider | No | Generation provider: ``"meshy"``, ``"gemini"``, ``"tripo3d"``, ``"stability"`` (cloud, each needs its own key) or ``"openscad"`` (local, keyless). Default ``"meshy"``. Default: "meshy". | |
| placement | No | Where the part goes when the plate still holds the last print: ``[x, y]`` in mm, a named region (``"front-left"``, ``"centre"``, …), or ``"keep"``. Omitted, an occupied plate refuses before slicing and lists the spots that would work. The clearance verdict is free; placing and starting a second print on an occupied plate is a kiln-pro feature. | |
| printer_id | No | Optional printer model ID for bundled profile auto-selection (e.g. ``"prusa_mini"``). | |
| printer_name | No | Target printer. Omit for the default printer. |