Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
START_URL | No | Open this URL on start | |
FIREFOX_HEADLESS | No | Run without UI | |
ACCEPT_INSECURE_CERTS | No | Ignore TLS errors |
Schema
Prompts
Interactive templates invoked by user choice
Name | Description |
---|---|
No prompts |
Resources
Contextual data attached and managed by the client
Name | Description |
---|---|
No resources |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
list_pages | List all open tabs with index, title, and URL. The currently selected tab is marked. Use the index with select_page. |
new_page | Open a new tab and navigate it to the provided URL. Returns the new tab index in the response. |
navigate_page | Navigate the currently selected tab to the provided URL. |
select_page | Select the active tab by index (preferred), or by matching URL/title. Index takes precedence when multiple parameters are provided. |
close_page | Close the tab at the given index. Use list_pages to find valid indices. |
list_console_messages | List console messages for the selected tab since the last navigation. Use filters (level, limit, sinceMs, textContains, source) to focus on recent and relevant logs. |
clear_console_messages | Clear the collected console messages. TIP: Clear before a new measurement to keep output focused. |
list_network_requests | List recent network requests across all tabs. Network capture is always on. Use filters (limit, sinceMs, urlContains, method, status, resourceType) and detail (summary|min|full) to control output. Each entry includes a stable id for use with get_network_request. |
get_network_request | Get detailed information about a network request by id (recommended). URL lookup is available as a fallback but may match multiple requests. |
take_snapshot | Capture a textual page snapshot with stable UIDs for elements. Always take a fresh snapshot after navigation or major DOM changes. TIP: Use the UIDs with click_by_uid / fill_by_uid / hover_by_uid. The output may be truncated for readability. |
resolve_uid_to_selector | Resolve a UID to a CSS selector (debugging aid). Fails on stale UIDs—take a fresh snapshot first. |
clear_snapshot | Clear the snapshot/UID cache. Usually not needed, as navigation invalidates snapshots automatically. |
click_by_uid | Click an element identified by its UID. Supports double-click via dblClick=true. TIP: Take a fresh snapshot if the UID becomes stale. |
hover_by_uid | Hover over an element identified by its UID. TIP: Take a fresh snapshot if the UID becomes stale. |
fill_by_uid | Fill a text input or textarea identified by its UID. Keep values short and safe. TIP: Take a fresh snapshot if the UID becomes stale. |
drag_by_uid_to_uid | Simulate HTML5 drag-and-drop from one UID to another using JS drag events. May not work with all custom libraries. |
fill_form_by_uid | Fill multiple form fields in one call using an array of {uid, value} pairs. |
upload_file_by_uid | Upload a file into an element identified by its UID. The file path must be accessible to the server. |
screenshot_page | Capture a PNG screenshot of the current page and return it as a base64 string (without data: prefix). TIP: Use for visual verification rather than structural inspection. |
screenshot_by_uid | Capture a PNG screenshot of a specific element by UID and return it as a base64 string (without data: prefix). TIP: Take a fresh snapshot if the UID is stale. |
accept_dialog | Accept the active browser dialog (alert/confirm/prompt). For prompts, you may provide promptText. Returns an error if no dialog is open. |
dismiss_dialog | Dismiss the active browser dialog (alert/confirm/prompt). Returns an error if no dialog is open. |
navigate_history | Navigate the selected tab's history back or forward. NOTE: After navigation, UIDs from previous snapshots are stale—take a new snapshot before UID-based actions. |
set_viewport_size | Set the browser viewport size (width x height in pixels). In some modes (e.g., headless), the actual size may vary slightly. |