Skip to main content
Glama

chrome_use_snapshot

Captures the page's accessibility tree with @ref handles so you can locate elements to click, fill, or type; use filters or diff to focus on relevant changes.

Instructions

Accessibility tree of the current page with @ref handles, for locating elements to click/fill/type.

Input Schema

NameRequiredDescriptionDefault
diffNoOnly changes since this session last read the same page with the same options (--diff). Without a valid baseline returns the full tree and a diffNote. Omit or false for a full snapshot. Valid deltas include only excerpt refs; unchanged deltas have empty refs while the live session map is kept.
urlsNoInclude link/image URLs (-u).
depthNoLimit tree depth (-d).
forceNoWith tabId: act on a tab this session does not own (the user's own, or another session's), in place and in the background (--tab <handle> --force). Only when the user asked you to act on that tab; the result has forced: true and the tab's title and url.
tabIdNoTarget tab id (e.g. t2), label, or targetId (--tab).
cursorNoInclude the current cursor position marker (-C).
filterNoRegex: keep only matching lines + ancestor context (-f).
compactNoRemove empty structural elements (-c).
sessionNoIsolated session name (chrome-use --session <name>). Each session gets its own tab group, browser tab and element refs. Omit it unless several agents share ONE MCP server — the session is otherwise derived per agent automatically. When you do share a server with sibling agents, pass a name unique to you on every call, or you will drive their tabs and invalidate their refs.
selectorNoScope the snapshot to a CSS selector (-s).
timeoutMsNoKill the underlying chrome-use process if it hasn't responded after this many ms (default 30000).
interactiveNoOnly interactive elements (-i).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden but only states what the tool returns. It does not disclose read-only behavior, ref lifecycle/staleness, session isolation risks, or side effects around force/tab targeting, leaving significant behavioral traits undocumented in the description.

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 a single front-loaded sentence with no filler. It immediately states the resource, the useful output artifact, and the primary purpose.

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

Completeness2/5

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

For a 12-parameter browser automation tool with no annotations and no output schema, the description is too sparse. It does not explain the snapshot-to-action workflow, session ownership, diff baseline behavior, or ref validity, even though some of that detail appears only in parameter schemas.

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%, so the schema already explains all 12 parameters in detail. The description adds no parameter-level meaning beyond the schema, which is acceptable for high coverage but not value-adding.

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 resource (accessibility tree of the current page) and its output element (@ref handles), and ties it to locating elements for click/fill/type. It is clear but does not explicitly distinguish itself from sibling chrome_use_read, which may also retrieve page content.

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

Usage Guidelines3/5

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

The phrase 'for locating elements to click/fill/type' implies when to use the tool, but there is no explicit guidance on when not to use it, when to use chrome_use_read instead, or how to choose between full snapshots and diff mode. Usage is implied rather than stated.

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