Skip to main content
Glama

browser_wait_text

Waits up to 30 seconds for specified text to appear or disappear in the current frame's visible snapshot, helping automate legacy page checks when content loads asynchronously.

Instructions

Wait up to 30 seconds for text to appear (or disappear with gone=true) in the bounded visible snapshot of the current frame. Absence does not prove absence outside snapshot limits.

Input Schema

NameRequiredDescriptionDefault
goneNo
textYes
secondsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.0

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations at all, the description carries the full burden, and it does add real value: it discloses the 30-second ceiling, the gone=true inversion, and an honest caveat that absence inside the snapshot does not prove absence on the page. However, it never says what happens on timeout (throw, return false, return a status object) or whether the tool polls, which is the single most important behavioral fact for a wait primitive.

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 filler: the primary action and timeout lead, the mode variant is parenthesized inline, and the critical limitation caveat closes. Nothing repeats the schema or wastes a clause.

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?

There is no output schema and no annotations, so the description is the only source of truth about results — yet it never states the return value or failure mode on timeout, and it leaves the seconds parameter and its relationship to the 30-second cap undefined. For a three-parameter blocking primitive this is a visible gap, though the snapshot-bounds warning shows real awareness of the tool's edge cases.

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%, so the description must compensate for all three parameters. It documents 'gone' well and 'text' implicitly through the example semantics, but 'seconds' is entirely unaddressed — worse, 'Wait up to 30 seconds' appears to conflict with the seconds parameter defaulting to 10, leaving unclear whether seconds is capped at 30 or whether 30 is a fixed ceiling.

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 ... for text to appear') plus a clear scope qualifier ('bounded visible snapshot of the current frame') and the inverted mode ('disappear with gone=true'). It implicitly separates itself from browser_find (non-blocking search) and browser_wait_ready (page readiness), but never names a sibling, so the differentiation is inferential rather than explicit.

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: call this when you need to block until a string shows up or vanishes. There is no statement of when NOT to use it, no pointer to browser_wait_ready or browser_find as alternatives, and no guidance on choosing between waiting for text versus taking a fresh browser_snapshot.

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