Skip to main content
Glama

troubleshoot_print_issue

Read-only

Diagnose 3D printing failures by material and symptom to get root causes, prioritized fixes, prevention tips, and storage or drying guidance.

Instructions

Diagnose a 3D printing problem by material and symptom.

        Searches the troubleshooting knowledge base for matching issues
        and returns root causes, prioritised fixes, prevention tips, and
        storage/drying requirements for that specific symptom.

        Use this when a user reports a print failure, quality issue, or
        asks "why is my print doing X?"

        Examples:
            material="pla", symptom="stringing"
            material="petg", symptom="poor layer adhesion"
            material="abs", symptom="warping"
        Args:
            material: Material ID (e.g. "pla", "petg", "abs", "tpu",
                "nylon", "polycarbonate", "asa", "cf_nylon").
            symptom: Symptom keywords to search for (e.g.
                "stringing", "warping", "clog", "brittle").
        

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "material": "<material>",
      "symptom": "<symptom>"
    },
    "name": "troubleshoot_print_issue"
  }
}

Input Schema

NameRequiredDescriptionDefault
symptomYesSymptom keywords to search for (e.g. "stringing", "warping", "clog", "brittle").
materialYesMaterial ID (e.g. "pla", "petg", "abs", "tpu", "nylon", "polycarbonate", "asa", "cf_nylon").

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.5.1
    • addedInput schema / properties / material / description
      Added value: +"Material ID (e.g. \"pla\", \"petg\", \"abs\", \"tpu\", \"nylon\", \"polycarbonate\", \"asa\", \"cf_nylon\")."
    • addedInput schema / properties / symptom / description
      Added value: +"Symptom keywords to search for (e.g. \"stringing\", \"warping\", \"clog\", \"brittle\")."
  2. Changed4 schema fields changedv1.3.0
    • removedInput schema / properties / symptom / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / symptom / default
      Removed value: -null
    • addedInput schema / properties / symptom / type
      Added value: +"string"
    • changedInput schema / required
      Previous value: -[
      -  "material"
      -]New value: +[
      +  "material",
      +  "symptom"
      +]
  3. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description earns credit by disclosing what the call actually returns: root causes, prioritised fixes, prevention tips, and storage/drying requirements, which is valuable given there is no output schema.

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 front-loaded: purpose, mechanism, trigger, examples, then args. The Args section is a near-verbatim duplicate of the schema property descriptions, which is wasted length, but the rest is tight and the examples are compact and useful.

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

Completeness4/5

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

For a two-parameter, read-only knowledge-base lookup with no output schema, this is close to complete: it explains the mechanism, the trigger, valid inputs, and the shape of the response. Only edge behavior (unknown material IDs, zero-match symptoms, whether symptom accepts multiple keywords) is left unstated.

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 the schema already defines both parameters and the description's Args block largely repeats it verbatim. The three material/symptom example pairs do add real value by showing valid combinations and demonstrating free-text symptom phrasing (e.g. 'poor layer adhesion') that goes beyond the schema's keyword list.

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 gives a specific verb and resource: diagnose a 3D printing problem by material and symptom. The following sentence clarifies the mechanism (searches a troubleshooting knowledge base) and the scope (one specific symptom), which separates it from generic siblings like troubleshoot_printer or get_print_diagnostic.

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 states a clear trigger condition: use when a user reports a print failure, quality issue, or asks 'why is my print doing X?'. What's missing is any exclusion or named alternative, e.g. when to prefer troubleshoot_printer for hardware faults or diagnose_print_failure_live for an in-progress failure, so an agent must infer the boundary itself.

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