Playwright Browser MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Log level: debug, info, warn, error. | |
| CONFIG_PATH | No | Path to configuration file. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser.create_sessionA | Create a new browser session. Optionally provide startUrl or authContextId to load saved login state. |
| browser.get_sessionB | Get metadata for a browser session by sessionId. |
| browser.list_sessionsA | List all active browser sessions. |
| browser.close_sessionB | Close a browser session by sessionId. |
| browser.navigateC | Navigate the browser session to a URL. |
| browser.clickC | Click an element by selector. |
| browser.fillC | Fill an input by selector. Value is not logged. |
| browser.select_optionC | Select option(s) in a select element. |
| browser.waitC | Wait for a number of milliseconds. |
| browser.scrollC | Scroll the page or an element into view. |
| browser.take_screenshotC | Take a screenshot of the current page. |
| browser.handle_dialogA | Set how the next native dialog (alert/confirm/prompt) will be handled. Call before the action that triggers the dialog. |
| browser.snapshotB | Get a structured snapshot of the current page for LLM consumption. |
| browser.extract_textA | Extract visible text from the page or a selector. |
| browser.extract_tableC | Extract table data from the page. |
| browser.extract_formC | Extract form field schema from the page. |
| browser.get_interactive_elementsB | Get summary of interactive elements (buttons, links, inputs) on the page. |
| browser.generate_playwright_scriptC | Generate a Playwright test script from current session. |
| browser.generate_page_objectB | Generate a page object class from current page. |
| browser.generate_data_schemaA | Generate TypeScript/Zod/JSON schema from latest table or form extraction. |
| browser.export_extraction_resultA | Export latest table/form/text extraction to a file. |
| browser.pause_for_humanA | Pause the session and wait for human (e.g. login, MFA, captcha). |
| browser.resume_sessionA | Resume a session after human has completed the required action. |
| browser.get_human_wait_stateB | Check if a session is waiting for human action. |
| browser.save_auth_contextA | Save current session storage state (cookies etc.) as a named auth context for reuse. |
| browser.load_auth_contextC | Load a saved auth context into the current session. |
| browser.list_auth_contextsA | List all saved auth contexts. |
| browser.delete_auth_contextA | Delete a saved auth context and its storage state file. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| sessions | |
| auth-contexts | |
| latest-snapshot | |
| latest-extraction | |
| latest-logs |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DailyNoBug/PlaywrightBrowserMCPServer'
If you have feedback or need assistance with the MCP directory API, please join our Discord server