Skip to main content
Glama

audit_original_design

Read-only

Audit an original 3D design before printing to verify mesh validity, printability, orientation, and requirements, then get exact regeneration feedback for fixes.

Instructions

Run a ruthless audit of an original design before printing.

        Combines design briefing, prompt enhancement, mesh validation,
        printability scoring, orientation analysis, advanced diagnostics,
        and regeneration feedback into a single report.

        Use this after generating or modeling a new part to answer:
        "Is this genuinely ready to print, and if not, what exact changes
        should the agent make next?"

        Args:
            file_path: Path to STL or OBJ file.
            requirements: Functional requirements the design must satisfy.
            material: Optional material constraint (e.g. "petg").
            printer_model: Optional printer model ID (e.g. "bambu_a1").
            build_volume_x: Build volume X in mm.  Pass all three of X, Y
                and Z to override the printer's build volume; any one
                left out means all three are ignored.
            build_volume_y: Build volume Y in mm.  Pass all three of X, Y
                and Z to override the printer's build volume; any one
                left out means all three are ignored.
            build_volume_z: Build volume Z in mm.  Pass all three of X, Y
                and Z to override the printer's build volume; any one
                left out means all three are ignored.
            nozzle_diameter: Nozzle diameter in mm.  Leave unset for the
                nozzle Kiln has for ``printer_model``, else the stock
                size; the report says which it used.
            layer_height: Layer height in mm.
            max_overhang_angle: Supportless overhang threshold in degrees.
        

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": {
      "file_path": "<file_path>",
      "requirements": "<requirements>"
    },
    "name": "audit_original_design"
  }
}

Input Schema

NameRequiredDescriptionDefault
materialNoOptional material constraint (e.g. "petg").
file_pathYesPath to STL or OBJ file.
layer_heightNoLayer height in mm. Default: 0.2.
requirementsYesFunctional requirements the design must satisfy.
printer_modelNoOptional printer model ID (e.g. "bambu_a1").
build_volume_xNoBuild volume X in mm. Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored.
build_volume_yNoBuild volume Y in mm. Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored.
build_volume_zNoBuild volume Z in mm. Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored.
nozzle_diameterNoNozzle diameter in mm. Leave unset for the nozzle Kiln has for ``printer_model``, else the stock size; the report says which it used.
max_overhang_angleNoSupportless overhang threshold in degrees. Default: 45.0.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changedv1.5.1
    • addedInput schema / properties / build_volume_x / description
      Added value: +"Build volume X in mm.  Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored."
    • addedInput schema / properties / build_volume_y / description
      Added value: +"Build volume Y in mm.  Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored."
    • addedInput schema / properties / build_volume_z / description
      Added value: +"Build volume Z in mm.  Pass all three of X, Y and Z to override the printer's build volume; any one left out means all three are ignored."
    • addedInput schema / properties / file_path / description
      Added value: +"Path to STL or OBJ file."
    • changedInput schema / properties / layer_height / description
      Previous value: -"Default: 0.2."New value: +"Layer height in mm. Default: 0.2."
    • addedInput schema / properties / material / description
      Added value: +"Optional material constraint (e.g. \"petg\")."
    • changedInput schema / properties / max_overhang_angle / description
      Previous value: -"Default: 45.0."New value: +"Supportless overhang threshold in degrees. Default: 45.0."
    • addedInput schema / properties / nozzle_diameter / description
      Added value: +"Nozzle diameter in mm.  Leave unset for the nozzle Kiln has for ``printer_model``, else the stock size; the report says which it used."
    • addedInput schema / properties / printer_model / description
      Added value: +"Optional printer model ID (e.g. \"bambu_a1\")."
    • addedInput schema / properties / requirements / description
      Added value: +"Functional requirements the design must satisfy."
  2. Changed12 schema fields changedv1.5.0
    • removedInput schema / properties / build_volume_x / default
      Removed value: -null
    • removedInput schema / properties / build_volume_y / default
      Removed value: -null
    • removedInput schema / properties / build_volume_z / default
      Removed value: -null
    • removedInput schema / properties / layer_height / default
      Removed value: -0.2
    • addedInput schema / properties / layer_height / description
      Added value: +"Default: 0.2."
    • removedInput schema / properties / material / default
      Removed value: -null
    • removedInput schema / properties / max_overhang_angle / default
      Removed value: -45
    • addedInput schema / properties / max_overhang_angle / description
      Added value: +"Default: 45.0."
    • addedInput schema / properties / nozzle_diameter / anyOf
      Added value: +[
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / nozzle_diameter / default
      Removed value: -0.4
    • removedInput schema / properties / nozzle_diameter / type
      Removed value: -"number"
    • removedInput schema / properties / printer_model / default
      Removed value: -null
  3. First observedv0.1.0

TDQS

A3.8/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 safety is covered. The description adds real beyond-schema behavior: the call fans out into many sub-analyses and returns one consolidated report, and it discloses that the report itself states which nozzle it resolved. It leaves out cost/latency implications of a multi-analysis run.

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

Conciseness3/5

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

The opening paragraphs are well front-loaded and answer purpose and timing efficiently. The Args section then duplicates all ten schema descriptions verbatim, which is bulk that earns nothing since the schema already carries it.

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 10-parameter composite audit with no output schema, the description covers what is analyzed, when to invoke it, and that results come back as one report. It could say more about the report's structure or severity grading, but nothing critical to calling it correctly is missing.

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 description coverage is 100%, so every parameter including the all-three-or-none build volume rule and the layer-height/nozzle defaults is already documented in structured data. The Args block largely restates those same sentences, adding no syntax, format or constraint detail beyond the schema; baseline 3 applies.

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 opens with a specific verb+resource ("ruthless audit of an original design before printing") and enumerates the bundled analyses (briefing, mesh validation, printability scoring, orientation, diagnostics, regeneration feedback), which separates it from single-dimension siblings. It never names a specific sibling tool though, so an agent must infer the boundary against analyze_printability or check_print_readiness.

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 after generating or modeling a new part, framed by the question it answers. There is no when-not guidance and no named alternative for cheaper single-check workflows, which keeps it short of a 5.

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