browser_snapshot
Capture a snapshot of interactive page elements, with modes for speed or detail, and detect changes from previous call.
Instructions
Inject SNAPSHOT_JS and return a ref-indexed list of interactive elements.
Refs (e0, e1, ...) are attached via data-mcp-ref and valid until next nav.
Modes (performance vs completeness tradeoff):
full — default; same shape as mcp-camoufox (computed-style visibility + full attrs)
fast — skip getComputedStyle + minimal attrs (2-3× faster, less info per element)
viewport — full fidelity but only elements inside current scroll viewport
(5-10× faster on long feeds/SERPs, pair with scroll for segment-by-segment)
diff_from_last=True caches a DOM hash per tab; if the hash matches the previous
call on the same URL, returns "unchanged" without re-serializing the element list
(near-instant for re-check loops).
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | full | |
| diff_from_last | No |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |