Skip to main content
Glama

define_color

Creates or updates a named color by pairing a physical material with RGB values and optional finish, so Teardown drawing tools use the correct break behavior and look.

Instructions

Define a named color: a material plus a displayed color, used by the drawing tools.

In Teardown the material decides how a voxel breaks; the color is only its look. Typical: body paint 'weak metal' (official cars), windows 'glass', lights finish 'emissive'. Redefining an existing name changes its rgb/finish everywhere it is used (its material cannot change). Each material has 8 or 16 color slots. Example: name 'body_paint', material 'weak metal', rgb [180, 30, 30].

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
rgbYesDisplayed color [red, green, blue], 0-255.
nameYesColor name, for example 'body_paint'.
finishNoRendering only: 'auto' = glass finish for glass (like official windows), matte otherwise; 'emissive' glows (lights).auto
projectYesProject name, for example 'red_pickup'.
materialYesPhysical material in game (decides strength and behaviour).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.3/5.0
Behavior4/5

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

With readOnlyHint=false already covering mutability, the description adds strong behavioral context: redefining a name rewrites rgb/finish everywhere it is used, the material itself is immutable, and each material has only 8 or 16 slots. It omits what happens when slots are exhausted and carries mild tension with destructiveHint=false given the global rewrite, but the added detail is well beyond the annotations.

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?

Front-loaded with the definition, then the semantic distinction, examples, redefinition caveat and a worked example. Nearly every sentence carries information, though the closing example partially restates fields the schema already describes, adding slight redundancy.

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, the description covers purpose, semantics, side effects and constraints well enough to call correctly. The remaining gaps are the return behavior and slot-exhaustion failure mode, which are minor but unaddressed.

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?

Schema description coverage is 100%, so the baseline is 3, but the description adds cross-parameter meaning the schema lacks: material governs physical breakage while color/finish is purely visual, and finish 'emissive' glows for lights. This helps the agent choose values rather than merely read their types.

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 opening line gives a specific verb+resource ('Define a named color') and immediately characterizes the artifact ('a material plus a displayed color'), then ties it to the sibling family ('used by the drawing tools'). An agent can distinguish this definition-only tool from drawing siblings like draw_box or add_part without opening 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?

It supplies concrete usage contexts ('body paint weak metal', 'windows glass', 'lights finish emissive') and makes the dependency on the drawing tools explicit, which tells the agent when this is relevant. However it never states the operational ordering (define before draw) or any exclusions, so it stops short of explicit when/when-not guidance.

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