BrowserPilot 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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_pagesA | List all open browser tabs/pages |
| navigate_pageC | Navigate to a URL in the browser |
| take_screenshotA | Take a PNG screenshot of the current page. By default captures the visible viewport; with fullPage=true, uses CDP Page.getLayoutMetrics and Page.captureScreenshot to capture the full page. |
| clickC | Click an element on the page |
| type_textC | Type text into an input field |
| fill_formB | Fill multiple form fields at once |
| press_keyC | Press a keyboard key |
| hoverC | Hover over an element |
| dragC | Drag from one point to another |
| wait_forA | Wait for a visible element matching a CSS selector. JavaScript conditions are not supported; use evaluate_script explicitly when script execution is intended. |
| evaluate_scriptA | Evaluate JavaScript on the page via chrome.scripting.executeScript. The script runs with extension execution semantics and must return a JSON-serializable value; returnByValue is accepted for API compatibility but the extension always returns the serialized result value. |
| get_console_messageA | Get a captured console message by ID. Console events are captured from CDP Runtime.consoleAPICalled, Log.entryAdded, and content-script interception. |
| list_console_messagesA | List captured console messages from CDP Runtime.consoleAPICalled, Log.entryAdded, and content-script interception. |
| get_network_requestA | Get captured network request metadata by ID. Captures CDP Network request/response lifecycle metadata only; response bodies are not included. |
| list_network_requestsA | List captured network request metadata from CDP Network events. Returns metadata such as URL, method, headers, status, mime type, timing/status fields, and encoded data length; response bodies are not included. |
| handle_dialogC | Handle a JavaScript dialog (alert, confirm, prompt) |
| resize_pageB | Resize the browser window |
| new_pageB | Open a new browser tab |
| close_pageA | Low-level tab close tool kept for compatibility; refuses to close the last browser window. Prefer close_managed_tabs for BrowserPilot-managed lifecycle cleanup. |
| health_checkA | 返回 MCP 服务、浏览器扩展、原生主机、浏览器访问状态和下一步操作的结构化诊断信息。Use this to check whether the browser automation bridge is ready. |
| ensure_active_tabA | 确保存在一个可用且激活的浏览器 tab。如果当前窗口已有 active tab 则直接复用;如果没有任何 tab 但浏览器进程仍在,则新建 tab;如果连窗口都没有,会按 platform 启动 Chrome(macOS: open -a Google Chrome;Linux: xdg-open;Windows: rundll32.exe url.dll,FileProtocolHandler)。本工具不会关 Chrome,不会结束浏览器进程;启动浏览器仅在显式调用本工具时发生。 |
| close_managed_tabsA | 关闭 BrowserPilot MCP 自身打开/使用过的 tab。默认只关参数里给定的 tabId(如果属于受管集合);传 allManaged=true 时关闭所有受管 tab。永远不关 Chrome 浏览器本身;如果关闭全部受管 tab 会导致最后一个窗口被清空,工具会改为仅从受管集合移除而不调用 chrome.tabs.remove。 |
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 22 tools
Most tools have clearly distinct purposes, but close_page and close_managed_tabs overlap in function, and new_page vs ensure_active_tab could cause selection ambiguity. Descriptions help mitigate confusion.
The majority follow a clear verb_noun pattern (list_pages, navigate_page, type_text). However, a few single-word verbs (click, hover, drag) and health_check break the pattern, creating minor inconsistency.
At 22 tools, the surface is on the heavy side and includes some redundancy (close_page vs close_managed_tabs). The browser automation domain is broad, so most tools are justified, but a few could be consolidated.
Core browser automation operations are covered: navigation, tab management, interaction, screenshots, network/console inspection, and dialog handling. Minor gaps like direct content extraction exist but can be addressed via evaluate_script.