Playwriter Browser MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_PORT | No | MCP HTTP 服务端口 | 3280 |
| OUTPUT_DIR | No | 截图、PDF、trace 文件输出目录 | ./output |
| PLAYWRITER_RELAY_HOST | No | Relay 地址 | 127.0.0.1 |
| PLAYWRITER_RELAY_PORT | No | Playwriter WebSocket relay 端口 | 19988 |
| PLAYWRITER_EXTENSION_ID | No | 多 Profile 时指定连接哪个扩展 | (自动检测) |
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_navigateB | Navigate to a URL |
| browser_navigate_backB | Go back to the previous page in the history |
| browser_snapshotA | Capture accessibility snapshot of the current page. Returns a text representation of the page with [ref] markers for interactive elements. Use these refs with other tools like browser_click. |
| browser_take_screenshotC | Take a screenshot of the current page |
| browser_clickA | Perform click on a web page element identified by its ref from a snapshot |
| browser_typeB | Type text into an editable element identified by ref |
| browser_press_keyB | Press a key on the keyboard. Use key names like 'ArrowLeft', 'Enter', 'Escape', 'a', 'Control+c', etc. |
| browser_hoverC | Hover over an element on the page |
| browser_dragC | Perform drag and drop between two elements |
| browser_select_optionB | Select an option in a dropdown |
| browser_fill_formB | Fill multiple form fields at once |
| browser_tabsB | List, create, close, or select a browser tab |
| browser_closeC | Close the current page |
| browser_wait_forC | Wait for text to appear or disappear, or wait for a specified time |
| browser_resizeB | Resize the browser window |
| browser_evaluateB | Evaluate JavaScript expression on the page or on a specific element |
| browser_run_codeA | Run a Playwright code snippet. The function receives |
| browser_console_messagesA | Returns console messages captured from the page. Each level includes more severe levels (error < warning < info < debug). |
| browser_network_requestsB | Returns network requests captured since page load |
| browser_file_uploadB | Upload one or multiple files to a file input element |
| browser_handle_dialogA | Handle a JavaScript dialog (alert, confirm, prompt). Dialogs are queued as they appear. This tool handles the most recent unhandled dialog. |
| browser_generate_locatorA | Generate a Playwright locator for an element (useful for writing tests) |
| browser_verify_element_visibleC | Verify an element is visible on the page |
| browser_verify_text_visibleC | Verify text is visible on the page |
| browser_verify_list_visibleB | Verify a list with specific items is visible on the page |
| browser_verify_valueC | Verify an element's value |
| browser_pdf_saveB | Save the current page as a PDF file |
| browser_start_tracingA | Start recording a Playwright trace. Stop with browser_stop_tracing to save the trace file. |
| browser_stop_tracingB | Stop trace recording and save the trace file |
| browser_resetA | Reset the browser connection. Use when tools fail with connection errors, page closed errors, or the browser becomes unresponsive. |
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 30 tools
Most tools have clear distinct purposes, but browser_evaluate and browser_run_code overlap in executing JavaScript, and some verification tools could be merged. Descriptions help differentiate.
All tools follow a consistent 'browser_verb_noun' pattern with underscores, making naming predictable and readable.
30 tools is slightly high, but the domain of browser automation justifies the breadth. Some tools could be combined (e.g., verification tools) without loss.
Covers navigation, interaction, form handling, dialogs, screenshots, PDF, tracing, network, console, tabs, JS execution, and verification. Missing cookie/storage management but core workflows are fully covered.