Skip to main content
Glama

Playwright MCP Server

by showfive

Playwright MCP Server

English | 日本語

This project is a server that provides Playwright web page content retrieval functionality using the Model Context Protocol (MCP).

Features

  • Page navigation
  • Full page content retrieval
  • Visible content retrieval
  • Interactive elements detection
  • Mouse operation simulation
  • Echo functionality for testing

Installation

Installing via Smithery

To install Playwright MCP Server for Claude Desktop automatically via Smithery:

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

Manual Installation

npm install

Usage

Starting the Server

npm run build npm start

MCP Tools

The following tools are available:

  1. navigate
    • Navigate to a specified URL
    • Arguments: { url: string }
    • Returns: Navigation result
  2. get_all_content
    • Retrieve content from the entire page
    • Arguments: None
    • Returns: All text content from the page
  3. get_visible_content
    • Retrieve currently visible content
    • Arguments: { minVisiblePercentage?: number }
    • Returns: Visible text content
  4. get_interactive_elements
    • Get position information of interactive elements (buttons, links, etc.) on the page
    • Arguments: None
    • Returns: Coordinates and boundary information of interactive elements
  5. move_mouse
    • Move mouse cursor to specified coordinates
    • Arguments: { x: number, y: number }
    • Returns: Operation result
  6. mouse_click
    • Execute mouse click at specified coordinates
    • Arguments: { x: number, y: number, button?: "left" | "right" | "middle", clickCount?: number }
    • Returns: Click operation result
  7. mouse_wheel
    • Execute mouse wheel scrolling
    • Arguments: { deltaY: number, deltaX?: number }
    • Returns: Scroll operation result
  8. drag_and_drop
    • Execute drag and drop operation
    • Arguments: { sourceX: number, sourceY: number, targetX: number, targetY: number }
    • Returns: Drag and drop operation result
  9. echo
    • Echo tool for testing
    • Arguments: { message: string }
    • Returns: Sent message

Development

Running Tests

# Run all tests npm test # Run tests in watch mode npm run test:watch # Generate coverage report npm run test:coverage

Test Structure

  • tools/*.test.ts: Function tests for each tool
  • mcp-server.test.ts: MCP server function tests

Implementation Features

  1. Content Retrieval
    • Full page content retrieval
    • Visible content only retrieval
    • Proper HTML parsing
  2. Interaction
    • Detection and position information retrieval of interactive elements
    • Mouse operation simulation (movement, clicks, scrolling)
    • Drag and drop support
  3. Error Handling
    • Proper navigation error handling
    • Timeout processing
    • Invalid URL detection
  4. Configuration Flexibility
    • Headless/head mode selection
    • Custom user agent
    • Viewport size settings

Important Notes

  • Ensure necessary environment variables are set before using the MCP server
  • Follow the terms of service of target websites when retrieving web page content
  • Maintain appropriate intervals when sending multiple requests
  • When performing mouse operations, maintain appropriate intervals as they simulate actual user interactions

License

ISC

-
security - not tested
F
license - not found
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Provides a server utilizing Model Context Protocol to enable human-like browser automation with Playwright, allowing control over browser actions such as navigation, element interaction, and scrolling.

  1. Features
    1. Installation
      1. Installing via Smithery
      2. Manual Installation
    2. Usage
      1. Starting the Server
      2. MCP Tools
    3. Development
      1. Running Tests
      2. Test Structure
    4. Implementation Features
      1. Important Notes
        1. License

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            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.
            Last updated -
            13
            10,475
            4,396
            TypeScript
            MIT License
            • Linux
            • Apple
          • -
            security
            A
            license
            -
            quality
            A Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages, take screenshots, and execute JavaScript in a real browser environment.
            Last updated -
            14
            Python
            Apache 2.0
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages through structured accessibility snapshots without requiring screenshots or vision models.
            Last updated -
            21
            277,338
            1
            TypeScript
            Apache 2.0
            • Apple
            • Linux
          • A
            security
            A
            license
            A
            quality
            A Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages, take screenshots, generate test code, scrape web content, and execute JavaScript in real browser environments.
            Last updated -
            31
            10,475
            TypeScript
            MIT License
            • Linux
            • Apple

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/showfive/playwright-mcp-server'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server