Skip to main content
Glama

browser_adopt_tab

Idempotent

Adopt a browser tab into the agent session: reclaim orphaned tabs after a crash, or take a user tab only when explicitly requested; release it afterward.

Instructions

Takes control of a USER tab (no agent drives it): refused by default. user_asked=True only when the user explicitly asked to act in THIS tab. Give the tab back at the end with browser_release_tab.

ORPHAN tab of my agent (state "orphan" in browser_list_tabs: its session died, server restarted or crashed): taken back without user_asked. A tab of another agent, or of another live session, is always refused.

Input Schema

NameRequiredDescriptionDefault
tab_idYes
user_askedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.31.6
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "title": "Result",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "browser_adopt_tabOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A4.2/5.0
Behavior5/5

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

Goes well beyond the annotations: annotations only say non-readonly, idempotent, non-destructive, while the description discloses the default-refusal policy, exact ownership conditions for acceptance, and the obligation to release the tab afterward. This is precisely the permission/ownership context an agent cannot infer from structured fields.

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?

Two tight paragraphs, refusal semantics front-loaded and cleanup instruction placed at the end where it belongs. Slightly dense with parentheticals and unbalanced line breaks, but no sentence is filler.

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?

With no output schema and only two parameters, the description supplies what's needed to call it correctly: preconditions, ownership rules, and follow-up action. It stops short of describing what a refusal returns or what state the adopted tab is left in, which would help an agent handle failure.

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 description coverage is 0%, so the description must carry the load, and it does for the consequential parameter: user_asked is defined as True only when the user explicitly requested action in this tab, which is the key decision input. tab_id is left implicit (presumably from browser_list_tabs, which is referenced for the orphan state), so a small gap remains.

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?

States a specific verb ('Takes control of') and resource ('a USER tab'), plus a second case (orphan tab of my own agent). It effectively distinguishes adoption from browsing/selection siblings like browser_select_tab and browser_release_tab, though the dual-case framing makes the core action slightly less crisp than a single-scope statement.

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?

Explicit conditional guidance: refused by default, user_asked=True only when the user explicitly asked to act in THIS tab, orphan tabs reclaimed without it, and other agents' tabs always refused. It doesn't name sibling alternatives (e.g., browser_select_tab or browser_list_tabs) as the fallback path, which keeps it short of a 5.

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