Skip to main content

Browser Tools

These are all the browser tools your AI agent gets automatically when OpenTabs is running — no plugins required. Tab control, DOM interaction, screenshots, network capture, cookies, console logs: forty tools that give Claude hands-on access to whatever's open in your browser, using your existing sessions.

Tab Management

ToolDescription
browser_list_tabsList all open browser tabs with ID, title, URL, and active status.
browser_open_tabOpen a new browser tab with a specified URL.
browser_close_tabClose a browser tab by its tab ID.
browser_navigate_tabNavigate an existing tab to a new URL.
browser_focus_tabFocus a tab by making it active and bringing the window to the foreground. Useful for bringing a tab to the foreground for visual inspection.
browser_get_tab_infoGet detailed information about a tab: loading status, URL, title, favicon, active/incognito status.

Content Retrieval

ToolDescription
browser_get_tab_contentExtract visible text content from a page or specific element. Supports a CSS selector and configurable max length (default 50,000 chars).
browser_get_page_htmlExtract raw HTML (outerHTML) from a page or specific element. Useful for DOM inspection, finding data attributes, and embedded JSON. Configurable max length (default 200,000 chars).
browser_execute_scriptExecute arbitrary JavaScript in a tab's MAIN world with full DOM access. Script runs via the extension API, which is not subject to the page's Content Security Policy. Supports async code and returns JSON-serializable values.
browser_screenshot_tabCapture a screenshot of the visible tab area as a base64-encoded PNG. Auto-focuses the tab before capture.

DOM Interaction

ToolDescription
browser_click_elementClick an element matching a CSS selector. Returns the tag name and text content of the clicked element.
browser_type_textType text into an input field or textarea. Optionally clears the field first (default: true).
browser_select_optionSelect an option from a <select> dropdown by value or label.
browser_query_elementsQuery all elements matching a CSS selector. Returns tag names, text, and attributes (id, class, href, src, type, name, value, placeholder). Configurable limit (default 100).
browser_wait_for_elementWait for an element to appear in the DOM with a configurable timeout (default 10s). Optionally wait for visibility.
browser_hover_elementDispatch hover events (mouseenter, mouseover, pointermove) to trigger dropdowns, tooltips, and menus.
browser_press_keyDispatch keyboard events on a page element. Supports modifier keys (shift, ctrl, alt, meta) and standard KeyboardEvent.key values like Enter, Escape, Tab, ArrowDown.

Scroll & Dialogs

ToolDescription
browser_scrollScroll the page or a scrollable container by direction, distance, or absolute position. Use the optional container parameter (CSS selector) to scroll within a specific scrollable element instead of the page. Returns current scroll position, total scroll size, and viewport dimensions.
browser_handle_dialogHandle JavaScript dialogs (alert, confirm, prompt) that block page execution. Accepts or dismisses, with optional prompt text.

Storage & Cookies

ToolDescription
browser_get_storageRead localStorage or sessionStorage from a tab. Useful for discovering auth tokens, session data, feature flags, and app config.
browser_get_cookiesGet cookies for a URL, including HttpOnly cookies not accessible from JavaScript.
browser_set_cookieCreate or overwrite a browser cookie with full control over domain, path, secure, httpOnly, and expiration.
browser_delete_cookiesDelete a specific cookie by URL and name.

Network Capture

Network capture uses the Chrome DevTools Protocol (chrome.debugger) to intercept requests and responses.

ToolDescription
browser_enable_network_captureStart capturing network requests and responses for a tab. Captures URL, method, status, headers, request/response bodies (text-based), MIME type, and timing. One capture session per tab. Also enables console log capture. Also captures WebSocket frame payloads (sent and received) — retrieve them with browser_get_websocket_frames.
browser_get_network_requestsRetrieve captured network requests. Useful for reverse-engineering API shapes and understanding data flows. Optionally clears the buffer after reading.
browser_get_websocket_framesGet WebSocket frames captured since browser_enable_network_capture was called on this tab. Each frame includes URL, direction (sent/received), data payload, opcode, and timestamp.
browser_export_harExport captured network traffic as a HAR 1.2 JSON file. Requires an active capture session from browser_enable_network_capture. Must be called before browser_disable_network_capture, which clears the buffer.
browser_disable_network_captureStop capturing and release the Chrome DevTools Protocol debugger session.

Console Logs

Console log capture is enabled alongside network capture via browser_enable_network_capture.

ToolDescription
browser_get_console_logsGet console log messages from a tab. Requires browser_enable_network_capture to be active on the tab (the debugger captures both network requests and console output). Filter by level: log, warn, error, info, debug, or all. Optionally clears the buffer.
browser_clear_console_logsClear the console log buffer for a tab without disabling capture.

Resource Inspection

ToolDescription
browser_list_resourcesEnumerate all resources loaded by a page (scripts, stylesheets, images, fonts, XHR, Fetch, WebSocket, etc.) via Chrome DevTools Protocol. Filter by resource type.
browser_get_resource_contentRead content of a specific resource by URL from the browser cache (no re-fetch). Returns text as a string or binary as base64. Configurable max length (default 500,000 chars). Useful for reading JavaScript source to understand API patterns and endpoints.

Extension Diagnostics

These tools control and diagnose the OpenTabs Chrome extension itself. They use the extension_ prefix instead of browser_.

ToolDescription
extension_reloadReload the Chrome extension. The extension briefly disconnects and automatically reconnects.
extension_get_stateGet the complete internal state of the extension: WebSocket connection status, all plugins with tab states, active network captures, offscreen document status.
extension_get_logsRetrieve internal logs from the background script and offscreen document. Filter by level and source.
extension_get_side_panelGet the side panel's React state and rendered HTML, or {open: false} if the panel is not open.
extension_check_adapterCheck adapter injection status for a plugin across all matching tabs. Reports adapter presence, hash validity, isReady() result, and tool names per tab.
extension_force_reconnectForce a WebSocket disconnect and immediate reconnection without reloading the full extension.

Site Analysis

ToolDescription
plugin_analyze_siteComprehensively analyze a web page to produce actionable intelligence for building OpenTabs plugins. Opens the URL, captures network traffic, detects auth methods (cookies, JWT, Bearer, API keys, CSRF), classifies API endpoints by protocol (REST, GraphQL, gRPC-Web, JSON-RPC, tRPC, WebSocket, SSE), identifies frontend frameworks with SPA/SSR flags, scans globals, forms, and storage keys, and generates concrete tool suggestions. Input: { url, waitSeconds? }waitSeconds defaults to 5, max 25.
plugin_list_tabsList open browser tabs that match a plugin's URL patterns, with per-tab readiness status. Returns tab IDs, URLs, titles, and readiness for each matching tab. Use this to discover available tabs before targeting a specific one with the tabId parameter on plugin tools. When called without a plugin argument, returns tabs for all plugins.

Summary

CategoryCountPrefix
Tab Management6browser_
Content Retrieval4browser_
DOM Interaction7browser_
Scroll & Dialogs2browser_
Storage & Cookies4browser_
Network Capture5browser_
Console Logs2browser_
Resource Inspection2browser_
Site Analysis2plugin_
Extension Diagnostics6extension_
Total40

Last Updated: 10 Mar, 2026