Playwright MCP Server 🎭

Playwright MCP Server 🎭

By executeautomation GitHub

Playwright Model Context Protocol Server - Tool to automate Browsers and APIs in Claude Desktop, Cline, Cursor IDE and More 🔌

Overview

what is Playwright MCP Server?

Playwright MCP Server is a Model Context Protocol server that integrates Playwright for browser automation, allowing LLMs to interact with web pages, capture screenshots, and execute JavaScript inside a real browser environment.

how to use Playwright MCP Server?

To use Playwright MCP Server, install the package via npm or mcp-get, and configure it with your desired settings to begin automating web interactions.

key features of Playwright MCP Server?

  • Automated navigation to websites
  • Screenshot capture of entire pages or specific elements
  • Executing JavaScript code in the browser context
  • Interaction with web elements through clicking, hovering, and filling forms
  • Access to browser console logs for debugging purposes

use cases of Playwright MCP Server?

  1. Automating web testing for applications
  2. Monitoring browser logs and capturing issues in real-time
  3. Generating screenshots for documentation or reporting purposes
  4. Executing complex JavaScript functions to manipulate page behavior

FAQ from Playwright MCP Server?

  • How do I install Playwright MCP Server?

You can install it using npm with the command npm install -g @executeautomation/playwright-mcp-server or through mcp-get.

  • What is the benefit of using Playwright MCP Server?

It facilitates automation tasks by allowing LLMs to control browsers programmatically, useful for testing, scraping, and interactive automation applications.

  • Can I build the server from source?

Yes! You can clone the repository and follow the build instructions provided in the documentation.

Content

Playwright MCP Server 🎭

smithery badge

A Model Context Protocol server that provides browser automation capabilities using Playwright. This server enables LLMs to interact with web pages, take screenshots, generate test code, web scraps the page and execute JavaScript in a real browser environment.

mcp-playwright MCP server

Screenshot

Playwright + Claude

Documentation | API reference

Installation

You can install the package using either npm, mcp-get, or Smithery:

Using npm:

npm install -g @executeautomation/playwright-mcp-server

Using mcp-get:

npx @michaellatman/mcp-get@latest install @executeautomation/playwright-mcp-server

Using Smithery

To install Playwright MCP for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @executeautomation/playwright-mcp-server --client claude

Installation in VS Code

Install the Playwright MCP server in VS Code using one of these buttons:

Install in VS Code Insiders

Alternatively, you can install the Playwright MCP server using the VS Code CLI:

# For VS Code
code --add-mcp '{"name":"playwright","command":"npx","args":["@executeautomation/playwright-mcp-server"]}'
# For VS Code Insiders
code-insiders --add-mcp '{"name":"playwright","command":"npx","args":["@executeautomation/playwright-mcp-server"]}'

After installation, the ExecuteAutomation Playwright MCP server will be available for use with your GitHub Copilot agent in VS Code.

Configuration to use Playwright Server

Here's the Claude Desktop configuration to use the Playwright server:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["-y", "@executeautomation/playwright-mcp-server"]
    }
  }
}

Testing

This project uses Jest for testing. The tests are located in the src/__tests__ directory.

Running Tests

You can run the tests using one of the following commands:

# Run tests using the custom script (with coverage)
node run-tests.cjs

# Run tests using npm scripts
npm test           # Run tests without coverage
npm run test:coverage  # Run tests with coverage
npm run test:custom    # Run tests with custom script (same as node run-tests.cjs)

The test coverage report will be generated in the coverage directory.

Star History

Star History Chart

No tools information available.
No content found.