Playwright MCP Server - NixOS Flake について
Playwright MCP Server - NixOS Flakeは、MicrosoftのPlaywright MCPサーバーをNixOS向けの開発環境としてまとめたものです。ChromeやFirefox、永続化するブラウザープロファイルが必要な開発者やAIエージェント環境向けで、デスクトップの既存プロファイルも取り込めます。
主な機能
- 01NixOS開発シェルとサーバーラッパー
- 02Chrome/ChromiumとFirefoxに対応
- 03ブラウザープロファイルの永続化
- 04既存デスクトッププロファイルの取り込み
- 05標準でヘッド付きモード
活用シーン
- 01NixOS開発シェルでPlaywright MCPを実行
- 02セッション間でブラウザープロファイルを保持
- 03既存のChromeまたはFirefoxプロファイルを取り込み
- 04Firefoxまたはヘッドレスモードを選択
MCP 対応
NixOS向けの設定でMicrosoftのPlaywright MCPサーバーをラップします。nix runで直接起動するか、Claude DesktopのMCPサーバーとして登録できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Playwright MCP Server - NixOS Flake
Playwright MCP(Model Context Protocol)サーバー向けの包括的な NixOS Flake 開発環境です。永続的なブラウザープロファイルを含む、Chrome と Firefox の完全なサポートを備えています。
特長
- ✅ Playwright MCP サーバーの完全なセットアップ:Microsoft の公式実装をベースにしています
- ✅ マルチブラウザー対応:Chrome/Chromium と Firefox の両方を利用できます
- ✅ プロファイルの永続化:セッション間でブラウザープロファイルを維持します
- ✅ デスクトッププロファイルの統合:デスクトップにある既存の Chrome/Firefox プロファイルをインポートできます
- ✅ NixOS との統合:すべての依存関係を含め、NixOS 向けに適切に設定されています
- ✅ 開発環境:すべてのツールを備えた、そのまま使える開発シェルです
- ✅ AI エージェント対応:AI エージェント向けの開発環境に URL として追加できます
クイックスタート
direnv を使う(推奨)
- このリポジトリをクローンするか、
flake.nixをプロジェクトにコピーします - direnv を有効にします:
direnv allow - ディレクトリに入ると、環境が自動的に有効になります
手動で有効にする
# Enter the development shell
nix develop
# Or run the MCP server directly
nix run
使用方法
MCP サーバーの実行
# Basic usage (headed mode, persistent profiles)
playwright-mcp-wrapped
# Headless mode
playwright-mcp-wrapped --headless
# Specify browser
playwright-mcp-wrapped --browser firefox
# With custom configuration
playwright-mcp-wrapped --config /path/to/config.json
# Server mode (for remote connections)
playwright-mcp-wrapped --port 8931
ブラウザープロファイルの設定
既存のデスクトップブラウザープロファイルを使うには、次の手順を実行します。
# Run the profile setup script
nix run .#setup-profiles
これにより、既存の Chrome/Chromium および Firefox のプロファイルが Playwright MCP のディレクトリにコピーされます。
- Chrome:
~/.local/share/playwright-mcp/chrome-profile - Firefox:
~/.local/share/playwright-mcp/firefox-profile
設定
この Flake には、カスタマイズ可能なデフォルト設定ファイルが含まれています。主な特長は次のとおりです。
- ブラウザー対応:Chromium と Firefox の両方に対応しています
- プロファイルの永続化:プロファイルはセッション間で保存されます
- ヘッドモード:デフォルトでブラウザーウィンドウが表示されます
- すべての機能に対応:すべての MCP 機能(タブ、PDF、履歴、待機、ファイル、インストール、テスト)が有効です
AI 開発環境での使用
この Flake を開発環境の URL として追加します。
{
"devEnvironments": {
"playwright-mcp": {
"url": "github:benjaminkitt/playwright-mcp-nix"
}
}
}
または、Claude Desktop の MCP 設定に追加します。
{
"mcpServers": {
"playwright": {
"command": "nix",
"args": ["run", "github:benjaminkitt/playwright-mcp-nix"]
}
}
}
アーキテクチャ
この Flake は次の機能を提供します。
- カスタム Playwright MCP パッケージ:Microsoft の Playwright MCP サーバーを、NixOS 固有の設定でラップします
- ブラウザーの統合:Playwright に対応した Chromium と Firefox を適切に設定します
- プロファイル管理:ブラウザープロファイルの永続化とデスクトップとの統合を処理するスクリプトを提供します
- 開発環境:すべての依存関係と便利な環境変数を備えた完全なシェルを提供します
ブラウザープロファイルの場所
デフォルトの場所
- Chrome/Chromium プロファイル:
~/.local/share/playwright-mcp/chrome-profile - Firefox プロファイル:
~/.local/share/playwright-mcp/firefox-profile
デスクトッププロファイルのソース
セットアップスクリプトは、次の場所で既存のプロファイルを探します。
- Chrome:
~/.config/google-chrome - Chromium:
~/.config/chromium - Firefox:
~/.mozilla/firefox(デフォルトプロファイル)
設定オプション
MCP サーバーは、コマンドライン引数を使って詳細に設定できます。
--allowed-origins # Semicolon-separated allowed origins
--blocked-origins # Semicolon-separated blocked origins
--browser # Browser to use: chrome, firefox, webkit, msedge
--headless # Run in headless mode
--user-data-dir # Custom profile directory
--viewport-size # Browser viewport size (e.g., "1920,1080")
--device # Device to emulate (e.g., "iPhone 15")
--proxy-server # Proxy server configuration
--storage-state # Path to storage state file
--isolated # Use isolated (non-persistent) profiles
--vision # Use screenshot mode instead of accessibility snapshots
--config # Path to JSON configuration file
トラブルシューティング
ブラウザーが見つからない
ブラウザーが見つからないというエラーが発生する場合は、次の手順を実行します。
nix run .#playwright-mcp -- --browser chromium
# or
export PLAYWRIGHT_BROWSERS_PATH=$(nix-build '<nixpkgs>' -A playwright-driver.browsers --no-out-link)
プロファイルの問題
ブラウザープロファイルが機能しない場合は、次の手順を実行します。
# Reset profiles
rm -rf ~/.local/share/playwright-mcp/
nix run .#setup-profiles
権限の問題
プロファイルディレクトリに書き込み権限があることを確認します。
chmod -R u+w ~/.local/share/playwright-mcp/
コントリビューション
この Flake は簡単に拡張できるように設計されています。コントリビューションできる主な領域は次のとおりです。
- ブラウザー対応:ブラウザー設定の追加
- プロファイル管理:プロファイルのインポート/エクスポート機能の強化
- 設定:より高度な設定管理
- 統合:さまざまな AI 開発環境との統合の改善
ライセンス
このプロジェクトは、基盤となる Playwright MCP サーバーと同じライセンス(Apache 2.0)に従います。
関連プロジェクト
- Microsoft Playwright MCP - 上流の MCP サーバー
- natsukium/mcp-servers-nix - MCP サーバー向けの Nix フレームワーク
- akirak/nix-playwright-mcp - Playwright MCP 向けの代替 Nix ラッパー
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。