browser-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | 监听地址(SSE 模式),默认 0.0.0.0 | 0.0.0.0 |
| MCP_PORT | No | 监听端口(SSE 模式),默认 8000 | 8000 |
| MCP_LOG_LEVEL | No | 日志级别,默认 INFO | INFO |
| MCP_TRANSPORT | No | 传输模式:stdio 或 sse,默认值本地为 stdio,Docker 为 sse | stdio |
| MCP_CDP_ENDPOINT | No | CDP 地址,默认 auto 自动探测 | auto |
| MCP_STORAGE_PATH | No | 会话存储路径,默认本地 ./storage,Docker /data/storage | ./storage |
| MCP_DEFAULT_TIMEOUT | No | 默认超时时间(秒),默认 120 | 120 |
| MCP_DEFAULT_MAX_TOKENS | No | 默认最大 Token 数,默认 8000 | 8000 |
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
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_new_tabB | Open a new browser tab. Returns the new tab's targetId. |
| browser_gotoB | Navigate the current tab to |
| browser_page_infoA | Return current tab metadata: url, title, viewport and scroll sizes. |
| browser_clickB | Click at screen coordinates (x, y). |
| browser_typeC | Insert text into the focused element. |
| browser_fillC | Fill an input matched by |
| browser_pressC | Press a key. |
| browser_scrollA | Scroll the wheel at (x, y) by |
| browser_screenshotB | Capture a PNG screenshot. If |
| browser_list_tabsA | List open page tabs. |
| browser_current_tabA | Return the active tab's targetId, url and title. |
| browser_switch_tabC | Switch to tab by |
| browser_close_tabA | Close a tab. Without |
| browser_ensure_real_tabA | Switch to a real (non-internal) tab if the current one is chrome:// or stale. |
| browser_waitB | Wait for |
| browser_wait_for_loadC | Wait until the current tab's readyState is 'complete'. |
| browser_wait_for_elementB | Wait for an element matching |
| browser_jsA | Evaluate a JavaScript expression in the current tab (or an iframe |
| browser_cdpB | Call a raw Chrome DevTools Protocol method. |
| browser_upload_fileC | Set files on a file input matched by |
| browser_http_getA | HTTP GET |
| browser_start_recordingC | Start recording actions to a local directory. |
| browser_stop_recordingA | Stop the active recording and return its directory. |
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 23 tools
Most tools target distinct browser concerns—tabs, navigation, input, waiting, and screenshots—so an agent can usually pick the right one. The main overlaps are browser_type versus browser_fill for text entry and browser_current_tab versus browser_page_info for tab metadata, but their descriptions mostly clarify the intended use.
All tools share the browser_ prefix and use lowercase snake_case, creating a recognizable family pattern. However, not all names follow the verb_noun convention, with noun-phrase names like browser_page_info and browser_current_tab and bare abbreviations like browser_js and browser_cdp.
At 23 tools, the surface sits in the 16-25 range that feels heavy for an MCP server. Most tools earn their place, but a few niche or parallel helpers such as browser_ensure_real_tab, browser_http_get, and the recording pair could be considered auxiliary.
The toolset covers tab management, navigation, input actions, waiting, screenshots, uploads, JavaScript evaluation, and raw CDP access. Common browser operations like back, forward, reload, hover, and select are missing but can be worked around via browser_js or browser_cdp, so there are no blocking dead ends.