Skip to main content
Glama

Switch dance

reanim_switch_dance

Select a dance by name substring, InternalName, or list index, then save it to MCP state and generate executor-ready Luau that clicks the matching Dances UI entry.

Instructions

Record a dance pick in MCP state and return executor-ready Luau that clicks the matching Dances UI entry. Identifier = name substring, InternalName, or 1-based index from reanim_list_dances.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
danceYesName substring, exact name, InternalName, or 1-based index

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false and openWorldHint=false, so the description carries the interesting burden and does so well: it reveals that the tool records internal MCP state and returns Luau code that performs the actual UI click externally, rather than clicking directly. It stops short of describing the returned snippet's structure or failure behavior.

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?

Two tight sentences with zero padding; the core purpose and the state-mutation/return behavior are front-loaded, and the identifier rules are packed into a single follow-up clause.

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 one-parameter tool with no output schema, the description covers what it does, what it returns (executor-ready Luau), and where identifiers originate. It leaves minor gaps around what the generated Luau does on failure or how many results it produces, but nothing an agent needs to call it correctly is missing.

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 100%, so the single 'dance' parameter is already fully documented, including the four accepted forms. The description largely repeats this and only adds the useful pointer that identifiers come from reanim_list_dances, which is the baseline-plus level.

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 names a specific verb and resource ('Record a dance pick... clicks the matching Dances UI entry') and even discloses the dual behavior of persisting state plus emitting executor-ready Luau. It is far more specific than the title 'Switch dance'. It does not, however, explicitly separate itself from adjacent siblings like reanim_random_dance or reanim_get_current_dance.

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 rather than stated: the agent can infer this is the tool for selecting a specific dance, and it points to reanim_list_dances as the source of identifiers. There is no explicit when-to-use/when-not guidance and no named alternative for cases like random selection.

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