Skip to main content
Glama
mostodont01

prusa-workbench-mcp

by mostodont01

add_model

Load STL, 3MF, OBJ, or STEP files onto a print bed, adding each object in multi-object 3MFs and optionally creating copies, new beds, or rearranged layouts for slicing.

Instructions

Load a model file (STL, 3MF, OBJ, STEP) onto a bed. A 3MF with several objects adds each one.

Args: path: file path (~ allowed). name: object name (default: from the file). bed: bed name, or "new" for a new bed with bed-1's profiles and no overrides (default: the first bed). copies: how many of it. arrange: re-arrange the bed afterwards (objects that don't fit go to new beds).

Input Schema

NameRequiredDescriptionDefault
bedNo
nameNo
pathYes
copiesNo
arrangeNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden and does a decent job: it discloses that a 3MF with multiple objects adds each one, that arrange can spill non-fitting objects onto new beds, and that bed="new" inherits bed-1's profiles without overrides. It does not cover error handling, overwrite behavior, or whether existing bed contents are affected.

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 purpose sentence is front-loaded and the Args block is efficient, with every parameter line earning its place. The parenthetical-heavy style is slightly dense but not wasteful.

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?

An output schema exists, so return values need not be described. Combined with thorough parameter documentation and disclosed side effects, the definition is nearly complete for a 5-param mutation tool; only failure modes and interaction with existing bed contents remain unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate and does: all five parameters are explained with meaning and defaults, including the non-obvious sentinel value bed="new" (inherits bed-1 profiles, no overrides) and the arrange spillover side effect. This is meaningfully more than the bare schema provides.

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 ('Load a model file') and enumerates accepted formats (STL, 3MF, OBJ, STEP), plus the multi-object 3MF behavior. It doesn't explicitly contrast with siblings like add_from_onshape or copy_objects, but the file-loading scope is clear enough to separate it from them.

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 implied through parameter defaults (bed defaults to first bed, arrange defaults to true), but there is no explicit 'use this when...' guidance or statement of when to prefer add_from_onshape over local file loading. The agent must infer the selection context from surrounding tools.

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