Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 36 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,42 @@ All notable changes to the Playwright MCP Server will be documented in this file
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.12] - 2025-12-12

### Added
- **Automatic Browser Installation**: Server now automatically detects and installs missing browser binaries on first use
- **Smart Browser Detection**: Detects when Chromium, Firefox, or WebKit executables are missing during launch
- **Auto-Install Function**: Added `installBrowsers()` function that runs `npx playwright install <browser>` automatically
- **Installation Progress**: Clear console messages showing installation progress and status
- **Error Recovery**: Graceful fallback with helpful manual installation instructions if auto-install fails
- **Timeout Protection**: 2-minute timeout for browser installation process
- **Browser Installation Documentation**: Updated README.md with automatic installation section and browser storage locations

### Changed
- **Package Updates**:
- Updated @modelcontextprotocol/sdk: 1.11.1 → 1.24.3 (major update)
- Updated playwright: 1.53.1 → 1.57.0
- Updated @playwright/browser-chromium: 1.53.1 → 1.57.0
- Updated @playwright/browser-firefox: 1.53.1 → 1.57.0
- Updated @playwright/browser-webkit: 1.53.1 → 1.57.0
- Updated @playwright/test: 1.53.1 → 1.57.0
- Updated express: 4.18.2 → 4.21.1 (patch update for stability)
- Updated mcp-evals: 1.0.18 → 2.0.1 (major update)
- **Security Improvement**: Removed `shell: true` from spawn() in browser installation for better security
- **Enhanced ensureBrowser()**: Wrapped browser launch in try-catch to detect missing executables
- **Improved Error Messages**: Better error messages when browsers are missing or installation fails

### Fixed
- **"Executable doesn't exist" Error**: Users no longer need to manually run `npx playwright install` before first use
- **First-Run Experience**: Server now works out of the box without any manual browser setup

### Technical Details
- All 150 tests passing with updated packages
- Zero configuration required - fully automatic browser installation
- Backward compatible - no breaking changes
- Installation attempt triggers on any "Executable doesn't exist" or "Failed to launch" errors
- Browser installation attempts in both initial launch and retry scenarios

## [1.0.11] - 2025-12-11

### Added
Expand Down
33 changes: 33 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,6 +116,39 @@ code-insiders --add-mcp '{"name":"playwright","command":"npx","args":["@executea

After installation, the ExecuteAutomation Playwright MCP server will be available for use with your GitHub Copilot agent in VS Code.

## Browser Installation

### Automatic Installation (Recommended)

The Playwright MCP Server **automatically installs browser binaries** when you first use it. When the server detects that a browser is missing, it will:

1. Automatically download and install the required browser (Chromium, Firefox, or WebKit)
2. Display installation progress in the console
3. Retry your request once installation completes

**No manual setup required!** Just start using the server, and it handles browser installation for you.

### Manual Installation (Optional)

If you prefer to install browsers manually or encounter any issues with automatic installation:

```bash
# Install all browsers
npx playwright install

# Or install specific browsers
npx playwright install chromium
npx playwright install firefox
npx playwright install webkit
```

### Browser Storage Location

Browsers are installed to:
- **Windows:** `%USERPROFILE%\AppData\Local\ms-playwright`
- **macOS:** `~/Library/Caches/ms-playwright`
- **Linux:** `~/.cache/ms-playwright`

## Configuration to use Playwright Server

### Standard Mode (stdio)
Expand Down
20 changes: 20 additions & 0 deletions docs/docs/release.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,26 @@ import YouTubeVideoEmbed from '@site/src/components/HomepageFeatures/YouTubeVide

# Release Notes

## Version 1.0.12 (December 2025)
- **Automatic Browser Installation**: No more manual setup required! The server now automatically detects and installs missing browsers
```bash
# Just run the server - browsers install automatically on first use
npx @executeautomation/playwright-mcp-server
```
- **Smart Browser Detection**: Automatically detects when Chromium, Firefox, or WebKit browsers are missing
- **Auto-Install Process**: Runs `npx playwright install <browser>` automatically when needed
- **Better User Experience**: Clear progress messages and helpful error messages if auto-install fails
- **Zero Configuration**: Works out of the box without running `npx playwright install` manually
- **Package Updates**:
- Updated @modelcontextprotocol/sdk: 1.11.1 → 1.24.3
- Updated Playwright packages: 1.53.1 → 1.57.0
- Updated express: 4.18.2 → 4.21.1
- Updated mcp-evals: 1.0.18 → 2.0.1
- **Security Improvement**: Removed shell execution for better security in browser installation
- **Test Coverage**: All 150 tests passing with no breaking changes

---

## Version 1.0.11 (December 2025)
- **Enhanced API Authentication**: Added Bearer token authentication support for all API methods (GET, POST, PUT, PATCH, DELETE)
```javascript
Expand Down
Loading
Loading