Skip to main content
Glama

Extract data

browser_extract
Read-only

Extract a table or repeated list (search results, product cards, feed items) into JSON rows, or list the links. Scope with a ref or CSS selector; pair with scrolling for infinite feeds.

Instructions

Turn a table, or a repeated list (search results, product cards, feed items), into JSON rows; or list the links. kind "auto" picks the biggest table, else the biggest repeated list. Scope it with a ref or selector. Pair with browser_scroll untilStable for infinite feeds.

Input Schema

NameRequiredDescriptionDefault
refNoElement ref from browser_find or browser_capabilities.
kindNo
limitNoRows to return (default 50).
tabIdNo
selectorNoCSS selector, if you have no ref.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.2

TDQS

A4.1/5.0
Behavior4/5

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

readOnlyHint=true already establishes the safe-read profile, so the bar is lower. The description adds genuine behavioral detail: the "auto" heuristic (biggest table, else biggest repeated list) and the scroll pairing for lazy-loading feeds, which are not captured by annotations or schema.

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 dense sentences, front-loaded with the core purpose before the auto heuristic and the workflow tip. No filler sentences; every clause carries actionable information.

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, the description still conveys the return shape (JSON rows or a list of links). For a 5-param read-only tool with annotations covering safety, this is nearly complete, though the limit default and tabId could be mentioned.

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 60% schema coverage, the description compensates well: it explains the meaning of the undescribed kind enum value "auto" and the ref-vs-selector scoping tradeoff. Only tabId remains undocumented, keeping it below 5.

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 names a specific verb+resource: turning tables/repeated lists into JSON rows, or listing links. It clearly separates structured extraction from generic reading. It does not explicitly name the sibling it is distinct from (e.g., browser_read), so it stops short of 5.

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?

"Scope it with a ref or selector" tells the agent how to target the extraction, and "Pair with browser_scroll untilStable for infinite feeds" gives a concrete workflow pairing. No explicit when-not-to-use guidance is offered, so it is clear context without exclusions.

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