Deno Playwright

by jakedahn

11 stars
375 downloads
Not rated
GitHub

About

Integrates with Playwright and Deno to enable browser automation for web navigation, interaction, and data extraction tasks.

Details

Author
jakedahn
Repository
jakedahn/deno2-playwright-mcp-server
GitHub stars
11
Downloads
375
License
MIT License
Categories
Productivity, Design, Developer Tools, AI, Knowledge Base, Automation, Infrastructure

- Browser automation using Playwright
- Take screenshots of web pages
- Execute JavaScript in a browser context
- Compilable to standalone binary (mac, linux, windows)
- No runtime dependencies after compilation

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Deno Playwright
    Command (node, npx, python, etc.) /path/to/deno2-playwright-mcp-server/playwright-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

First build a binary using one of the provided deno task commands (e.g., deno task build-mac). Then update your Claude desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json) to point to the compiled playwright-server binary. The server is invoked by Claude via the Model Context Protocol.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "deno playwright": {
            "cwd": "",
            "env": {},
            "args": [],
            "shell": false,
            "command": "/path/to/deno2-playwright-mcp-server/playwright-server"
        }
    }
}

Linux

{
    "cwd": "",
    "env": [],
    "args": [],
    "shell": false,
    "command": "/path/to/deno2-playwright-mcp-server/playwright-server"
}

Macos

{
    "cwd": "",
    "env": [],
    "args": [],
    "shell": false,
    "command": "/path/to/deno2-playwright-mcp-server/playwright-server"
}

Windows

{
    "cwd": "",
    "env": [],
    "args": [],
    "shell": false,
    "command": "/path/to/deno2-playwright-mcp-server/playwright-server"
}

Deno 2 Playwright Model Context Protocol Server Example

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

This repo uses Deno 2, which has nice ergonomics, because you can compile a binary and run it without any runtime dependencies.

This code is heavily based on the official Puppeteer MCP server, which you can find here: https://github.com/modelcontextprotocol/servers/tree/main/src/puppeteer

How to build

Only the mac binary build has been tested, but you should be able to build an executable binary for linux x86_64, linux ARM64, and windows x86_64.

- deno task build-mac
- deno task build-linux-x86_64
- deno task build-linux-ARM64
- deno task build-windows-x86_64

How to run

To invoke the playwright-server binary, you need to update your ~/Library/Application\ Support/Claude/claude_desktop_config.json to point to the binary.

{
  "mcpServers": {
    "playwright": {
      "command": "/path/to/deno2-playwright-mcp-server/playwright-server"
    }
  }
}
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.