Skip to main content
Glama

wait_for_url

Read-onlyIdempotent

Wait until the tab's URL matches a pattern and the document is fully loaded, then return the final URL, title, and readyState.

Instructions

Wait for navigation to settle: blocks until the tab's URL matches url_pattern (regex, or plain substring) and — unless wait_ready=false — document.readyState is 'complete', then returns the final url, title and readyState. Use this after a click or open_url that navigates; wait_for(url_pattern=...) only checks the URL and can return while the new document is still blank. The server schedules short synchronous page checks. Delayed replies retain their operation_id for get_execute_js_result. A timed-out probe can release the tab without losing its receipt: reservation_held=false permits another command while the original reply remains collectible. When reservation_held is true or unknown, collect the original operation first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
timeoutNo
session_idNo
wait_readyNo
url_patternYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnly/openWorld/idempotent, and the description adds significant non-obvious behavior: server-side synchronous page checks, operation_id retention for get_execute_js_result, and reservation_held semantics on timeout. This is beyond what annotations provide and helps the agent reason about side effects and collecting results.

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?

The description is dense but cohesive: it front-loads the core behavior and usage, then layers advanced details (operation_id, reservation_held) that need to be there. Every sentence carries information, though the later reservation_held paragraph is complex enough that it could be split for readability.

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 4-parameter wait tool with no schema parameter descriptions and an output schema available, the description covers the main behavior, return values, usage context, and timeout edge case. It omits session_id semantics and timeout units, but otherwise gives an agent what it needs to call correctly.

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. It does clarify url_pattern (regex or plain substring) and wait_ready=false (skip readyState wait), but timeout and session_id are left undescribed, including timeout units. This is a clear gap; the description only partially compensates for the schema's lack of parameter documentation.

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 resource: 'Wait for navigation to settle: blocks until the tab's URL matches url_pattern...' and states the exact return values (url, title, readyState). It also names the sibling wait_for and explains the difference, so an agent can select it correctly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says to use this after a click or open_url that navigates, and contrasts wait_for(url_pattern=...) as URL-only check that can return before the document is ready. It also provides operational guidance for delayed replies and reservation_held, so when-to-use and alternatives are clear.

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