Skip to main content
Glama

Gomo Sounds

Choose variation

choose_sound
Idempotent

Edits the event's LIST of sounds the game picks from at random. Pass generation_ids to set the whole list at once (2-3 is a good amount for variety); or generation_id with mode: 'add' adds one, 'remove' removes one, 'only' replaces the list with one, null empties it. After choosing, the UNCHOSEN variations of this event are DELETED to keep the account clean (favorites, edited sounds and sounds used in another event are always kept); emptying the list deletes nothing.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "event_id": "<event_id>"
    },
    "name": "choose_sound"
  }
}

Input Schema

NameRequiredDescriptionDefault
modeNoadd
pruneNofalse keeps the unchosen variations (the user may still pick another one).
event_idYes
generation_idNoOne variation; with mode. Use generation_ids to pick several.
generation_idsNoThe full list to use, set at once (the unchosen rest is deleted).

Output Schema

NameRequiredDescriptionDefault
deletedYes
eventIdYes
chosenGenerationIdsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations carry only idempotentHint, so the description bears the burden and does so: it discloses that unchosen variations are DELETED, lists the exceptions that are always kept (favorites, edited sounds, sounds used in another event), and clarifies that emptying deletes nothing. That is exactly the destructive-side-effect context an agent needs before calling.

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?

A single dense paragraph, front-loaded with the core action and followed by the parameter contract and the deletion caveat; no filler. The capitalized emphasis is slightly noisy but the ordering is sensible.

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?

High-risk deletion behavior, its exceptions, and all parameter forms are covered, and an output schema exists so return values need no explanation. Only the prune override and event_id semantics are left entirely to structured fields.

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?

With 60% schema coverage, the description compensates well by defining what each mode value means behaviorally ('only' replaces the list with one, 'add' adds one, 'remove' removes one, null empties) and by contrasting generation_id versus generation_ids. It does not mention the prune flag or event_id, leaving those to the schema.

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 and resource ("Edits the event's LIST of sounds the game picks from at random"), which immediately separates it from delete_sound, save_sound, and generate_sounds. The random-selection scope tells an agent exactly what list is being modified.

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?

Gives concrete when-to-use guidance across the alternative invocation forms: generation_ids to set the whole list at once (with a recommended 2-3 for variety), or generation_id with each mode value, or null to empty. It never explicitly names a sibling tool to use instead, so it falls just short of a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources