Skip to main content
Glama
kbyk004-diy

Playwright-Lighthouse MCP Server

by kbyk004-diy
README.md
# Playwright-Lighthouse MCP Server

A MCP server that analyzes web site performance using Playwright and Lighthouse. Through the Model Context Protocol (MCP), LLMs can perform web site performance analysis.

## Features

- Performance analysis with Lighthouse
- Screenshot capture

## Setup

### Prerequisites

- Node.js 18 or higher
- npm

### Installation

```bash
# Clone the repository
git clone https://github.com/kbyk004/playwright-lighthouse-mcp.git
cd playwright-lighthouse-mcp

# Install dependencies
npm install
npx playwright install

# Build
npm run build
```

## Usage

### Debugging MCP Server

```bash
npm run inspector
```

### Integration with MCP Clients

This server is designed to be used with clients that support the Model Context Protocol (MCP). For example, it can be integrated with Claude for Desktop.

#### Configuration Example for Claude for Desktop

Add the following to the Claude for Desktop configuration file (`~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "playwright-lighthouse": {
      "command": "node",
      "args": [
        "/path-to/playwright-lighthouse-mcp/build/index.js"
      ]
    }
  }
}
```

## Available Tools

### 1. run-lighthouse

Runs a Lighthouse performance analysis on the currently open page.

Parameters:
- `url`: The URL of the website you want to analyze
- `categories`: Array of categories to analyze (default: ["performance"])
  - Available categories: "performance", "accessibility", "best-practices", "seo", "pwa"
- `maxItems`: Maximum number of improvement items to display for each category (default: 3, max: 5)

### 2. take-screenshot

Takes a screenshot of the currently open page.

Parameters:
- `url`: The URL of the website you want to capture
- `fullPage`: If true, captures a screenshot of the entire page (default: false)

## Output Format

The analysis results include:

- Overall scores for each selected category with color indicators
- Key improvement areas grouped by category
- Path to the saved report file

## License

MIT License - see [LICENSE](LICENSE) for details

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one runs a performance analysis (run-lighthouse) and the other captures a visual snapshot (take-screenshot). There is no overlap in functionality, making it easy for an agent to select the correct tool based on the task.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern (run-lighthouse, take-screenshot), using hyphenated lowercase names. This predictable naming scheme enhances readability and usability for agents.

Tool Count2/5

With only two tools, the server feels under-scoped for a Playwright-Lighthouse integration, which typically involves more operations like navigation, interaction, or detailed reporting. This limited set may hinder complex workflows that agents might expect from such a domain.

Completeness2/5

The tool surface is severely incomplete for browser automation and performance testing. Missing are essential operations like opening/closing pages, interacting with elements, running audits with specific configurations, or exporting results, which are core to the domain and could lead to agent failures in broader tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues