Session management layer for @playwright/cli — named saved logins, service probes, clone safety. Reads/writes ~/.playwright-sessions/ (interop with playwright-sessions MCP).
This is a CLI tool wrapped as an MCP server with significant definition gaps. 20 tools are present with schemas and descriptions, but quality is inconsistent. Many tools have vague descriptions (e.g., 'Manage attached browser lifecycle' for 'browser'), parameter descriptions are sparse or missing context, and output schemas are not documented. No tool annotations (readOnlyHint/destructiveHint) despite clear risk levels. Error handling guidance is absent. The server conflates multiple concerns in single tools (e.g., 'browser' with subcommands start/stop/status/tabs). Naming is mostly verb-noun but lacks clarity in distinguishing similar operations. This is typical of a CLI-to-MCP adapter that prioritizes command-line UX over agent-friendly tool design.
Manage attached browser lifecycle (start, stop, status, list tabs)
Clone an existing session to a new name
Delete a saved session
Execute a JavaScript/TypeScript script with Playwright page, context, and browser objects
Navigate to URL and assert page properties (title, selector, text, status code)
Check health and configuration of the CLI
Install skills or additional components
List all saved sessions with optional probing and JSON output
Open an interactive login session and save the resulting cookies/storage state
No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear risk levels declared. Tools marked DESTRUCTIVE (delete) or WRITE (save, clone, tag, exec, login, refresh, report, browser, install) lack machine-readable hints for agent safety.
Output schemas not documented. Tools like screenshot, navigate, snapshot, exec return results but no schema is visible in source. LLMs cannot plan downstream calls without knowing return structure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
Monitor usage logs and detect issues
Navigate to a URL and optionally capture snapshot
Probe a saved session for service availability and auth status
Re-authenticate an existing saved session by opening login in a new browser
Submit a diagnostic report about a failure or issue
List all submitted diagnostic reports
Restore a saved session's storage state to a file
Save current browser storage state as a named session
Capture a screenshot of a URL with optional session, wait conditions, and full-page capture
Capture page snapshot (HTML/text content) of a URL
Tag a session with a service name and optional identity
Vague descriptions for multi-concern tools. 'browser' with subcommand enum (start/stop/status/tabs) conflates four separate operations. 'Manage attached browser lifecycle' does not explain when to call it or what each subcommand does.
Missing error handling guidance. No tool description explains what to do if a call fails (e.g., 'Session not found. Call list() to see available sessions.'). Agents have no recovery path.
Parameter descriptions lack context. Many params (e.g., 'channel' in browser, 'service' in tag, 'severity' in monitor) have minimal descriptions. LLMs cannot infer valid values or constraints.