Unclaimed project
Are you a maintainer of playwright-mcp? Claim this project to take control of your public changelog and roadmap.
Changelog
Playwright MCP server
Last updated about 21 hours ago
Features
state-save/state-load for reproducible auth flows; full CLI control over cookies, localStorage, sessionStorageroute command with glob patterns, custom status/bodies/headers; --remove-header to strip sensitive datarun-code: Drop into raw Playwright routing for conditional logic, response mutation, request inspection, and failure simulationinstall-skills commandRenamed Commands
install-browser (was unnamed browser install)--in-memory flag (was --isolated) — browser profile lives only in memory, nothing persisted to diskFull introspection and manipulation of browser storage, enabling reproducible auth flows, debugging, and stateful automation.
> playwright-cli state-save auth.json
> playwright-cli state-load auth.json
Inspect and manage cookies:
> playwright-cli cookie-list
> playwright-cli cookie-get session_id
> playwright-cli cookie-set session_id abc123 --domain=example.com
> playwright-cli cookie-delete session_id
> playwright-cli cookie-clear
Work directly with Web Storage APIs:
# LocalStorage
> playwright-cli localstorage-list
> playwright-cli localstorage-get theme
> playwright-cli localstorage-set theme dark
> playwright-cli localstorage-clear
# SessionStorage
> playwright-cli sessionstorage-list
> playwright-cli sessionstorage-set wizardStep 3
> playwright-cli sessionstorage-clear
Perfect for:
Intercept, mock, modify, or block network requests directly from the CLI — no test harness required.
Mock responses by URL pattern with custom status codes, bodies, headers, or request mutations.
# Mock with custom status
> playwright-cli route "**/*.jpg" --status=404
# Mock with JSON body
> playwright-cli route "**/api/users" \
--body='[{"id":1,"name":"Alice"}]' \
--content-type=application/json
# Mock with custom headers
> playwright-cli route "**/api/data" \
--body='{"ok":true}' \
--header="X-Custom: value"
# Strip sensitive headers from outgoing requests
> playwright-cli route "**/*" --remove-header=cookie,authorization
Manage active routes:
> playwright-cli route-list
> playwright-cli unroute "**/*.jpg"
> playwright-cli unroute
Use cases:
Routes support glob-style patterns for precise targeting:
**/api/users Exact path match
**/api/*/details Wildcards within paths
**/*.{png,jpg,jpeg} File extension matching
**/search?q=* Query parameter matching
run-codeFor conditional logic, request inspection, response mutation, or timing control, drop down to raw Playwright routing via run-code.
> playwright-cli run-code "async page => {
await page.route('**/api/login', route => {
const body = route.request().postDataJSON();
if (body.username === 'admin') {
route.fulfill({ body: JSON.stringify({ token: 'mock-token' }) });
} else {
route.fulfill({ status: 401, body: JSON.stringify({ error: 'Invalid' }) });
}
});
}"
> playwright-cli run-code "async page => {
await page.route('**/api/user', async route => {
const response = await route.fetch();
const json = await response.json();
json.isPremium = true;
await route.fulfill({ response, json });
});
}"
> playwright-cli run-code "async page => {
await page.route('**/api/offline', route =>
route.abort('internetdisconnected')
);
}"
> playwright-cli install-skills
> playwright-cli install-browser
> playwright-cli config --in-memory
Renamed from --isolated to better reflect behavior:
Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.