io.github.microsoft/playwright-mcp · version 0.0.84 · 9,225,544 weekly npm downloads · audited 2026-11-03
Notes
No hidden-instruction or invisible-character findings in any tool, prompt, or resource description.
Checks the directory's published tool requirements that are visible from tools/list. Passing them does not guarantee acceptance.
browser_run_code_unsafebrowser_navigate, browser_navigate_back, browser_network_requestbrowser_dropNot a vulnerability by itself. It tells you what an injected prompt could ask this server to do, so you can decide which tools need approval.
| Name | Title | Hint | Description |
|---|---|---|---|
browser_close | Close browser | destructive | Close the page |
browser_resize | Resize browser window | destructive | Resize the browser window |
browser_console_messages | Get console messages | read-only | Returns all console messages |
browser_handle_dialog | Handle a dialog | destructive | Handle a dialog |
browser_emulate_media | Emulate media features | destructive | Emulate CSS media features for the page, for example switch between the light and dark color scheme. Omitted parameters are left unchanged; null clears an override. |
browser_evaluate | Evaluate JavaScript | destructive | Evaluate JavaScript expression on page or element |
browser_file_upload | Upload files | destructive | Upload one or multiple files |
browser_drop | Drop files or data onto an element | destructive | Drop files or MIME-typed data onto an element, as if dragged from outside the page. At least one of "paths" or "data" must be provided. |
browser_find | Find in page snapshot | read-only | Search the accessibility snapshot of the current page for text or a regular expression. Returns matching snapshot nodes with a few lines of surrounding context (like search snippets), each shown under its path from the r… |
browser_fill_form | Fill form | destructive | Fill multiple form fields |
browser_press_key | Press a key | destructive | Press a key on the keyboard |
browser_type | Type text | destructive | Type text into editable element |
browser_navigate | Navigate to a URL | destructive | Navigate to a URL |
browser_navigate_back | Go back | destructive | Go back to the previous page in the history |
browser_network_requests | List network requests | read-only | Returns a numbered list of network requests since loading the page. Use browser_network_request with the number to get full details. |
browser_network_request | Show network request details | read-only | Returns full details (headers and body) of a single network request, or a single part if `part` is set. Use the number from browser_network_requests. |
browser_run_code_unsafe | Run Playwright code (unsafe) | destructive | Run a Playwright code snippet. Unsafe: executes arbitrary JavaScript in the Playwright server process and is RCE-equivalent. |
browser_take_screenshot | Take a screenshot | read-only | Take a screenshot of the current page. You can't perform actions based on the screenshot, use browser_snapshot for actions. |
browser_snapshot | Page snapshot | read-only | Capture accessibility snapshot of the current page, this is better than screenshot |
browser_click | Click | destructive | Perform click on a web page |
browser_drag | Drag mouse | destructive | Perform drag and drop between two elements |
browser_hover | Hover mouse | destructive | Hover over element on page |
browser_select_option | Select option | destructive | Select an option in a dropdown |
browser_tabs | Manage tabs | destructive | List, create, close, or select a browser tab. |
browser_wait_for | Wait for | read-only | Wait for text to appear or disappear or a specified time to pass. When both text and textGone are provided, waits for the first one to happen |
npx mcpvetter scan --liveAdd this to a README:
[](https://mcpvetter.com/servers/playwright-mcp)Get the MCPVetter verified badge, a re-audit within 24 hours of every npm release, and an email whenever tools, findings, or Claude directory readiness change. $29 per server per month. You prove ownership first, free.