@vinoth320/playwrightmcp
v1.3.8
Published
Production Playwright MCP bridge: SSE/Streamable HTTP, multi-session browsers, optional stealth
Downloads
1,094
Maintainers
Readme
@vinoth320/playwrightmcp
Production-oriented Playwright MCP bridge: Express server with SSE and Streamable HTTP, pooled @playwright/mcp child processes, metrics, and optional stealth init scripts.
Install
npm install @vinoth320/playwrightmcpRun
npx @vinoth320/playwrightmcp
# or
node node_modules/@vinoth320/playwrightmcp/server.jsConfigure with environment variables (see config.js): PORT, MAX_SESSIONS, HEADLESS, STEALTH_ENABLED, etc.
Cursor / MCP clients
This package exposes MCP over HTTP (Streamable HTTP at /mcp), not stdio. Do not use "command": "npx", "args": ["@vinoth320/playwrightmcp"] in Cursor — that expects an MCP server on stdin/stdout and will fail.
Start the server in a terminal (leave it running):
npx @vinoth320/playwrightmcpDefault URL:
http://localhost:3000/mcp(setPORTif you change the port).In Cursor MCP settings, add a URL server:
"playwrightmcpnpm": { "url": "http://localhost:3000/mcp" }
If proxymcp and playwrightmcp both use port 3000, run only one, or set PORT=3001 (or another free port) for one of them and use that URL in Cursor.
Requirements
- Node.js ≥ 18
- Playwright browsers for the channel you use (see
BROWSERinconfig.js):- Default
BROWSER=chromium: runnpx playwright install chromium(bundled Chromium). BROWSER=chrome: runnpx playwright install chromeand have a working Google Chrome for Testing install.
- Default
If Cursor gets Connection closed / -32000, the @playwright/mcp child usually failed to start — check logs for Playwright MCP child connect failed and stderr, and install the matching browser.
License
MIT
