npm @playwright/mcp 0.0.82
v0.0.82

4 hours ago

✨ Highlights

  • 🎬 Smooth 60 fps, styleable videosbrowser_start_video (opt-in via --caps=devtools) takes fps, so fps: 60 records smooth 60 fps videos instead of the default 25, and cursor: true renders an animated mouse cursor that travels to each action point and stays visible between actions. browser_video_show_actions takes a style with point, highlight and title CSS declarations; the action point marker and the target highlight are now only shown when styled. (microsoft/playwright#42752, microsoft/playwright#42758)
  • 🧰 WebMCP tools become real MCP tools — the tools a page registers through the WebMCP API now show up right in the tool list as webmcp_<tool>, with the page's own input schema and annotations, so an agent can call them directly and let the page do the work instead of driving its UI. The list follows the current tab, and clients get a tools/list_changed notification when it changes. This replaces browser_webmcp_list / browser_webmcp_call from v0.0.81, which are no longer exposed over MCP. Tool names, descriptions, schemas and results come from the page, so treat them as untrusted input. Pass --no-webmcp (config webmcp: false, env PLAYWRIGHT_MCP_WEBMCP=false) to opt out. WebMCP is experimental, see WebMCP in Chrome for how to enable it. (microsoft/playwright#42671)
  • 🌗 Switch between light and dark color scheme (microsoft/playwright#42243) — an agent working on a dark theme had no way to see it mid-session. The new browser_emulate_media tool emulates media features on the fly: colorScheme, reducedMotion, forcedColors, contrast and the media type (screen / print). Omitted parameters are left unchanged, null clears an override. (microsoft/playwright#42668)
  • 📁 Absolute paths in results (microsoft/playwright#42497) — links to snapshots, screenshots, console logs and downloads are relative to the workspace root, which a client without one cannot resolve. Pass --file-paths=absolute (config filePaths: "absolute", env PLAYWRIGHT_MCP_FILE_PATHS=absolute) to get absolute paths instead. (microsoft/playwright#42673)

🐛 Fixes

  • fix(mcp): keep upload modal and reject bad headers — a failed browser_file_upload (e.g. a missing file) reports the error and keeps the file chooser open so it can be retried, and browser_route (opt-in via --caps=network) returns an error for a header that is not in the Name: Value form instead of setting a header named "". (microsoft/playwright#42713)
  • fix(chromium): bypass service workers on the storage state pagebrowser_storage_state (opt-in via --caps=storage) no longer runs the site's own scripts, or fails when they redirect, for origins with an active service worker (microsoft/playwright#42656). (microsoft/playwright#42664, microsoft/playwright#42741)

📦 Upgrading

Configs that use @playwright/mcp@latest pick this release up on the next client restart. To pin it:

npx @playwright/mcp@0.0.82

Don't miss a new mcp release

NewReleases is sending notifications on new releases.