@playwright/mcp

Playwright MCP server

otherother
26,060 stars🍴 2,114 forks📦 v0.0.56📄 Apache-2.0

🔌 Transport

Standard I/O

📦 Installation

Docker

Claude Desktop Configuration

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "-playwright-mcp": {
      "args": [
        "index.js"
      ],
      "command": "node"
    }
  }
}

🛠️ Available Tools (33)

endRef

(string): Exact target element reference from the page snapshot

button

(string, optional): Button to click, defaults to left

Tools

generated by update-readme.js -->

doubleClick

(boolean, optional): Whether to perform a double click instead of a single click

startRef

(string): Exact source element reference from the page snapshot

fullPage

(boolean, optional): When true, takes a screenshot of the full scrollable page, instead of the currently visible viewport. Cannot be used with element screenshots.

values

(array): Array of values to select in the dropdown. This can be a single value or multiple values.

submit

(boolean, optional): Whether to submit entered text (press Enter after)

textGone

(string, optional): The text to wait for to disappear

Title

Stop tracing

filename

(string, optional): File name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified. Prefer relative file names to stay within the output directory.

height

(number): Height of the browser window

element

(string): Human-readable element description

NOTE

This has been generated via update-readme.js -->

modifiers

(array, optional): Modifier keys to press

text

(string, optional): The text to wait for

promptText

(string, optional): The text of the prompt in case of a prompt dialog.

slowly

(boolean, optional): Whether to type one character at a time. Useful for triggering key handlers in the page. By default entire text is filled in at once.

endElement

(string): Human-readable target element description used to obtain the permission to interact with the element

index

(number, optional): Tab index, used for close/select. If omitted for close, current tab is closed.

endX

(number): End X coordinate

endY

(number): End Y coordinate

x

(number): X coordinate

y

(number): Y coordinate

accessibleName

(string): ACCESSIBLE_NAME of the element. Can be found in the snapshot like this: `- role "{ACCESSIBLE_NAME}"`

ref

(string): Exact target element reference that points to the element

Description

Stop trace recording

End

of tools generated section -->

startX

(number): Start X coordinate

startY

(number): Start Y coordinate

items

(array): Items to verify

value

(string): Value to verify. For checkbox, use "true" or "false".

Parameters

None

Capabilities

33
Tools
0
Resources
0
Prompts