Skip to main content
Glama

clear_hms_errors

DestructiveIdempotent

Clears HMS or print error states on a Bambu Lab printer via the clean_print_error MQTT command, restoring the printer from a stopped error condition.

Instructions

Clear HMS or print error state on the Bambu Lab printer using the clean_print_error MQTT command.

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": "clear_hms_errors"
  }
}

Input Schema

NameRequiredDescriptionDefault
hostNoHostname or IP of the printer (default: value from env)
bambu_tokenNoAccess token (default: value from env)
bambu_serialNoSerial number (default: value from env)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is covered structurally. The description adds the transport detail (MQTT command) but does not explain what state is destroyed or what happens to an in-progress print when errors are cleared while printing — the key risk for a destructive tool.

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

Conciseness5/5

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

A single front-loaded sentence with the action first and the mechanism second. No filler, no repetition of the tool name, nothing that could be cut.

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?

For a zero-required-parameter maintenance command with rich annotations and no output schema, the description is adequate but thin. An agent still cannot tell what a successful clear returns, whether it should poll get_printer_status afterward to confirm, or what happens if no error is present.

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 100% and every parameter is documented with its fallback to environment variables, so the description need not restate them. It adds no meaning about how host/token/serial interact or whether partial overrides are meaningful, leaving it at the schema baseline.

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?

States a specific verb and resource ('Clear HMS or print error state') plus the underlying mechanism ('clean_print_error MQTT command'), which is far more specific than the name alone. It does not name a sibling to contrast with, but no sibling in the list performs this function, so disambiguation is largely handled by the verb.

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 it should be called when the printer reports an HMS or print error. There is no guidance on prerequisites (e.g. only after the error condition is resolved) and no statement of when not to call it, which matters given the destructive hint.

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