Playwright MCP Server ðŸŽ
Playwright Model Context Protocol Server - Tool to automate Browsers and APIs in Claude Desktop, Cline, Cursor IDE and More 🔌
Overview
Playwright MCP Server is a Model Context Protocol server that integrates Playwright for browser automation, allowing LLMs to interact with web pages, capture screenshots, and execute JavaScript inside a real browser environment.
To use Playwright MCP Server, install the package via npm or mcp-get, and configure it with your desired settings to begin automating web interactions.
- Automated navigation to websites - Screenshot capture of entire pages or specific elements - Executing JavaScript code in the browser context - Interaction with web elements through clicking, hovering, and filling forms - Access to browser console logs for debugging purposes
- Automating web testing for applications
- Monitoring browser logs and capturing issues in real-time
- Generating screenshots for documentation or reporting purposes
- Executing complex JavaScript functions to manipulate page behavior
Add to your AI client
Use these steps to connect Playwright MCP Server 🎠in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.
Cursor
Add this to your .cursor/mcp.json file in your project root, then restart Cursor.
.cursor/mcp.json
{
"mcpServers": {
"mcp-playwright-executeautomation": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}Claude Desktop
Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
{
"mcpServers": {
"mcp-playwright-executeautomation": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}Claude Code
Add this to your project's .mcp.json file. Claude Code will detect it automatically.
.mcp.json (project root)
{
"mcpServers": {
"mcp-playwright-executeautomation": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}VS Code (Copilot)
Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.
.vscode/mcp.json
{
"servers": {
"mcp-playwright-executeautomation": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}Windsurf
Add this to your Windsurf MCP config file, then restart Windsurf.
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"mcp-playwright-executeautomation": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}Cline
Open Cline settings, navigate to MCP Servers, and add this server configuration.
Cline MCP Settings (via UI)
{
"mcpServers": {
"mcp-playwright-executeautomation": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-mcp-playwright-executeautomation"
]
}
}
}FAQ
How do I install Playwright MCP Server?
You can install it using npm with the command `npm install -g @executeautomation/playwright-mcp-server` or through mcp-get.
What is the benefit of using Playwright MCP Server?
It facilitates automation tasks by allowing LLMs to control browsers programmatically, useful for testing, scraping, and interactive automation applications.
Can I build the server from source?
Yes! You can clone the repository and follow the build instructions provided in the documentation.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":208,"uuid":"c3fa398e-0c9c-4eb0-806f-14be87339ace","name":"mcp-playwright","title":"Playwright MCP Server ðŸŽ","description":"Playwright Model Context Protocol Server - Tool to automate Browsers and APIs in Claude Desktop, Cline, Cursor IDE and More 🔌","avatar_url":"https://avatars.githubusercontent.com/u/10337030?v=4","created_at":"2024-12-13T09:12:51.643Z","updated_at":"2024-12-13T12:28:11.502Z","status":"created","author_name":"executeautomation","author_avatar_url":"https://avatars.githubusercontent.com/u/10337030?v=4","tags":"[]","category":"browser-automation","is_featured":false,"sort":1,"url":"https://github.com/executeautomation/mcp-playwright","target":"_self","content":"$29","summary":"$2a","img_url":"https://camo.githubusercontent.com/8a2099cfcd8b270ce5c28551b73124ac5ffe41b5f8f8f7d5d121c7285de79da0/68747470733a2f2f6d736565702e6e65742f70722f657865637574656175746f6d6174696f6e2d6d63702d706c61797772696768742d62616467652e706e67","type":null,"metadata":"{\"star\":\"3778\",\"license\":\"MIT license\",\"language\":\"TypeScript\",\"is_official\":false,\"latest_commit_time\":\"2025-05-21 15:17:26\"}","user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]