Skip to main content
Glama
MaxEllis

orcaslicer-mcp

Describe plate placement from G-code

describe_plate
Read-only

Retrieve per-object plate facts from the last slice: orientation, footprint, overhang bands, support, and seam sides. Answer placement questions from data, not guesses.

Instructions

Machine-readable plate facts from the last slice's G-code, per object, so you can answer orientation and placement questions instead of guessing from Euler angles or a picture: how the part stands (flat / tilted / on an edge or corner, from first-layer contact versus its widest layer), the first-layer footprint as islands, where overhang extrusions concentrate by 10 mm height band, where support stands and where its interface touches the part, and which side the outer-wall seams sit on (checked against seam_position). Each object gets a server-written summary sentence; relay it rather than recomputing. Read-only. Needs a valid slice; returns {"error": "not_sliced"} otherwise. Copies of one object are aggregated (Orca labels every copy 0); footprint islands still show per-copy contact. The parsed result is cached per slice (the G-code itself is still downloaded each call to detect a new slice). All bboxes are [x0, y0, x1, y1] in plate millimetres.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.10

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses valuable behavioral details: the result is cached per slice, the G-code is still downloaded each call to detect a new slice, copies of one object are aggregated, and the return format includes an error shape for missing slices. This gives an agent a realistic model of side effects and edge cases.

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?

The description is dense but every clause adds operational value: purpose, output contents, reliability guidance, error behavior, aggregation semantics, caching, and bbox coordinate formatting. It is front-loaded with the core purpose and uses structured semicolon-separated details rather than padding.

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?

Given no output schema, the description compensates thoroughly by listing what the result contains, including a summary sentence, error response, per-copy footprint behavior, and bbox format. An agent has enough information to invoke the tool and interpret its output correctly.

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?

There are zero parameters, so the schema fully covers the input surface. With no params to document, the description's additional explanation of output semantics and coordinate convention is a reasonable baseline-plus contribution.

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 description opens with a precise statement: it provides machine-readable plate facts from the last slice's G-code, per object, for answering orientation and placement questions. It enumerates the specific facts it returns (footprint, overhang bands, supports, seams), which clearly distinguishes it from sibling tools like render_plate or diagnose_plate.

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?

The description explains that this tool is for answering orientation and placement questions 'instead of guessing from Euler angles or a picture,' and says it requires a valid slice with a specific error otherwise. It does not explicitly name alternative sibling tools, but the usage context is clear enough for an agent to select it appropriately.

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