Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_session_create | Create a new browser session for observation. Sessions start in observation-only mode. Actions require explicit escalation.
Args:
name: Unique name for the session (e.g., "main", "test-session")
headless: If True, run browser without visible window
viewport_width: Browser viewport width in pixels (default: 1280)
viewport_height: Browser viewport height in pixels (default: 720)
Returns:
Confirmation message with session name and status |
| browser_session_connect | Connect to an existing browser session over CDP. Sessions start in observation-only mode. Actions require explicit escalation.
Args:
name: Unique name for the session (e.g., "main", "test-session")
cdp_url: CDP websocket URL (e.g., ws://127.0.0.1:9222/devtools/browser/...)
Returns:
Confirmation message with session name and status |
| browser_session_list | List all browser sessions with their status. Returns:
List of sessions showing name, status (active/escalated), and current URL |
| browser_session_destroy | Destroy a browser session and clean up resources. Args:
name: Name of the session to destroy
Returns:
Confirmation message |
| browser_session_escalate | Escalate a session to allow action tools (click, type, execute). WARNING: This enables side effects. Actions will be logged.
Args:
name: Name of the session to escalate
reason: Justification for why actions are needed
Returns:
Warning message and confirmation |
| browser_inspect_navigate | Navigate to a URL for observation. Navigation is considered an inspect operation because it sets up
what you want to observe.
Args:
session: Name of the browser session
url: URL to navigate to (https:// added if no protocol specified)
Returns:
The page title and final URL after navigation |
| browser_inspect_screenshot | Take a screenshot of the current page. Args:
session: Name of the browser session
full_page: If True, capture the entire scrollable page
Returns:
Base64-encoded PNG screenshot with data URI prefix |
| browser_inspect_dom | Get DOM HTML content from the page. Args:
session: Name of the browser session
selector: Optional CSS selector to get specific element's HTML
Returns:
HTML content (truncated if over 100KB) |
| browser_inspect_text | Get text content from the page (no HTML tags). Args:
session: Name of the browser session
selector: Optional CSS selector to get specific element's text
Returns:
Text content of the page or element |
| browser_inspect_console | Get captured console log messages from the page. Args:
session: Name of the browser session
Returns:
JSON array of console entries with level, message, and timestamp |
| browser_inspect_network | Get captured network requests from the page. Args:
session: Name of the browser session
Returns:
JSON array of network entries with method, url, status, and timestamp |
| browser_inspect_events | Get the event log for a session. The event log is append-only and records all tool calls made to this session.
Args:
session: Name of the browser session
Returns:
JSON array of all events in chronological order |
| browser_act_click | Click an element on the page. REQUIRES: Session must be escalated first via browser_session_escalate.
Args:
session: Name of the browser session
selector: CSS selector for the element to click
reason: Justification for why this click is necessary
Returns:
Observed changes after the click (NOT success/failure) |
| browser_act_type | Type text into an input element. REQUIRES: Session must be escalated first via browser_session_escalate.
Args:
session: Name of the browser session
selector: CSS selector for the input element
text: Text to type
reason: Justification for why this input is necessary
clear_first: If True, clear the input before typing
Returns:
Observed changes after typing (NOT success/failure) |
| browser_act_execute | Execute JavaScript in the browser context. REQUIRES: Session must be escalated first via browser_session_escalate.
Args:
session: Name of the browser session
script: JavaScript code to execute
reason: Justification for why this script is necessary
Returns:
Observed changes after execution (NOT success/failure) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |