unstale

npm / @playwright/mcp

@playwright/mcp

What changed in @playwright/mcp 0.0, from its official release notes, upgrade guides and advisories. Sources checked 2026-11-15.

44 breaking7 security113 new APIs and options24 behavior and defaults49 tooling84 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.3.1 on npm

@playwright/mcp 0.0321 changes

Breaking changes 44

  • Source locations in console messages and tool-response console entries now use editor-style line numbers starting at 1.

    0.0.85release notes

  • Exceptions from page and context listeners installed through this tool appear in tool responses and browser_console_messages instead of escaping as unhandled errors.

    0.0.85release notes

  • Snapshots no longer hide content solely because it is inert or outside a modal dialog; click, fill and select still wait for explicitly inert targets to become non-inert.

    0.0.85release notes

  • Profile, executable, storage-state, output and other config paths resolve against the config file's directory, or its target's directory for a symlink; CLI and environment paths remain working-directory-relative.

    0.0.85release notes

  • Unknown device values produce an explicit error, and per-client overrides no longer mutate shared device presets.

    0.0.85release notes

  • Snapshots and accessible names omit unrendered text, including unslotted shadow-host text and text directly inside closed details.

    0.0.84release notes

  • Supplying both text and textGone waits for the first condition to happen instead of waiting for both in sequence.

    0.0.84release notes

  • When combined with a text condition, time is its timeout, capped at 30 seconds, rather than a delay before checking it.

    0.0.84release notes

  • Snapshots exclude inert content and content outside the topmost modal dialog; click and fill actions wait for targets to stop being inert.

    0.0.84release notes

  • With HTTP transport, an idle client's context expires even while another client keeps the shared browser busy.

    0.0.84release notes

  • WebMCP tool calls work with Chromium 155 and later.

    0.0.83release notes

  • The style option accepts point, highlight and title CSS declarations; markers are shown only when styled.

    0.0.82release notes

  • This tool is no longer exposed over MCP, replaced by direct calls to page-registered WebMCP tools.

    0.0.82release notes

  • This tool is no longer exposed over MCP, replaced by page-registered WebMCP tools in the tool list.

    0.0.82release notes

  • The Chromium sandbox is disabled by default on Linux for the bundled Chromium build, which lacks the setuid sandbox helper.

    0.0.81release notes

  • Follows symlinks so a symlink inside the workspace cannot be used to read or write files outside the allowed roots.

    0.0.81release notes

  • Headless browsers launched by the server close after one hour without tool calls; the next tool call launches a new browser. Headed and attached browsers are unaffected unless a timeout is set explicitly.

    0.0.81release notes

  • Returns the original screenshot bytes instead of silently downscaling them to model-specific limits.

    0.0.80release notes

  • The default codegen language is inferred from the environment.

    0.0.80release notes

  • The internal endpoint is no longer registered outside of tests.

    0.0.80release notes

  • Removes support for extension protocol v1.

    0.0.79release notes

  • Removes the stale CLI option.

    0.0.79release notes

  • Snapshots are distilled to reduce noise and token usage.

    0.0.78release notes

  • Snapshot and network output no longer includes data: URL payloads.

    0.0.77release notes

  • Replaces browser_run_code with a name that makes the sandbox-escape implication explicit.

    0.0.72release notes

  • Ignores browser configuration such as channel, headless, and viewport when attaching to the extension.

    0.0.72release notes

  • Merges user-supplied ignoreDefaultArgs with persistent mode defaults instead of replacing them.

    0.0.71release notes

  • Replaces the navigation protocol allowlist with a blocklist for better coverage.

    0.0.69release notes

  • The CLI flag name is restored to --no-sandbox.

    0.0.68release notes

  • Renames --[no-]sandbox for clarity and to avoid ambiguity with other browsers.

    0.0.67release notes

  • Browser profiles are in-memory by default, so every session starts clean with no leftover state.

    0.0.64release notes

  • The shorter -s= flag replaces --session for selecting a session.

    0.0.64release notes

  • The --session flag has been replaced with -s=.

    0.0.64release notes

  • Sessions no longer have a stopped state; they are either running or gone.

    0.0.64release notes

  • Renames --isolated to --in-memory; the browser profile exists only in memory, is not persisted to disk, and starts clean on every run.

    0.0.63release notes

  • Renames the browser installation command to install-browser.

    0.0.63release notes

  • The CLI uses a dedicated persistent profile by default, preserving cookies and other storage state between calls.

    0.0.59release notes

  • The CLI uses a dedicated persistent profile by default, preserving cookies and other storage state between calls.

    0.0.58release notes

  • MCP-recorded videos are now saved under outputDir/videos.

    0.0.55release notes

  • Browser navigation and API requests are limited to http:, https:, about:, and data: URLs; file:// is blocked by default.

    0.0.55release notes

  • File uploads through setInputFiles, file choosers, and MCP file tools are restricted to workspace root directories, or cwd when no roots are configured.

    0.0.55release notes

  • The MCP extension now connects only to MCP servers running on the same machine.

    0.0.54release notes

  • Successfully downloaded static resources are no longer returned by default; pass includeStatic to include them.

    0.0.51release notes

  • The flag is gone; use --proxy as a safer alternative or rely upon underlying OS policies.

    0.0.47release notes

Security 7

  • Configure named query and fragment parameters to have their runtime values replaced with <redacted> in tool responses.

    0.0.84release notes

  • Validates Host and Origin headers on CDP relay WebSocket upgrades.

    0.0.79release notes

  • Escapes user input in generated code.

    0.0.79release notes

  • The default browser now enables the chromium sandbox.

    0.0.78release notes

  • Secrets are redacted in console log artifacts.

    0.0.77release notes

  • Adds path-traversal checks to static file serving routes.

    0.0.76release notes

  • Validates user-provided regex patterns in MCP tools.

    0.0.76release notes

New APIs and options 113

  • With --extension, leaves the connected tab inactive and its window unfocused, and opens client tabs in the background.

    0.0.85release notes

  • With an extension connection, leaves the connected tab inactive and its window unfocused, and opens client tabs in the background.

    0.0.85release notes

  • When enabled, restricts locators to visible elements in element-tool targets and browser_run_code_unsafe; off by default.

    0.0.85release notes

  • With --extension, keeps the selected tab and client-opened tabs in their existing groups, if any.

    0.0.85release notes

  • Setting this environment variable to 1 leaves the connected tab inactive and its window unfocused, and opens client tabs in the background.

    0.0.85release notes

  • Setting this environment variable to 1 keeps controlled tabs in their existing groups, if any.

    0.0.85release notes

  • Setting this to false with an extension connection keeps controlled tabs in their existing groups, if any.

    0.0.85release notes

  • Optional domain and path filters let cookie deletion leave same-name cookies on other domains and paths untouched.

    0.0.84release notes

  • A positive integer maxResults limits returned matches to the first matching items with context and reports the total match count.

    0.0.84release notes

  • Set all to true to include retained request history from earlier navigations, up to 200 requests.

    0.0.84release notes

  • The new-tab action accepts an isolatedContext name; tabs with the same name share a context, while different names stay isolated.

    0.0.84release notes

  • Skip the roots/list request and use the server's current working directory as the workspace root.

    0.0.84release notes

  • Element tools accept JavaScript, Python, Java, and C# locators alongside snapshot refs and CSS selectors.

    0.0.84release notes

  • browser_find takes filename to save matches to a file instead of returning them in the response.

    0.0.83release notes

  • The new tool emulates colorScheme, reducedMotion, forcedColors, contrast and media type on the fly; omitted parameters remain unchanged and null clears an override.

    0.0.82release notes

  • The cursor option renders an animated mouse cursor that travels to each action point and stays visible between actions.

    0.0.82release notes

  • The tool takes fps, allowing recordings such as fps: 60 instead of the default 25.

    0.0.82release notes

  • Set this option to absolute to return absolute paths for snapshots, screenshots, console logs and downloads.

    0.0.82release notes

  • Set filePaths to absolute to return absolute paths for snapshots, screenshots, console logs and downloads.

    0.0.82release notes

  • Pass this flag to opt out of WebMCP tools.

    0.0.82release notes

  • Set this environment variable to absolute to return absolute paths for snapshots, screenshots, console logs and downloads.

    0.0.82release notes

  • Set this environment variable to false to opt out of WebMCP tools.

    0.0.82release notes

  • Clients receive this notification when the page's WebMCP tool list changes.

    0.0.82release notes

  • Set webmcp to false in configuration to opt out of WebMCP tools.

    0.0.82release notes

  • Calls the tools a page registers through the WebMCP API, letting the page do the work instead of driving its UI.

    0.0.81release notes

  • Lists the tools a page registers through the WebMCP API, letting the page do the work instead of driving its UI.

    0.0.81release notes

  • Changes the idle timeout; setting it to 0 disables the timeout.

    0.0.81release notes

  • Accepts only, which returns image parts alone for a response carrying an image, without the text part.

    0.0.81release notes

  • Selects which Chrome profile to connect to in extension mode when the extension is installed in several profiles.

    0.0.81release notes

  • Starts recording actions the user performs manually in the browser and returns them as Playwright code; opt in via --caps=devtools.

    0.0.80release notes

  • Stops recording actions the user performs manually in the browser and returns them as Playwright code; opt in via --caps=devtools.

    0.0.80release notes

  • Adds a type option for png, jpeg, or webp screenshots; when unset, the format is inferred from the filename extension.

    0.0.79release notes

  • Launches the Chrome profile that has the extension installed.

    0.0.79release notes

  • Enables bounding boxes in snapshots globally; previously this was only available per command.

    0.0.79release notes

  • Controls how long to wait after each action for triggered work, such as navigations and requests, to settle; defaults to 500ms.

    0.0.79release notes

  • Configures how long to wait after each action for triggered work, such as navigations and requests, to settle; defaults to 500ms.

    0.0.79release notes

  • Searches the current page's accessibility snapshot for text or a regular expression and returns matching nodes with surrounding context.

    0.0.78release notes

  • Adds a CLI option to emulate mobile devices.

    0.0.78release notes

  • Adds a CLI flag to emulate mobile devices.

    0.0.78release notes

  • Waits for the next pause or context closure.

    0.0.77release notes

  • The scale option lets you choose CSS-pixel screenshots or higher-resolution device-pixel screenshots.

    0.0.77release notes

  • The heartbeat ping timeout is now configurable.

    0.0.77release notes

  • Adds a tool to hide action annotations on recorded video.

    0.0.76release notes

  • Adds a tool to overlay action annotations on recorded video.

    0.0.76release notes

  • Caps tool response size and evicts oversized output from disk after the response.

    0.0.76release notes

  • Accepts a ConnectOptions object instead of only a URL string.

    0.0.76release notes

  • Supports setting headers for the remote browser endpoint.

    0.0.76release notes

  • Accepts a filename option to write output to a file.

    0.0.72release notes

  • Fetches full details or a single part of a request using its index from browser_network_requests.

    0.0.72release notes

  • Returns a numbered list of requests; use browser_network_request with an index to fetch full details or a single part.

    0.0.72release notes

  • Accepts a filename option to write output to a file.

    0.0.72release notes

  • Exposes Locator.drop as an MCP tool for completing drag-and-drop operations onto a target.

    0.0.71release notes

  • Adds the responseBody option; binary response bodies are rendered as a placeholder using mime-type detection.

    0.0.71release notes

  • Adds the responseHeaders option to browser_network_requests.

    0.0.71release notes

  • Adds a button option for more precise mouse interaction control.

    0.0.69release notes

  • Adds a clickCount option for more precise mouse interaction control.

    0.0.69release notes

  • Adds a delay option for more precise mouse interaction control.

    0.0.69release notes

  • Responses can optionally include the body.

    0.0.69release notes

  • Responses can optionally include headers.

    0.0.69release notes

  • Adds filtering support to the network requests tool.

    0.0.69release notes

  • Adds a tool to toggle network offline mode for testing connectivity scenarios.

    0.0.69release notes

  • Adds a tool to add a chapter marker to a video recording with a full-screen chapter card and blurred backdrop.

    0.0.69release notes

  • Adds an mcpName package field for MCP Registry ownership verification.

    0.0.69release notes

  • Tools now accept plain CSS and text selectors in addition to aria-ref handles.

    0.0.69release notes

  • Use --persistent to opt into a persistent profile instead of the default in-memory profile.

    0.0.64release notes

  • Close all browsers with the new close-all command.

    0.0.64release notes

  • Forcefully kill all browser processes with the new kill-all command.

    0.0.64release notes

  • Use --profile=<path> to specify a custom profile directory.

    0.0.64release notes

  • Deletes a browser cookie by name.

    0.0.63release notes

  • Gets a LocalStorage value by key.

    0.0.63release notes

  • Saves browser state to a file, enabling login sessions and reproducible browser state across runs.

    0.0.63release notes

  • Select a non-Chromium browser, with Firefox shown as an available choice.

    0.0.62release notes

  • The devtools capability makes on-demand video recording available in Playwright MCP.

    0.0.62release notes

  • Use an isolated, ephemeral browser context with the CLI.

    0.0.62release notes

  • Configure a persistent session, including options such as headed mode and a configuration file.

    0.0.62release notes

  • Use the extension option to snapshot a shared browser tab through the Playwright Chrome extension.

    0.0.62release notes

  • The mcp binary is released and scoped to Playwright for use in the NPX world.

    0.0.61release notes

  • The CLI supports environment configuration, including selecting a session with PLAYWRIGHT_CLI_SESSION.

    0.0.59release notes

  • Pass --headed to open to see the browser; the CLI is headless by default.

    0.0.59release notes

  • Session commands let developers list, stop, and delete browser sessions and their profile data.

    0.0.59release notes

  • Check a checkbox or radio button.

    0.0.58release notes

  • Close the page.

    0.0.58release notes

  • Perform a double click on a web page.

    0.0.58release notes

  • Accept a dialog, optionally providing a prompt value.

    0.0.58release notes

  • Dismiss a dialog.

    0.0.58release notes

  • Go back to the previous page.

    0.0.58release notes

  • Hover over an element on the page.

    0.0.58release notes

  • Release a key on the keyboard.

    0.0.58release notes

  • Press the mouse button down.

    0.0.58release notes

  • Release the mouse button.

    0.0.58release notes

  • Open a URL in the browser; pass --headed to display the browser.

    0.0.58release notes

  • Press a key on the keyboard.

    0.0.58release notes

  • Set this environment variable to run a coding agent with a selected CLI session.

    0.0.58release notes

  • List all sessions.

    0.0.58release notes

  • Use --session to address a specific browser instance with a separate profile.

    0.0.58release notes

  • Stop all sessions.

    0.0.58release notes

  • Close a browser tab by index.

    0.0.58release notes

  • Create a new tab, optionally opening a URL.

    0.0.58release notes

  • Stop trace recording.

    0.0.58release notes

  • Type text into an editable element.

    0.0.58release notes

  • Added a configuration option to control CDP connection timeouts; the default is 30s, and 0 disables the timeout.

    0.0.56release notes

  • Adds an opt-out flag that allows access to files outside workspace roots and navigation and requests to file:// URLs.

    0.0.55release notes

  • Adds a configuration option to opt out of file access and protocol restrictions.

    0.0.55release notes

  • Accepts an optional filename parameter to save the snapshot to disk and show a link in the Files section, avoiding large inline snapshots and smaller MCP payloads.

    0.0.52release notes

  • Accepts a level parameter to include console messages up to the given severity.

    0.0.51release notes

  • Configures the console severity level included in replies; defaults to info.

    0.0.51release notes

  • Configures snapshot output mode; defaults to incremental.

    0.0.51release notes

  • The --allow-origins flag is brought back; point it only at trusted origins.

    0.0.48release notes

  • Run batches of Playwright APIs in one command, speeding up repetitive operations and saving context tokens.

    0.0.47release notes

  • Point to a TypeScript file evaluated on the Playwright page object to run setup code.

    0.0.47release notes

  • Point to a JavaScript file added as an initialization script and evaluated in every page before its scripts.

    0.0.47release notes

  • Load cookies and local storage from a file into an isolated browser context.

    0.0.47release notes

  • Start with a user data directory to persist all browser data between sessions.

    0.0.47release notes

Behavior and default changes 24

  • Its description no longer rules out acting on a screenshot; with --caps=vision, it points to coordinate-based mouse tools for elements the snapshot does not expose.

    0.0.85release notes

  • In Chrome and Edge's new headless mode, the window is sized to fit the viewport below the tab strip and toolbar, preventing browser_start_video from cropping the page bottom.

    0.0.85release notes

  • Added request header names match case-insensitively; mocked responses include custom headers, and request-header changes preserve origin filters and other routes.

    0.0.84release notes

  • HTTP clients can connect through localhost, 127.0.0.1, or [::1] regardless of the bind address; other hosts still require --allowed-hosts.

    0.0.84release notes

  • Credentials embedded in the proxy URL are passed to the browser as proxy authentication settings.

    0.0.84release notes

  • Reports how many WebMCP tools are available on a page.

    0.0.81release notes

  • Reconnects to the browser after a disconnect.

    0.0.79release notes

  • Now surfaces non-2xx navigation status codes.

    0.0.78release notes

  • Assigns caps as an array for the legacy --vision flag.

    0.0.77release notes

  • Supports the moz-firefox BiDi channel.

    0.0.76release notes

  • Browser-level CDP commands are forwarded in extension mode.

    0.0.75release notes

  • Shared browser launches are serialized in isolated mode.

    0.0.75release notes

  • Abort signals are propagated to stop test execution.

    0.0.74release notes

  • When filename is explicitly provided, the response skips the base64 image.

    0.0.74release notes

  • The browser extension now supports managing multiple tabs when used with this flag.

    0.0.74release notes

  • The session now auto-recovers if the remote browser disconnects mid-session.

    0.0.74release notes

  • The extension channel is now resolved from CLI flags and environment variables.

    0.0.73release notes

  • The extension executablePath is now resolved from CLI flags and environment variables.

    0.0.73release notes

  • Accepts plain expressions in addition to function bodies.

    0.0.71release notes

  • Connected tabs are grouped into a green Playwright tab group.

    0.0.71release notes

  • Each workspace gets its own daemon process, preventing cross-project interference and enabling direct daemon startup for faster, more reliable operation.

    0.0.64release notes

  • Now takes a function and supports return statements.

    0.0.52release notes

  • pageState supports diffs, collapsing unchanged subtrees to reduce noise and payload size.

    0.0.43release notes

  • Limits on rendered image sizes prevent resource overuse.

    0.0.43release notes

Tooling 49

  • Code generation supports python, java, and csharp in addition to typescript.

    0.0.79release notes

  • List all sessions with the new list command.

    0.0.64release notes

  • Clears browser cookies.

    0.0.63release notes

  • Gets a browser cookie by name.

    0.0.63release notes

  • Lists browser cookies for storage inspection and debugging.

    0.0.63release notes

  • Sets a browser cookie, with an optional domain.

    0.0.63release notes

  • Adds a command to install SKILLS locally.

    0.0.63release notes

  • Clears LocalStorage.

    0.0.63release notes

  • Lists LocalStorage entries for browser storage inspection.

    0.0.63release notes

  • Sets a LocalStorage value.

    0.0.63release notes

  • Adds CLI-based request mocking by URL pattern, including custom responses, headers, request mutations, and blocking.

    0.0.63release notes

  • Lists active network routes.

    0.0.63release notes

  • Enables advanced request handling through raw Playwright routing, including conditional responses, response mutation, and simulated network failures.

    0.0.63release notes

  • Clears SessionStorage.

    0.0.63release notes

  • Lists SessionStorage entries for browser storage inspection.

    0.0.63release notes

  • Sets a SessionStorage value.

    0.0.63release notes

  • Loads browser state from a file for reproducible auth flows and stateful automation.

    0.0.63release notes

  • Removes a matching route or all active routes.

    0.0.63release notes

  • A Playwright CLI executable is available for running browser commands such as open and snapshot.

    0.0.62release notes

  • Start on-demand video recording from the CLI; pair with video-stop to save a recording.

    0.0.62release notes

  • Stop on-demand video recording from the CLI and produce a video file.

    0.0.62release notes

  • The CLI supports browsers other than Chrome.

    0.0.59release notes

  • The CLI supports a config file named playwright-cli.json.

    0.0.59release notes

  • Adds an official, token-efficient CLI mode with commands for browser interaction, navigation, keyboard and mouse input, screenshots, tabs, and DevTools.

    0.0.59release notes

  • Perform a click on a web page.

    0.0.58release notes

  • List console messages, optionally filtered by minimum level.

    0.0.58release notes

  • Perform drag and drop between two elements.

    0.0.58release notes

  • Evaluate a JavaScript expression on a page or element.

    0.0.58release notes

  • Fill text into an editable element.

    0.0.58release notes

  • Go forward to the next page.

    0.0.58release notes

  • Press a key down on the keyboard.

    0.0.58release notes

  • Move the mouse to a given position.

    0.0.58release notes

  • Scroll the mouse wheel.

    0.0.58release notes

  • List network requests since the page loaded.

    0.0.58release notes

  • Save the page as a PDF.

    0.0.58release notes

  • Reload the current page.

    0.0.58release notes

  • Resize the browser window.

    0.0.58release notes

  • Run a Playwright code snippet.

    0.0.58release notes

  • Save a screenshot of the current page or an element.

    0.0.58release notes

  • Select an option in a dropdown.

    0.0.58release notes

  • Delete session data along with its profiles.

    0.0.58release notes

  • Stop a named session.

    0.0.58release notes

  • Capture a page snapshot to obtain an element reference.

    0.0.58release notes

  • List all tabs.

    0.0.58release notes

  • Select a browser tab by index.

    0.0.58release notes

  • Start trace recording.

    0.0.58release notes

  • Uncheck a checkbox or radio button.

    0.0.58release notes

  • Upload one or multiple files.

    0.0.58release notes

  • A token-efficient CLI mode for Playwright is available for coding agents and interactive use.

    0.0.58release notes

Fixes and other changes 84

  • Returns readable representations of BigInt, NaN, Infinity, undefined and circular objects instead of losing values or failing JSON serialization; JSON-compatible results keep their format.

    0.0.85release notes

  • In browsers launched by the server, HTTP URLs stay on HTTP instead of Chrome automatically upgrading them to HTTPS.

    0.0.85release notes

  • Snapshots retain identifying names on containers and table headers when the naming text also appears among their children.

    0.0.85release notes

  • Full-page screenshots now work on standalone SVG documents instead of waiting for a nonexistent HTML body.

    0.0.85release notes

  • Channel-based connections now use the WebSocket path advertised in DevToolsActivePort.

    0.0.85release notes

  • Extension profile lookup now respects this Linux config directory environment variable.

    0.0.85release notes

  • Tool responses report when a page closes before its snapshot is captured and explain when Chrome detached the debugger because of an unsupported frame.

    0.0.85release notes

  • Element tools recognize form-associated custom elements through native label associations, including for attributes and nested labels; accessible names use associated labels too.

    0.0.85release notes

  • Extension connections no longer overwrite the existing browser's font settings, avoiding unexpected changes to page rendering.

    0.0.85release notes

  • Snapshots and role locators include selected-option text when a custom listbox uses a mixed-case aria-selected value such as TRUE.

    0.0.85release notes

  • Tool calls no longer hang during settling delays when page timers are throttled, paused or otherwise unable to run.

    0.0.85release notes

  • Names containing ~, .inf, and .nan remain strings rather than being parsed as null or special floating-point values.

    0.0.84release notes

  • Snapshots and role locators recognize tab- or newline-separated label IDs and labels assigned through ariaLabelledByElements, while retaining attribute-based labels in older browsers.

    0.0.84release notes

  • Reported message counts are now consistent with the existing all option.

    0.0.84release notes

  • Domain and path filtering now respects boundaries instead of matching unrelated names such as notexample.com or /apiary.

    0.0.84release notes

  • An explicit domain is requested when the current page has no hostname.

    0.0.84release notes

  • A dialog opened during history navigation is reported instead of causing a timeout.

    0.0.84release notes

  • Scheme-less hosts with ports are handled, and loopback addresses use HTTP.

    0.0.84release notes

  • Request indexes remain stable across navigations, so earlier requests can still be addressed.

    0.0.84release notes

  • Windows drive-letter colons are no longer mistaken for the line-number separator.

    0.0.84release notes

  • Route handler exceptions are reported once and verbatim, without wrapping non-Error values in another error.

    0.0.84release notes

  • Snapshots retain an iframe's contents when the iframe element also contains fallback text.

    0.0.84release notes

  • Snapshots and role locators recognize mixed-case role and ARIA state values, including checked, pressed, and expanded states.

    0.0.84release notes

  • Reports a dialog opened during page load instead of timing out.

    0.0.83release notes

  • The server no longer crashes when the browser is closed during a download.

    0.0.83release notes

  • Reports when time is capped at 30 seconds.

    0.0.83release notes

  • Reaps orphaned browser processes.

    0.0.83release notes

  • Accessible names that look like regexes are quoted.

    0.0.83release notes

  • Tools no longer stay bound to a stale tab or frame.

    0.0.83release notes

  • A failed upload, such as for a missing file, reports the error and keeps the file chooser open so it can be retried.

    0.0.82release notes

  • The tool returns an error for a header that is not in Name: Value form instead of setting a header named an empty string.

    0.0.82release notes

  • For origins with an active service worker, the tool no longer runs the site's own scripts or fails when they redirect.

    0.0.82release notes

  • Returns an error when the browser context is shared instead of breaking the calling client's session.

    0.0.81release notes

  • Resolves relative paths against the workspace root.

    0.0.81release notes

  • With shared browser context enabled, keeps each client's recording separate instead of delivering one client's recorded actions to another.

    0.0.81release notes

  • In extension mode, a connection that never completes now fails after 30 seconds with a hint instead of hanging the tool call.

    0.0.81release notes

  • Drops the cached browser backend after closing a shared browser context, so subsequent tool calls from the same client no longer fail.

    0.0.80release notes

  • When connected to a remote endpoint, reports the browser actually running remotely instead of the configured one.

    0.0.80release notes

  • The setting from the config file is no longer clobbered.

    0.0.80release notes

  • The heartbeat is not run for HTTP clients that have not opened an event stream.

    0.0.80release notes

  • Orphaned browser preferences entries are no longer treated as an installed extension.

    0.0.80release notes

  • The user data directory setting is honored in extension mode.

    0.0.80release notes

  • Aria snapshot capture is skipped when the response discards it.

    0.0.79release notes

  • Surfaces the missing executable path when a browser isn't installed.

    0.0.79release notes

  • Clears the dialog modal state when a dialog is closed out of band.

    0.0.79release notes

  • Detects downloads through the download event instead of inferring them from net::ERR_ABORTED navigation errors.

    0.0.79release notes

  • Malformed JSON config is reported instead of silently falling back to INI parsing.

    0.0.79release notes

  • No longer crashes the response when navigation closes the last tab, such as on privileged pages.

    0.0.78release notes

  • CDP connections always pass noDefaults, preventing unwanted default context options when attaching.

    0.0.78release notes

  • Additional tab videos now preserve the configured output directory.

    0.0.78release notes

  • Page initialization is awaited before a screenshot taken immediately after opening.

    0.0.78release notes

  • Checks tracing state before stopping.

    0.0.77release notes

  • Passes the action timeout to waitFor calls.

    0.0.77release notes

  • A failed network request is listed only once.

    0.0.77release notes

  • Reports a missing ffmpeg distinctly from a missing browser.

    0.0.76release notes

  • Reports invalid tool arguments instead of failing opaquely.

    0.0.76release notes

  • The system now recovers from a page renderer crash.

    0.0.74release notes

  • The browser channel is now propagated when using the --extension path.

    0.0.73release notes

  • Dashboard annotate-screenshot now handles a null viewport.

    0.0.73release notes

  • Playwright MCP is now published to the official MCP Registry on each release, making it available through that registry.

    0.0.73release notes

  • Surfaces unhandled rejections instead of crashing the server.

    0.0.72release notes

  • Detects the installed extension in non-default Chrome profiles.

    0.0.72release notes

  • Disables the CDP timeout for extension connections so long handshakes do not fail.

    0.0.71release notes

  • Ensures --proxy-server overrides the proxy set in the config file.

    0.0.71release notes

  • Fixes file path validation in the storage state tool.

    0.0.69release notes

  • Fixes empty cdpHeaders from the environment overriding values in the config file.

    0.0.69release notes

  • Fixes executable location resolution in the browser extension.

    0.0.69release notes

  • Fixes inactivity timers not being armed for pending tabs.

    0.0.69release notes

  • Fixes the fs-based lock file not being respected for Chromium family browsers.

    0.0.69release notes

  • Fixes parsing header values that contain colons.

    0.0.69release notes

  • Fixes malformed Unicode characters in MCP tool responses.

    0.0.69release notes

  • Fixes persistent contexts incorrectly using per-session isolation.

    0.0.69release notes

  • Fixes non-deterministic right-click behavior caused by contextmenu and mouseup ordering.

    0.0.69release notes

  • Fixes console entries being printed when snapshot mode is set to none.

    0.0.69release notes

  • Fixes toWellFormed compatibility with Node.js 18.

    0.0.69release notes

  • Fixes verify tools not working inside iframes.

    0.0.69release notes

  • The Google Chrome extension is now available in the Chrome Web Store.

    0.0.67release notes

  • Fixes the CLI on Windows.

    0.0.60release notes

  • Improved messaging when the browser profile is already in use, including Windows-specific exit cases.

    0.0.56release notes

  • Improved diagnostics for missing system dependencies and suggested running playwright install-deps.

    0.0.56release notes

  • Fixed an issue where empty snapshots were sometimes written into .md files.

    0.0.53release notes

  • Fixed persistence of saveVideo in configs.

    0.0.53release notes

  • Fixed a failure affecting WSL clients connecting to a Windows server.

    0.0.45release notes

  • MCP suggests using relative paths for portability.

    0.0.43release notes