Skip to main content
Glama

browser_fill

Set the value of an input or textarea, replacing existing text. Target fields by element ref, visible label, or CSS selector to enter text in browser automation.

Instructions

Set the value of an input or textarea (replaces its text).

Input Schema

NameRequiredDescriptionDefault
refNoElement ref from browser_snapshot, e.g. 12
textNoVisible text or label of the element, instead of ref
valueYesThe text the field ends up with
selectorNoCSS selector (first match), instead of ref
snapshotNoAlso return the page snapshot after the action

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.7.1

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and openWorldHint=true, so mutation and external-world scope are covered structurally. The description adds real value with '(replaces its text)', disclosing that existing content is overwritten rather than appended. It stops short of stating whether change/input events fire, whether the element must be visible, or what happens when the element is missing — meaningful gaps for a browser automation primitive.

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?

A single short sentence, front-loaded with the action and resource, with the parenthetical earning its place by disambiguating replace-versus-append. No filler.

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

Completeness3/5

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

The schema is fully documented and there is no output schema, so much of the burden is lifted. But for a five-parameter write tool inside a large browser toolset, the description leaves out the sibling relationship with browser_type and any note on event dispatch or post-fill verification (the snapshot option), which an agent would need to choose 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 100%, and the schema already explains ref, text, selector, value, and snapshot, including the 'instead of ref' alternatives. The description adds no parameter meaning beyond that, so the baseline of 3 applies.

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?

The description states a specific verb and resource ('Set the value of an input or textarea'), so an agent knows exactly what the tool mutates. The parenthetical '(replaces its text)' clarifies the semantics versus appending. It does not, however, distinguish itself from the sibling browser_type, which is the main ambiguity an agent would face.

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

Usage Guidelines2/5

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

There is no statement of when to use this tool rather than browser_type, which is a near-identical sibling in the list. Usage is only implied by the phrase 'input or textarea'. No prerequisites (element must exist in a snapshot) or exclusions are given.

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