Skip to main content

Playwright wrapper for MCP

Project description

playwright-mcp

Playwright wrapper for MCP (Model Context Protocol). This server enables LLM-powered clients to control a browser for automation tasks.

Components

Resources

The server exposes resources for accessing browser screenshots:

  • Screenshot resource URI: screenshot://{page_id}
  • Screenshot resources are automatically available for all open pages

Prompts

The server provides a prompt to help clients interpret web pages:

  • interpret-page: Analyzes the current web page content and structure
    • Optional page_id argument to select which page to interpret
    • Optional focus argument to focus on specific aspects (full, forms, navigation, text)
    • Returns both text analysis and a screenshot of the page

Tools

The server implements a comprehensive set of browser automation tools:

  • Browser navigation

    • navigate: Go to a specific URL
    • new_page: Create a new browser page with a specific ID
    • switch_page: Switch to a different browser page
    • get_pages: List all available browser pages
  • Page interaction

    • click: Click on an element using CSS selector
    • type: Type text into an input element
    • wait_for_selector: Wait for an element to appear on the page
  • Content extraction

    • get_text: Get text content from an element
    • get_page_content: Get the entire page HTML
    • take_screenshot: Capture visual state of the page or element

Configuration

Install Dependencies

uv add playwright
playwright install chromium

Quickstart

Install

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration
"mcpServers": {
  "playwright-mcp": {
    "command": "uv",
    "args": [
      "--directory",
      "/Users/shannon/Workspace/artivus/playwright-mcp",
      "run",
      "playwright-mcp"
    ]
  }
}
Published Servers Configuration
"mcpServers": {
  "playwright-mcp": {
    "command": "uvx",
    "args": [
      "playwright-mcp"
    ]
  }
}

Development

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile:
uv sync
  1. Build package distributions:
uv build

This will create source and wheel distributions in the dist/ directory.

  1. Publish to PyPI:
uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: --token or UV_PUBLISH_TOKEN
  • Or username/password: --username/UV_PUBLISH_USERNAME and --password/UV_PUBLISH_PASSWORD

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory /Users/shannon/Workspace/artivus/playwright-mcp run playwright-mcp

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

playwright_mcp-0.1.0.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

playwright_mcp-0.1.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file playwright_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: playwright_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 21.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.23

File hashes

Hashes for playwright_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 82dd9272399f0163db6c7e8768d9cda63163f0850f63fca3f934cf98b1d97212
MD5 54ac1da1d8abdfbfdd02d0b33aac0c11
BLAKE2b-256 21a821e97b0c6b2caa450212d2d05249690c0714db8815fd1a4c8b9cc94ad90b

See more details on using hashes here.

File details

Details for the file playwright_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for playwright_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 84839a3bc1260e1d928bf27d60d17bdf4a9f9f2c5c7022169e5de2b2c292141f
MD5 f4c83ed3e31d418048a7c8458f32b1b3
BLAKE2b-256 95efcd9c2f16def35ccdd7a215ae019a5d0be785c19785e2a51fd481feca84b0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page