Skip to main content
Glama
tbrito88
by tbrito88

Set Body Color

set_color
Idempotent

Assign a flat RGB color and optional opacity to a CAD body so you can visually distinguish parts before rendering.

Instructions

Assign a flat RGB color to a body (creates/reuses a design-local appearance). Useful for visually distinguishing parts before render_view. Unless a parameter says otherwise, lengths and coordinates are in cm (not mm) and angles in degrees.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
redYes
blueYes
greenYes
opacityNo1.0 = opaque, 0.0 = invisible
body_nameYesBody name

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior4/5

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

The annotations already declare the safe/idempotent profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), so the bar is lower. The description adds real behavioral detail beyond them: the call creates or reuses a design-local appearance rather than merely mutating a scalar, which explains the idempotency and the side effect on the design's appearance list.

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 first two sentences are tight and front-loaded. The third sentence is a canned units disclaimer that does not earn its place, since set_color takes no length, coordinate, or angle parameters.

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 5-parameter mutation tool with no output schema but with annotations covering safety and idempotency, the description covers purpose, side effect, and intended workflow. The remaining gap - behavior when body_name does not resolve, and whether an existing appearance is replaced or shared - is minor.

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 40%, so the description needs to compensate for red/green/blue, which are undocumented in the schema; 'flat RGB color' only loosely implies the 0-255 channel semantics that the schema's numeric bounds actually carry. The unit note (cm, degrees) is irrelevant to this tool's parameters, so it adds no semantic value here.

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 states a specific verb and resource: 'Assign a flat RGB color to a body.' It adds the mechanism ('creates/reuses a design-local appearance') and a motivating outcome ('visually distinguishing parts before render_view'). It stops short of naming the obvious sibling set_appearance, so the boundary between the two is left implicit.

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?

It gives one concrete when-to-use cue ('before render_view'), which is helpful context. However it never states when-not to use it, nor points to set_appearance for non-flat/materials or textures, so the agent must infer the routing.

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