Skip to main content
Glama

umouse_wait_voice

Waits in the active conversation up to 25 seconds for voice-key transcription to finish and returns unacknowledged ready, empty, or failed messages for processing and acknowledgment.

Instructions

在当前活动对话内等待语音键转写完成,返回未确认的 ready/empty/failed 消息(最多 25 秒)。已存在未确认结果会立即返回;处理后 ack 才不会重复读取。不能保证客户端在当前回合结束后自动唤醒。

Input Schema

NameRequiredDescriptionDefault
timeout_msNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden, and it does real work: it discloses the 25-second cap, that pending results short-circuit the wait, that unacked results are re-delivered later, and the important caveat that the client may not be auto-woken after the current turn. What it omits is the timeout outcome (empty vs. error) and whether the call blocks or yields.

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?

Four compact clauses with no filler: the wait semantics and the 25-second cap come first, followed by the immediate-return rule, the ack requirement, and the wake caveat. Dense but front-loaded and each sentence carries a distinct operational fact.

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?

No output schema and no annotations exist, yet the description names the return states (ready/empty/failed), the confirmation lifecycle, and the timeout ceiling, which is most of what an agent needs to call it safely. The remaining gap is the exact behavior on timeout and the handoff ordering to umouse_ack_voice, which are left implicit.

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 0% for the single timeout_ms parameter, so the description must compensate. It conveys the effective cap ('最多 25 秒'), which matches the schema maximum and default, but says nothing about the minimum, units beyond seconds, or what a shortened timeout does behaviorally.

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 gives a specific verb and resource: wait inside the current active conversation for voice-key transcription to complete, returning ready/empty/failed messages. That is far more than a restatement of the name. It stops short of differentiating itself from the near-identical siblings umouse_voice_wait, umouse_voice_inbox, and umouse_wait_events, so an agent cannot tell these apart from the description alone.

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: it should be called inside an active conversation, and existing unconfirmed results return immediately. The description also warns that after processing, the caller must ack or the result will be re-read, which hints at the inbox/ack workflow. However, it never says when to prefer this tool over umouse_voice_wait, umouse_voice_inbox, or umouse_wait_events, and it lists no exclusions.

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