Playwright MCP
Control a browser for automation and web scraping tasks using Playwright.
playwright-mcp
Playwright wrapper for MCP (Model Context Protocol). This server enables LLM-powered clients to control a browser for automation tasks.
Components
Resources
The server exposes resources for accessing browser screenshots:
- Screenshot resource URI:
screenshot://{page_id} - Screenshot resources are automatically available for all open pages
Prompts
The server provides a prompt to help clients interpret web pages:
interpret-page: Analyzes the current web page content and structure- Optional
page_idargument to select which page to interpret - Optional
focusargument to focus on specific aspects (full, forms, navigation, text) - Returns both text analysis and a screenshot of the page
- Optional
Tools
The server implements a comprehensive set of browser automation tools:
-
Browser navigation
navigate: Go to a specific URLnew_page: Create a new browser page with a specific IDswitch_page: Switch to a different browser pageget_pages: List all available browser pages
-
Page interaction
click: Click on an element using CSS selectortype: Type text into an input elementwait_for_selector: Wait for an element to appear on the page
-
Content extraction
get_text: Get text content from an elementget_page_content: Get the entire page HTMLtake_screenshot: Capture visual state of the page or element
Configuration
Install Dependencies
uv add playwright
playwright install chromium
Quickstart
Install
Claude Desktop
On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
Development/Unpublished Servers Configuration
"mcpServers": {
"playwright-mcp": {
"command": "uv",
"args": [
"--directory",
"/Users/shannon/Workspace/artivus/playwright-mcp",
"run",
"playwright-mcp"
]
}
}
Published Servers Configuration
"mcpServers": {
"playwright-mcp": {
"command": "uvx",
"args": [
"playwright-mcp"
]
}
}
Development
Building and Publishing
To prepare the package for distribution:
- Sync dependencies and update lockfile:
uv sync
- Build package distributions:
uv build
This will create source and wheel distributions in the dist/ directory.
- Publish to PyPI:
uv publish
Note: You'll need to set PyPI credentials via environment variables or command flags:
- Token:
--tokenorUV_PUBLISH_TOKEN - Or username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm with this command:
npx @modelcontextprotocol/inspector uv --directory /Users/shannon/Workspace/artivus/playwright-mcp run playwright-mcp
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.
Related Servers
Bright Data
sponsorDiscover, extract, and interact with the web - one interface powering automated access across the public internet.
Jina Reader
Fetch the content of a remote URL as Markdown with Jina Reader.
Browserless
Scrape and automate any webpage using headless browsers, captcha solving, and advanced stealth features, in an optimized infrastructure that works in seconds.
youtube-summarize
MCP server that fetches YouTube video transcripts and summarizes them using your LLM client
MCP Web Research Server
A server for web research that brings real-time information into AI models and researches any topic.
B2Proxy
1GB Free Trial, World's Leading Proxy Service Platform, Efficient Data Collection
just-every/mcp-screenshot-website-fast
High-quality screenshot capture optimized for Claude Vision API. Automatically tiles full pages into 1072x1072 chunks (1.15 megapixels) with configurable viewports and wait strategies for dynamic content.
ServiceGraph
Access ServiceGraph — a structured catalog of 100k+ US professional-services firms (law, marketing, consulting, accounting, IT services, architecture, engineering, HR, PR, design) with filters for industry, services offered, location, size, ratings, and third-party listing presence.
Cloudflare Playwright
Control a browser for web automation tasks like navigation, typing, clicking, and taking screenshots using Playwright on Cloudflare Workers.
yt-dlp
Download video and audio content from various websites like YouTube, Facebook, and Tiktok using yt-dlp.
LinkedIn Profile Scraper
Fetches LinkedIn profile information using the Fresh LinkedIn Profile Data API.