Skip to main content
Glama

Slice Estimate

slice_estimate
Read-only

Estimate FDM print cost analytically from part volume, bounding box, material, and print settings. Returns mass, filament length, layer count, and print time without running a slicer.

Instructions

First-order FDM slice estimate (analytic, NO slicer needed; see slice_gcode_submit for the real PrusaSlicer CLI). mass_g = volume·density (Materials DB); deposited = volume·(wall_fraction + infill·(1−wall_fraction)) so at 100% infill filament_g == mass_g; layer_count = ceil(bbox height/layer_height); print_time from nozzle volumetric flow.

material may be any Materials-DB card name (material_list / material_get), or anything at all if you supply density_g_cc yourself — it overrides the DB lookup. A generic word like 'polymer' is a CATEGORY, not a card, and 'nylon' is a near-miss for one, so neither carries a density; the error names both exits. filament_dia_mm (1.75 default, 2.85 for the older standard) sets the spool stock the filament length is computed against.

Returns {mass_g, filament_g, deposited_volume_mm3, layer_count, print_time_min, infill_fraction}. Errors on a material with no density and no override, a negative volume, a bbox shorter than [x,y,z], or a non-positive layer height.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bbox_mmYes
materialNoPLA
nozzle_mmNo
volume_mm3Yes
density_g_ccNo
wall_fractionNo
filament_dia_mmNo
infill_fractionNo
layer_height_mmNo
print_speed_mm_sNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint annotation, the description discloses the analytic nature, the exact calculation formulas, the material database lookup and override behavior, the return fields, and several error conditions. None of this contradicts the annotations; it substantially enriches them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and long, but every section earns its place: core purpose, formulas, material caveats, return values, and error conditions are organized in a logical flow. It is front-loaded with the most important distinction from the sibling tool, though formatting as bullets could improve scannability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter analytic tool with no output schema and no parameter descriptions, this is remarkably complete. It explains how results are computed, what the returned keys are, how material resolution works, and exactly which inputs cause errors. The only minor gap is the indirect treatment of nozzle and speed parameters, but the formula context makes them understandable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description carries the parameter-documentation burden and does so well for most parameters: material, density_g_cc, filament_dia_mm, volume_mm3, bbox_mm, wall_fraction, infill_fraction, layer_height_mm. However, nozzle_mm and print_speed_mm_s are only implied through 'print_time from nozzle volumetric flow', leaving them slightly under-specified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states exactly what the tool does: a first-order FDM slice estimate that is analytic and requires no slicer. It immediately distinguishes itself from slice_gcode_submit, which is the real PrusaSlicer CLI, so the agent can tell them apart without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly points to slice_gcode_submit as the alternative for a real slicer, which gives clear when-to-use versus when-not-to-use guidance. It also explains material lookup behavior and when a density override is needed, including error exits for category and near-miss material names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools