Skip to main content
Glama
MCP Browser Automation Server

MCP Browser Automation Server

by hrmeetsingh

MCP Browser Automation

This is demo project to practice Model Context Protocol based server implemenation for automating browsing with Playwright. It interacts with a Claude Desktop client to accept user prompts and use server to control browser.

Pre-requisites

Related MCP server: claude-playwright

Building

  1. Clone the repository: git clone https://github.com/hrmeetsingh/mcp-browser-automation.git

  2. Install dependencies: npm install

  3. Verify the output executables are present in dist folder

Integration

  1. Create a configuration file in ~/Application\ Support/Claude/claude_desktop_config.json (This is for macOS)

  2. Copy the following to the file:

{
  "mcpServers": {
    "mcp-browser-automation": {
      "command": "node",
      "args": ["/path/to/mcp-browser-automation/dist/index.js"]
    }
  }
}
  1. Start Claude Desktop

Usage

  1. Open Claude Desktop

  2. Start a new conversation to open a browser and navigate to a URL

Example

  • Added MCP Server options Added MCP Server options

  • Navigating to a URL and doing actions with playwright Navigating to a URL and entering text

Available Tools

12 tools
playwright_clickC

Click an element on the page

Inputs: selector (required).

playwright_deleteC

Perform an HTTP DELETE request

Inputs: url (required).

playwright_evaluateC

Execute JavaScript in the browser console

Inputs: script (required).

playwright_fillC

fill out an input field

Inputs: selector (required), value (required).

playwright_getC

Perform an HTTP GET request

Inputs: url (required).

playwright_hoverC

Hover an element on the page

Inputs: selector (required).

playwright_navigateC

Navigate to a URL

Inputs: url (required).

playwright_patchC

Perform an HTTP PATCH request

Inputs: url (required), value (required).

playwright_postC

Perform an HTTP POST request

Inputs: url (required), value (required).

playwright_putC

Perform an HTTP PUT request

Inputs: url (required), value (required).

playwright_screenshotC

Take a screenshot of the current page or a specific element

Inputs: name (required), downloadsDir, height, savePng, +3 more.

playwright_selectC

Select an element on the page with Select tag

Inputs: selector (required), value (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 12 tools

    Disambiguation4/5

    Most tools have distinct purposes, but there is some potential confusion between playwright_click and playwright_select, as both involve interacting with page elements. The HTTP methods (GET, POST, PUT, PATCH, DELETE) are clearly differentiated, and other tools like navigate, screenshot, and evaluate have unique functions.

    Naming Consistency5/5

    All tools follow a consistent 'playwright_verb' naming pattern, using snake_case throughout. This predictability makes it easy for agents to understand and use the toolset without confusion about naming conventions.

    Tool Count5/5

    With 12 tools, this server is well-scoped for browser automation, covering essential actions like navigation, interaction, HTTP requests, and debugging. Each tool serves a clear purpose, and the count aligns with the domain's complexity without being overwhelming.

    Completeness4/5

    The toolset provides strong coverage for core browser automation tasks, including navigation, element interaction, HTTP methods, and screenshots. A minor gap is the lack of tools for handling browser contexts, tabs, or more advanced JavaScript execution, but agents can still accomplish most workflows effectively.

    Maintenance

    ActivityInactive
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      Not graded
      maintenance
      Enables AI assistants to control a browser through Playwright automation tools, allowing them to perform web tasks like navigation, typing, clicking, and taking screenshots. Deployed on Cloudflare Workers and compatible with various AI platforms including Claude Desktop and VS Code.
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables browser automation and web interaction control through Playwright, allowing Claude Code to navigate, click, fill forms, take screenshots, and manage sessions.
      68 npm
      9
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables natural language browser automation through Claude, wrapping Playwright to execute commands like navigation, clicking, form filling, and screenshots.
      3 npm
      30
      MIT