Skip to main content
Glama

browser_select_option

Destructive

Selects an option in a native by value or visible text and fires input/change events. For custom comboboxes, click the list and then the option.

Instructions

Selects an option of a (targeted by locator, e.g. {"label": "Plan"}, or selector) by value or by visible text, then fires input and change events (like Playwright selectOption). A custom list (role=combobox without ) is driven with browser_click on the list, then on {"role": "option", ...}.

Input Schema

NameRequiredDescriptionDefault
textNo
valueNo
tab_idYesYour tab's id (from browser_new_tab, or a tab adopted with browser_adopt_tab).
locatorNo
selectorNo

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_select_optionOutput",
      -  "type": "object"
      -}New value: +null
  2. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is covered; the description adds genuinely non-obvious behavior — that input and change events are dispatched, matching Playwright selectOption semantics, which affects what the page observes. It does not explain the destructive framing or failure behavior when no matching option exists.

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?

Two tight sentences, front-loaded with the core action and effect, followed by the alternative-path note. No filler, and the Playwright reference is a compact way to convey a lot of semantics.

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?

Annotations cover the safety profile and there is no output schema, so the description's burden is the selection mechanics, which it handles. Remaining gaps — mutual exclusivity of text/value, behavior when the option is missing, and whether the element is scrolled into view — are minor but real for a 5-parameter mutation tool.

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 20% schema coverage (just tab_id documented), the description carries real weight: it explains locator usage with a concrete {"label": "Plan"} example and that targeting can be by value or by visible text, mapping to the value/text params. It does not state whether text and value are mutually exclusive or what happens if both are supplied, leaving a real ambiguity.

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 (selects an option of a <select>) with the success behavior (fires input and change events), and distinguishes itself from browser_click by describing the custom-combobox path. An agent can tell exactly what this does versus browser_fill or browser_check without opening the 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?

Explicitly routes the agent away from this tool for non-<select> comboboxes, naming browser_click on the list and on role=option as the alternative. It does not cover selection targeting edge cases (e.g. when to prefer locator vs selector, or what to do if the option is absent), so it stops short of full when/when-not guidance.

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