Skip to main content
Glama
orcaslicer-mcp

orcaslicer-mcp

Select plate

select_plate

Make a specific plate the active one so slicing, G-code, renders, and status apply to it, without altering unsaved config overrides.

Instructions

Make a plate the current one, so slicing, G-code, renders and slice status act on it.

get_slice_status then reports that plate's own result: its stats if it is still sliced, otherwise idle with "plate N is not sliced". Switching plates leaves unsaved config overrides alone; it changes only which plate is sliced. Selecting the plate that is already current is a no-op.

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": {
      "index": "<index>"
    },
    "name": "select_plate"
  }
}

Input Schema

NameRequiredDescriptionDefault
indexYes0-based plate index from list_plates (the window shows plates 1-based).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.17

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false and destructiveHint=false; the description goes well beyond by disclosing side effects (unsaved config overrides are preserved, only the sliced-plate pointer changes) and the exact idle message a downstream status call will produce. It also declares idempotence ('already current is a no-op'), which is the key behavioral fact for an agent deciding whether to call it.

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 core effect is front-loaded in the first clause, followed by tight supporting details about state and the no-op case. Slightly more text than strictly needed, but each sentence carries information an agent would otherwise have to guess.

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?

For a one-parameter state-selection tool with no output schema, the description covers side effects, idempotence, and how a sibling tool's output will change afterwards. Nothing needed to invoke 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 coverage is 100% and the schema's own 'index' description already covers the 0-based index from list_plates and the 1-based UI distinction. The description adds no further parameter meaning, so the baseline holds.

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?

States a specific verb and resource ('Make a plate the current one') and immediately names the downstream effects (slicing, G-code, renders, slice status). This separates it cleanly from siblings like add_plate, delete_plate, and select_preset without needing the schema.

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?

Explains that get_slice_status will then report that plate's result and that re-selecting the current plate is a no-op, which implies when the call is useful versus wasted. It stops short of explicitly naming alternatives (e.g., when to use select_preset instead), so not a 5.

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