browser_snapshot
Capture structured accessibility snapshots of web pages to analyze content and interactions without screenshots or vision models.
Instructions
Capture accessibility snapshot of the current page, this is better than screenshot
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| filename | No | Save snapshot to markdown file instead of returning it in the response. |
Implementation Reference
- src/tools/snapshot.ts:33-41 (handler)The handler function for browser_snapshot tool. Ensures a tab is open and returns configuration to capture page accessibility snapshot.handle: async context => { await context.ensureTab(); return { code: [`// <internal code to capture accessibility snapshot>`], captureSnapshot: true, waitForNetwork: false, }; },
- src/tools/snapshot.ts:25-31 (schema)Schema definition for browser_snapshot, specifying name, title, description, empty input schema, and readOnly type.schema: { name: 'browser_snapshot', title: 'Page snapshot', description: 'Capture accessibility snapshot of the current page, this is better than screenshot', inputSchema: z.object({}), type: 'readOnly', },
- src/tools.ts:35-50 (registration)Central tool registration in snapshotTools array, which spreads the snapshot module containing the browser_snapshot tool.export const snapshotTools: Tool<any>[] = [ ...common(true), ...console, ...dialogs(true), ...files(true), ...install, ...keyboard(true), ...navigate(true), ...network, ...pdf, ...screenshot, ...snapshot, ...tabs(true), ...testing, ...wait(true), ];