Skip to main content
Glama

watch

Idempotent

Monitor a web page in the background and collect events when text appears/disappears or a value changes; poll or wait for a condition.

Instructions

Keep watching a page in the background — "tell me when the pipeline is green / the Approve button appears / this number changes" — checked every interval_s by the extension. Events are collected, not pushed: action=poll, or a script blocking on "chrome-bridge watch --wait ". Survives extension idling, not a browser restart. poll returns one line per event (time, name, kind, url, value, previous); a change due within seconds is wait_for.

Input Schema

NameRequiredDescriptionDefault
nameNoWatch id
textNoText that appears / disappears
sinceNopoll: events after this ms timestamp
untilNoDefault: change with value_of, else match
actionNopoll = events since a timestampadd
reloadNoReload before each check, for pages that do not update live
tab_idNoTarget tab; omitted = last tab navigated in this session, else the active one
selectorNoElement that appears (until=match) or disappears (until=gone)
value_ofNoElement whose text changing fires (until=change)
interval_sNoBetween checks, min 30
expires_minNoGive up after

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.16.1

TDQS

A4.3/5.0
Behavior4/5

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

Annotations declare the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), so the bar is lower, yet the description still adds real context: it survives extension idling but not a browser restart, and events are collected rather than pushed. It does not explain the mutation side of add/list/remove actions, leaving some lifecycle behavior implicit.

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?

Purpose is front-loaded in the first clause, followed by a quoted use-case and delivery model. The text is dense but each sentence carries distinct information (trigger meaning, delivery model, lifecycle, output format, alternative); the em-dash-heavy packing is slightly heavy but not wasteful.

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 an 11-parameter tool with no output schema, the description compensates well by describing the poll return line format (time, name, kind, url, value, previous) and the lifecycle limits. It falls short only on the add/list/remove actions and their outputs, which an agent would need to infer.

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 100%, so the baseline is 3, but the description adds workflow meaning beyond the schema: it ties interval_s to the check cadence and clarifies how poll output is retrieved via a since timestamp. It still leaves the add/remove/list action semantics largely to the enum.

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 ('Keep watching a page in the background') and grounds it with concrete example triggers (pipeline green, Approve button, number changes). It explicitly distinguishes itself from the wait_for sibling by scope ('a change due within seconds is wait_for'), so an agent can choose between the two without opening either schema.

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?

It gives clear routing guidance: use polling (action=poll) or the blocking 'chrome-bridge watch --wait' for collected events, and delegates immediate changes to wait_for. However, it never addresses other close siblings like watch_dom or track_events, and there is no explicit when-not-to-use statement.

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