analyze_printability
Analyze STL or OBJ meshes for FDM print readiness: detect overhangs, thin walls, bridging issues and support needs, then get a clear ready or won't-print verdict with actionable fixes.
Instructions
Analyze a 3D model for FDM printing readiness.
Performs deep analysis of an STL or OBJ mesh including overhang
detection, thin wall analysis, bridging assessment, bed adhesion
surface estimation, and support volume estimation. Returns one
``verdict`` (``ready``, ``prints_with_supports``, ``wont_print``
or ``check``) with its sentence as ``message``, and the full
``report`` with actionable recommendations. The report keeps a
0-100 score and a letter grade for comparing versions of a part;
tell the person the verdict, not the score.
Pass ``material`` (and ``printer_id`` when a printer is
registered) so the warping, thermal-stress, and adhesion checks
run against the actual filament instead of generic PLA defaults.
On the free tier those checks use conservative safe-floor
thresholds; with Kiln Pro they are tuned to the specific
material and printer.
When the mesh turns out to have holes in it, the result also
carries a ``fastener_advice`` block saying they were measured
but not checked against the hardware meant to go in. Kiln
raises that once per session across every tool that can raise
it, so a later analysis may omit the block even though the
part has holes. Read its ``agent_instruction`` before
repeating any of it to the user.
Args:
file_path: Path to an STL or OBJ mesh file.
nozzle_diameter: Printer nozzle diameter in mm. Leave unset
and name the printer: Kiln then checks for the nozzle on
record for it, else the printer's own setting, else the
model's stock size, and ``report.nozzle`` says which.
With no printer named, the only printer Kiln knows of
stands in; with none, the check assumes 0.4 and says so.
layer_height: Print layer height in mm (default 0.2).
max_overhang_angle: Maximum overhang angle in degrees before
supports are needed. Leave unset for the material's own
limit (45 when none is known) — the value every other
tool that reports this score uses, so the numbers agree.
build_volume_x: Optional build volume X dimension in mm.
build_volume_y: Optional build volume Y dimension in mm.
build_volume_z: Optional build volume Z dimension in mm.
material: Material ID for warping / thermal-stress / adhesion
analysis (default ``"pla"``).
printer_id: Optional registered printer whose real geometry
and calibration should inform the analysis.
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": {
"file_path": "<file_path>"
},
"name": "analyze_printability"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| material | No | Material ID for warping / thermal-stress / adhesion analysis (default ``"pla"``). Default: "pla". | |
| file_path | Yes | Path to an STL or OBJ mesh file. | |
| printer_id | No | Optional registered printer whose real geometry and calibration should inform the analysis. Default: "". | |
| layer_height | No | Print layer height in mm (default 0.2). Default: 0.2. | |
| build_volume_x | No | Optional build volume X dimension in mm. | |
| build_volume_y | No | Optional build volume Y dimension in mm. | |
| build_volume_z | No | Optional build volume Z dimension in mm. | |
| nozzle_diameter | No | Printer nozzle diameter in mm. Leave unset and name the printer: Kiln then checks for the nozzle on record for it, else the printer's own setting, else the model's stock size, and ``report.nozzle`` says which. With no printer named, the only printer Kiln knows of stands in; with none, the check assumes 0.4 and says so. | |
| max_overhang_angle | No | Maximum overhang angle in degrees before supports are needed. Leave unset for the material's own limit (45 when none is known) — the value every other tool that reports this score uses, so the numbers agree. |