Skip to main content
Glama
halo-light

halo-light

set_color

Idempotent

Set a light's color by name or hex code to control Hue lighting, optionally targeting a specific light by ID or name.

Instructions

Set a light's color by name (rouge, bleu, orange, ...) or hex (#rrggbb).

Input Schema

NameRequiredDescriptionDefault
colorYes
light_idNo
light_nameNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.3/5.0
Behavior3/5

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

The annotations already declare the important behavior: non-read-only, idempotent, non-destructive, closed-world. The description adds only the color value formats and gives no information about how the target light is resolved (light_id vs light_name), what happens with an unrecognized color name, or whether the call blocks. Beyond annotations, the added behavioral detail is thin.

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?

A single tightly written sentence, front-loading the action and then the value formats. Nothing redundant; every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/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 explained, and annotations cover the safety profile. The remaining gap is the targeting mechanism for the two optional light parameters, which for a 0%-coverage schema is the main thing the description should have resolved.

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

Parameters2/5

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

Schema description coverage is 0% and there are 3 parameters, so the description must carry the burden. It meaningfully explains only the `color` parameter (names such as rouge/bleu/orange, or #rrggbb hex); lig ht_id and light_name, both defaulting to empty strings and both used for targeting, are entirely undocumented — it is unclear which takes precedence or what an empty value does.

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?

A specific verb and resource ('Set a light's color') plus the accepted value formats (name or #rrggbb). It does not distinguish itself from the several color-setting siblings (set_color_rgb, set_color_xy, set_color_temperature, set_group_color), so an agent cannot infer from the description alone which one to pick.

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 by the name and the listed color formats — an agent knows this sets a named/hex color rather than an RGB tuple or a color temperature. However, there is no explicit statement like 'use this for named or hex colors; use set_color_xy for precise chromaticity,' and no prerequisites or when-not guidance.

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