Skip to main content
Glama
Buggy1111

shelly-mcp

by Buggy1111

shelly_light_set

Idempotent

Set brightness, RGB color, white level, or color temperature for a Shelly light channel, changing only the fields you provide and returning the updated state.

Instructions

Set a light/dimmer/RGB(W)/CCT channel (Gen1 /color,/light ↔ Gen2 Light/RGB/RGBW/CCT.Set).

Only the provided fields are changed. brightness 0-100, rgb three 0-255 values, temp_k white colour temperature. Returns the post-action LightState. Audit-logged.

Input Schema

NameRequiredDescriptionDefault
onNo
rgbNo
whiteNo
deviceYes
temp_kNo
channelNo
brightnessNo
transition_sNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.3
    • addedInput schema / additionalProperties
      Added value: +false
  2. First observedv0.1.2

TDQS

A3.8/5.0
Behavior4/5

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

With only idempotentHint=true in the annotations, the description carries meaningful extra load: partial-update semantics ("Only the provided fields are changed"), the post-action return (LightState), and the audit-logging trait of a write operation. It stops short of stating permission requirements or failure modes.

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?

Purpose is front-loaded in the first line, then behavioral and parameter detail follows in compact sentences with no waste. The generation-mapping parenthetical is dense but short.

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 the return value needn't be re-explained, and the description correctly covers update semantics and audit logging. However, for an 8-parameter mutation with zero schema description coverage, half the parameters and any auth/prerequisite context remain undocumented.

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 0% across 8 parameters, so the description must compensate. It documents brightness (0-100), rgb (three 0-255 values) and temp_k (white colour temperature), but leaves on, white, channel, transition_s, and the required device parameter unexplained in both schema and description.

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 (Set) plus the exact resource and channel types (light/dimmer/RGB(W)/CCT), which cleanly separates it from shelly_switch_set, shelly_cover_move and shelly_rpc_write. An agent can identify the tool 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The channel-type phrasing implies when to reach for this tool versus switch/cover siblings, but no alternative is named and no when-not condition is given. Usage is inferable rather than stated.

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