Skip to main content
Glama

Verify browser outcome

tab_verify
Read-only

Verify browser page state with up to 20 checks for URL, title, text, visible elements, input values, or counts. Detect mismatches using snapshots to confirm actions produced expected results.

Instructions

Check 1–20 explicit assertions. For current input/textarea/select values, use kind:value with exactly one observed ref or CSS selector. Any ref requires the current snapshot_id; the same snapshot remains readable after act if no newer snapshot or document change replaced it. Text checks inspect visible page text, excluding raw form values. A successful click alone does not prove success.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
checksYes
session_idYesSession ID returned by tab_open.
timeout_msNo
snapshot_idNoRequired when any value check uses ref. Use the latest snapshot_id, including one returned by tab_act.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

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

The description adds significant behavioral context beyond the readOnly/openWorld/destructive annotations: snapshot validity can expire after a newer snapshot or document change, text assertions operate on visible page text rather than raw form values, and a successful click does not guarantee a successful outcome. These are non-obvious semantic details that materially affect how the tool should be used.

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?

The description is four sentences, front-loaded with the core purpose, and every sentence carries useful operational information. It avoids repeating schema constraints and packs the most important caveats into a compact, readable form.

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 tool with nested check variants and snapshot-semantics, the description is almost complete: it covers assertion count, value-check ref/selector rules, snapshot staleness, and text-check scope. It does not describe the return shape or pass/fail format, but the tool's purpose as an assertion checker makes the outcome type fairly inferable, so the gap is minor.

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 only 50% schema description coverage, the description compensates by clarifying key parameter behaviors: exactly one observed ref or CSS selector for value checks, the snapshot_id requirement tied to refs, and the visibility semantics of text checks. It does not enumerate all six check kinds, but the schema already provides the const values and the description adds meaning beyond the raw property definitions.

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?

The description opens with a specific verb and scope: 'Check 1–20 explicit assertions,' which clearly identifies this as a verification tool for browser outcomes. It enumerates concrete behaviors (value checks, text checks, visibility) that distinguish it from snapshot/find/act siblings. It is not a tautology and directly supports the title's 'Verify browser outcome.'

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?

The description gives actionable when-to-use guidance: use kind:value for current form element values, use the current snapshot_id when a ref is needed, and understand that text checks exclude raw form values. It does not explicitly name sibling alternatives or say when not to use the tool, but the usage context is clear enough for an agent to invoke it correctly after a browser action.

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