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](https://smithery.ai/server/@showfive/playwright-mcp-server):
Manual Installation
Usage
Starting the Server
MCP Tools
The following tools are available:
`navigate`
- Navigate to a specified URL
- Arguments: `{ url: string }`
- Returns: Navigation result
`get_all_content`
- Retrieve content from the entire page
- Arguments: None
- Returns: All text content from the page
`get_visible_content`
- Retrieve currently visible content
- Arguments: `{ minVisiblePercentage?: number }`
- Returns: Visible text content
`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
`move_mouse`
- Move mouse cursor to specified coordinates
- Arguments: `{ x: number, y: number }`
- Returns: Operation result
`mouse_click`
- Execute mouse click at specified coordinates
- Arguments: `{ x: number, y: number, button?: "left" | "right" | "middle", clickCount?: number }`
- Returns: Click operation result
`mouse_wheel`
- Execute mouse wheel scrolling
- Arguments: `{ deltaY: number, deltaX?: number }`
- Returns: Scroll operation result
`drag_and_drop`
- Execute drag and drop operation
- Arguments: `{ sourceX: number, sourceY: number, targetX: number, targetY: number }`
- Returns: Drag and drop operation result
`echo`
- Echo tool for testing
- Arguments: `{ message: string }`
- Returns: Sent message
Development
Running Tests
Test Structure
`tools/*.test.ts`: Function tests for each tool
`mcp-server.test.ts`: MCP server function tests
Implementation Features
Content Retrieval
- Full page content retrieval
- Visible content only retrieval
- Proper HTML parsing
Interaction
- Detection and position information retrieval of interactive elements
- Mouse operation simulation (movement, clicks, scrolling)
- Drag and drop support