grok-browser-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_statusA | Check whether Brave is running and whether Chrome DevTools Protocol is reachable on 127.0.0.1:9222. |
| browser_prepareA | Write Brave CDP flags and optionally restart Brave so Playwright can attach. Restarts the user's Brave (tabs usually restore). Use restart=true when CDP is down. |
| browser_tabsB | List open Brave tabs (via CDP). Optionally focus one by index, URL substring, or title substring. |
| browser_snapshotA | Accessibility / clickable-element snapshot of the current tab, with refs (e1, e2, …) for browser_click. Filter with query for large lists (e.g. iCloud contacts). |
| browser_findA | Find visible clickable elements whose text contains query. Returns refs for browser_click. |
| browser_screenshotB | JPEG screenshot of the current tab. Returns an image plus a saved file path. |
| browser_desktop_screenshotA | Screenshot the GNOME desktop (Brave window as the user sees it), even if CDP is down. Uses org.gnome.Shell.Screenshot. |
| browser_clickB | Click an element. Prefer ref from the latest browser_snapshot / browser_find. Falls back to CSS selector or visible text. |
| browser_typeC | Type into a field (ref/selector) or the focused element. |
| browser_pressB | Press a key (Playwright key name), e.g. Enter, Tab, Escape, Control+a, ArrowDown. |
| browser_evaluateC | Run JavaScript in the current tab (page.evaluate). Return value is JSON-stringified. Use for iCloud DOM inspection. |
| browser_navigateC | Navigate the current tab to a URL. |
| browser_scrollC | Scroll the current tab with a mouse wheel delta. |
| browser_waitC | Wait for a number of milliseconds, or until text/selector appears. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
Most tools have clearly distinct actions and targets, but browser_snapshot and browser_find overlap because both return clickable-element refs, and browser_status/browser_prepare both concern Brave/CDP availability. The descriptions help mitigate this, so boundaries are mostly clear.
All tools use the browser_ prefix followed by snake_case verbs or nouns, giving a highly predictable and readable pattern. browser_desktop_screenshot is slightly longer but still consistent with the schema.
With 14 tools, the set sits comfortably in the expected range for a browser automation server. Each tool maps to a recognizable action or control, and the count does not feel bloated or thin.
The surface covers navigation, input, scrolling, waiting, JavaScript evaluation, snapshots, screenshots, tab listing/focusing, and CDP setup. Minor gaps exist around explicit new/close tab, back/forward/reload, and file upload or select-option handling, but browser_evaluate and browser_navigate can often work around them.