open-browser-control
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": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_screenshotA | Take a screenshot of the current browser page. Returns the file path to a saved PNG image. Screenshots are slow and heavy — prefer browser_get_dom and browser_get_page_info to understand page content and structure. Use screenshots only when you need to verify visual layout, debug rendering issues, or when DOM inspection is insufficient (e.g. canvas, images, charts). The response includes a |
| browser_clickC | Click on a page element. Specify by CSS selector, visible text, or x/y coordinates. |
| browser_typeC | Type text into the focused element or a specific element. |
| browser_navigateB | Navigate to a URL in the current tab. |
| browser_scrollB | Scroll the page in a direction. |
| browser_get_domA | Get the page DOM structure. Returns interactive elements with their text, roles, and positions. This is the primary way to understand what is on the page — use it to find elements to click, read text content, and understand page layout. Faster and more detailed than screenshots. |
| browser_get_page_infoA | Get current page metadata: URL, title, dimensions, scroll position. Use this to quickly check where you are and whether navigation succeeded — much faster than a screenshot. |
| browser_waitB | Wait for a condition: element to appear, text to show, or fixed time. |
| browser_keypressC | Press a keyboard key, optionally with modifiers. |
| browser_execute_jsA | Execute JavaScript in the page context and return the result. Useful for extracting specific data, reading computed styles, or interacting with page APIs — often more precise than screenshots for getting exact values. |
| browser_request_userA | Ask the user to perform an action (e.g., sign in, solve CAPTCHA). AI pauses until user signals done. |
| browser_new_tabB | Open a new browser tab. |
| browser_list_tabsA | List all open browser tabs in this session. |
| browser_switch_tabA | Switch to a specific browser tab by its ID. |
| browser_hoverC | Move mouse over an element to trigger hover effects. |
| browser_select_optionB | Select an option from a dropdown element. |
| browser_new_tab_groupA | Create a new named tab group for a task. Use this to organize browsing by task — each group gets a label visible in Chrome. The new group becomes the active group; new tabs and navigations happen inside it. |
| browser_set_session_nameA | Set a descriptive name for this browser session. The name appears on the Chrome tab group so the user can identify what task this session is working on. Call this early with a short task summary (e.g. "Search flights to Paris", "Debug login page"). |
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 18 tools
Each tool targets a distinct action: clicking, typing, scrolling, DOM inspection, screenshot, tab management, JS execution, user requests, etc. Descriptions clearly differentiate between DOM-based and screenshot-based understanding, and between navigation and interaction primitives.
All tools follow the consistent snake_case pattern with the verb_noun structure and browser_ prefix. There is no mixing of conventions, making names predictable and easy to infer.
18 tools is well-scoped for a browser control server. It covers navigation, interaction, DOM reading, tab management, and special actions like user requests, without being bloated or too sparse.
Obvious gaps exist: no tool to close a tab, no back/forward navigation, and no cookie or storage management. These are standard browser automation operations whose absence will cause agent failures.