Skip to main content
Glama
danielefinocchiaro

unofficial-bambu-mcp

set_object_setting

Configure per-object print settings for Bambu Studio projects by assigning a key and value to a specific object, or use an empty value to remove the override.

Instructions

Per-object print setting (e.g. sparse_infill_density '40%', wall_loops '4', layer_height '0.12'). An empty value removes the override.

Input Schema

NameRequiredDescriptionDefault
keyYes
valueYes
objectYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/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 disclosure burden, and it does deliver one genuinely useful mutation semantic: an empty value deletes the override rather than storing an empty string. That is real added value. It still omits whether the change is scoped to the active plate/profile, whether a re-slice is required, and what happens on an unknown key.

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?

Two tight sentences, with the examples carrying most of the information load and the destructive empty-value behavior surfaced before the agent must call it. Nothing is padded, though a leading verb phrase would make the front-loading stronger.

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

Completeness2/5

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

For a 3-parameter mutation tool with zero annotation coverage, no output schema, and 0% schema coverage, the description is too thin. It never says how to address the target object, which keys are valid, or whether slicing or a project context is required — an agent would have to guess or probe other tools before a first successful call.

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

Parameters3/5

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

Schema coverage is 0%, so the schema contributes nothing, but the description partially compensates by giving example key names and value formats (sparse_infill_density -> '40%', wall_loops -> '4', layer_height -> '0.12') and by defining empty-value semantics for 'value'. The 'object' parameter is left completely unexplained — no indication whether it takes a name, index, or ID, which is a significant gap for a required argument.

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 description identifies the resource precisely (a per-object print-setting override) and grounds it with concrete key/value examples such as sparse_infill_density '40%' and wall_loops '4'. It implies the write action through the tool name rather than stating a verb, and it never explicitly names the project-level siblings get_setting/set_setting it must be told apart from.

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 implied by 'per-object' (versus a global setting) and by the note that an empty value removes the override, which tells an agent how to undo. However, there is no explicit when-to-use, no prerequisite (object must already exist, project must be open), and no routing to copy_object_settings, get_setting, or set_setting as alternatives.

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