Skip to main content
Glama
Slicewise

Slicewise

by gjlmotea

Create a stabilised print-in-place preset

bambu_optimize_print_in_place
Destructive

Creates an auto-stabilised Bambu Studio process preset for small print-in-place parts, preventing bed detachment and nozzle dragging with tuned first-layer, wall, and overhang settings.

Instructions

Creates an auto-stabilised copy of the given (or currently selected) process preset that can be used directly in Bambu Studio. Use it when small print-in-place parts detach from the bed or get dragged off by the nozzle. It applies exactly: first-layer outer wall 20 mm/s, first-layer infill 30 mm/s, outer wall capped at 60 mm/s, slowdown for overhangs, avoid crossing printed walls, Monotonic line, and ironing and Fuzzy Skin turned off. If the source is an existing user preset, its leaf-level calibrations (dimensions, elephant's foot, etc.) are kept, but the new file still inherits directly from the system preset. By default Auto Brim is explicitly turned off so the brim does not fuse gear clearances; Brim Ears can be requested explicitly, and you will still be reminded to check the first layer. It does not change filament temperature, cooling or flow, because regular PLA and Silk PLA must be calibrated separately. Writes a file to the user profile directory; takes effect after Bambu Studio is restarted.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "bambu_optimize_print_in_place"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNoName of the new user preset. Defaults to the source preset name with an auto-stabilised suffix appended.
overwriteNoWhether to replace a preset with the same name if one already exists. Defaults to false.
processPresetNoThe source process preset; defaults to the one currently selected in Bambu Studio. An existing user preset may be given.
includeBrimEarsNoWhether to also enable 5 mm Brim Ears. Defaults to false, because the moving clearances must be checked in the first-layer preview first.

Output Schema

NameRequiredDescriptionDefault
nameYes
pathYes
changesYes
createdYes
nextStepYes
warningsYes
overridesYesParameters to override; each key is a BambuStudio setting name (e.g. layer_height, sparse_infill_density).
basePresetYes
overwrittenYes
sourcePresetYes
manualActionsYes
preservedKeysYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare a destructive, non-idempotent write; the description goes well beyond them by disclosing exactly what is written (a file in the user profile directory), when it takes effect (after Bambu Studio restart), overwrite default false, and that existing user-preset leaf calibrations are preserved while inheritance stays on the system preset. It also explains the deliberate Auto Brim disable and the separate-calibration caveat for PLA versus Silk PLA.

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?

Purpose and trigger are front-loaded, and nearly every sentence carries distinct information (applied settings, inheritance, brim behavior, exclusions, restart requirement). The enumerated settings list is long and could be compressed, but it is the tool's core contract, so the length is mostly earned.

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 mutation tool with an output schema and full annotation coverage, the description covers the safety-relevant facts an agent needs: what is created, where it is written, when it activates, what it deliberately does not change, and the overwrite hazard. Nothing material is left for the agent to infer.

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 100%, so baseline is 3, but the description adds rationale the schema lacks: why includeBrimEars defaults off (clearances must be checked in the first-layer preview) and that processPreset may be an existing user preset whose calibrations are retained. It stops short of adding format hints for name or preset identifiers.

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 first sentence states a specific verb and resource ("Creates an auto-stabilised copy of the given ... process preset"), plus the practical result ("can be used directly in Bambu Studio"). This is clearly differentiated from generic siblings such as bambu_save_user_preset because the transformation applied is spelled out in the following sentences.

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

Usage Guidelines4/5

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

It gives an explicit trigger: "Use it when small print-in-place parts detach from the bed or get dragged off by the nozzle," which is a concrete symptom an agent can match. It also states scope exclusions (it does not touch temperature, cooling or flow), though it never names a sibling tool as the alternative for those cases.

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