Skip to main content
Glama
danielefinocchiaro

unofficial-bambu-mcp

slice_project

Slices a Bambu Studio 3D project (all plates or one) and returns per-plate print time, filament usage, cost, layer count, and warnings; saves the sliced project beside the original file.

Instructions

Slice with Bambu Studio (plate 0 = all). Returns per plate: minutes, grams (total and per filament slot), cost (from the presets' price per kg), filament changes, layers and warnings. The sliced project is saved next to the project file.

Input Schema

NameRequiredDescriptionDefault
plateNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden, and it does disclose meaningful behavior: the per-plate return payload (minutes, grams, cost, filament changes, layers, warnings) and a real side effect ('saved next to the project file'). However, it omits prerequisites (does Bambu Studio need to be running?), expected runtime, whether the project state is mutated, and failure behavior — significant gaps for a compute-heavy operation.

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?

Three short sentences, front-loaded with the action and the parameter sentinel before the return details. The middle sentence is a dense but scannable enumeration; every clause maps to real information an agent needs.

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

Completeness3/5

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

There is no output schema and no annotations, so the description reasonably takes on describing return values and the file-save side effect. But for an expensive slicing operation with a prerequisite external application, the absence of any runtime, prerequisite, or error-handling context leaves a meaningful gap.

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?

Schema coverage is 0% — the single 'plate' parameter has only a type and default, no description. The description compensates directly by defining the sentinel value ('plate 0 = all'), which is exactly the semantic an agent needs and would otherwise get wrong. It's the key insight, though it doesn't say whether plate numbers are 1-indexed or how to discover them.

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

Purpose4/5

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

The opening verb+resource ('Slice with Bambu Studio') is specific and unique among siblings like preview_plate, check_print_risks, or send_to_printer. The '(plate 0 = all)' parenthetical further narrows the action. It doesn't explicitly contrast itself against the preview/send siblings, so it falls just short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied: an agent can infer this belongs in the slice-then-send pipeline, but nothing states when to slice versus preview_plate or check_print_risks, nor whether slicing is a prerequisite for send_to_printer. No exclusions or alternative-routing guidance is provided.

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