playwright-mcp-tabbed
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_tabsA | List, create, or close browser tabs. |
| browser_context_infoA | Describe the shared browser context: all tabs, origins, and a note that cookies/storage are per-origin (localhost vs 127.0.0.1 are different). |
| browser_navigateB | Navigate to a URL in the specified tab. Relative paths like /foo require base_url or PLAYWRIGHT_MCP_BASE_URL. |
| browser_snapshotA | Accessibility snapshot (structured DOM text). Use root_selector to narrow scope; max_chars avoids huge MCP payloads. |
| browser_take_screenshotB | Take a screenshot of the specified tab. Returns a base64 PNG image. |
| browser_run_codeB | Run a Playwright JavaScript function against the specified tab. |
| browser_clickA | Click an element. Use force:true to bypass actionability checks when overlays block; trial:true to verify hit target without clicking. |
| browser_typeB | Type text into a focused or selected input element. |
| browser_fill_formB | Fill multiple form fields at once. |
| browser_file_uploadC | Upload one or multiple files in the specified tab. |
| browser_hoverC | Hover over an element. |
| browser_select_optionB | Select an option in a element. |
| browser_press_keyB | Press a keyboard key. |
| browser_wait_forB | Wait for a selector to appear or disappear, or wait for navigation. |
| browser_evaluateC | Execute JavaScript in the page context and return the result. |
| browser_navigate_backA | Navigate back in history. |
| browser_network_requestsB | List recent network requests captured for this tab (since tracking started). |
| browser_console_messagesB | Get console messages (log, warn, error) from the page. |
| browser_resizeC | Resize the browser viewport. |
| browser_dragB | Drag from one element to another. |
| browser_handle_dialogA | Set up handling for the next browser dialog (alert/confirm/prompt). |
| browser_closeA | Close the browser entirely and clean up all resources. |
| browser_installB | Install Chromium used by this MCP server. |
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 actions, but browser_run_code and browser_evaluate overlap heavily as JavaScript execution tools. browser_tabs bundles list/create/close tab operations while browser_context_info also describes tabs, adding some boundary ambiguity.
The browser_ prefix is used consistently and most tools follow a verb_object style. The main deviations are noun-style names like browser_tabs, browser_context_info, browser_network_requests, and browser_console_messages, plus loose forms like browser_wait_for.
23 tools is on the heavy side for an MCP server, though the browser automation scope justifies much of the surface. The count could be tightened by merging or removing the overlapping JS execution tools.
The toolset covers navigation, interaction, forms, uploads, drag-and-drop, dialogs, waiting, screenshots, accessibility snapshots, console logs, network requests, tabs, and browser lifecycle. Minor gaps like cookie/storage management and an explicit reload/new-page tool exist, but core automation workflows have no dead ends.