Skip to main content
Glama
auss
by auss

set_setting

Change a Roomba setting such as suction level, carpet boost, edge clean, multi-pass, bin pause, child lock, or pad wetness by specifying the setting name and value. Requires write access enabled.

Instructions

Change one setting: suction (normal|high), carpet_boost, edge_clean, multi_pass, bin_pause, child_lock (true|false), pad_wetness (1-3). Needs ROOMBA_ALLOW_WRITES=1.

Input Schema

NameRequiredDescriptionDefault
nameYes
valueYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does disclose the key behavioral trait: a write-gating environment variable that must be set. It also discloses the mutation target and valid domains, though it doesn't say what happens on an invalid name/value or whether changes apply immediately to the device.

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 dense sentence front-loads the action, enumerates valid settings compactly, and ends with the precondition. No filler sentences, and the notation is unambiguous.

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?

The output schema covers return values, so the description only needed to cover the mutation surface and preconditions, which it does. The remaining gaps—error behavior for unsupported settings and whether the change is persisted immediately—are moderate but not blocking for a one-setting write.

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 coverage is 0%, so the description must compensate, and it largely does: it maps the 'name' parameter's allowed values to each 'value' domain (booleans, 1-3 integers, enumerated strings), resolving the anyOf ambiguity in the schema. It doesn't cover the name/value pairing mechanics or unknown-name behavior.

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 precise verb and resource ('Change one setting') and immediately enumerates the exact setting names and value domains, so the agent knows exactly what this tool mutates. The write scope is clearly distinguished from the sibling get_settings.

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?

The phrase 'Change one setting' and the explicit ROOMBA_ALLOW_WRITES=1 precondition tell the agent when this tool is applicable and that writes must be enabled. It does not explicitly contrast with get_settings (read counterpart) or say what to do when writes are disabled, so it falls short of a full when/when-not treatment.

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