Skip to main content
Glama
t3ratech

T3rnel Browser — Session Bridge

Official
by t3ratech

session_wait

Read-onlyIdempotent

Wait for a page to reach a known state—load event, URL substring, or visible selector—so the next action targets a settled page. Returns on condition met; fails with named error on timeout.

Instructions

Block until a page reaches a known state, so the next tool acts on a settled page rather than a half-loaded one. Waits for the load event, for the URL to contain a string, or for a selector to appear. Returns as soon as the condition holds — {condition, waited} for load, {condition, url} for url, {condition, found} for selector — and fails at the timeout with a named error rather than hanging the client. Polls every 200ms; the default timeout is 10000ms.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tabIdNoTab to wait on; uses the active tab when omitted
valueNoURL substring or CSS selector to wait for; required for the url and selector conditions
conditionYesWhat to wait for: load (the load event), url (value appears in the URL), or selector (element appears)
timeoutMsNoMaximum wait in milliseconds (default 10000)

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed6 schema fields changedv1.2.0
    • addedInput schema / properties / condition / description
      Added value: +"What to wait for: load (the load event), url (value appears in the URL), or selector (element appears)"
    • addedInput schema / properties / tabId / description
      Added value: +"Tab to wait on; uses the active tab when omitted"
    • addedInput schema / properties / timeoutMs / default
      Added value: +10000
    • changedInput schema / properties / timeoutMs / description
      Previous value: -"Maximum wait in milliseconds"New value: +"Maximum wait in milliseconds (default 10000)"
    • addedInput schema / properties / timeoutMs / minimum
      Added value: +1
    • changedInput schema / properties / value / description
      Previous value: -"URL substring or selector to wait for"New value: +"URL substring or CSS selector to wait for; required for the url and selector conditions"
  2. First observedv1.1.1

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses a lot beyond the annotations: it polls every 200ms, uses a 10000ms default timeout, returns as soon as the condition holds, fails with a named error instead of hanging, and specifies the exact return shape for each condition. Annotations already declare readOnly and non-destructive, and the description is consistent with them.

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 dense but every sentence adds useful information: purpose, wait conditions, return shapes, timeout behavior, polling interval, and failure mode. It is front-loaded with the main purpose before going into mechanics.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with four well-documented parameters, no output schema, and safe read-only annotations, the description covers everything an agent needs to invoke it correctly: what conditions exist, what happens on success/failure, defaults, and polling behavior.

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 coverage is 100%, so the parameters are already well documented. The description adds context about behavior, such as how the value relates to URL and selector conditions, but does not significantly extend the meaning of the parameters beyond what the schema provides.

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 clearly states what the tool does: it blocks until a page reaches a known state, then releases so the next tool can act on a settled page. It names the three wait conditions (load, URL substring, selector), which distinguishes it from sibling tools like session_navigate or session_snapshot that perform actions or read state.

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 clear context for when to use this tool: before a subsequent tool acts on a page that must be fully loaded or settled. It does not explicitly name alternatives or state when not to use it, but the intended placement in a workflow is clear enough.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/t3ratech/mcp-session-bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server