0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WSL2にインストールしたPlaywright-mcpをClaudeDesktopから使えるようにする

0
Posted at

はじめに

最近Claudeが流行っているので色々試している中で、Playwright-mcpをClaudeDesktopから使えるよう設定するのに色々苦労したので同じように困っている人のためにメモとして残したいと思います。

環境

  • Windows 11
  • WSL v2.6.3.0 (Debian 13.4)
  • Claude Desktop for Windows v1.2773.0
  • WSL側でNode.js, Playwright(本体、MCPサーバ、ブラウザ)はインストール済とする

どんな問題が起きたか?

基本的にClaudeDesktopでPlaywright-mcpを使うためにやることは、各ツールのインストールとclaude_desktop_config.jsonの設定です。
たったそれだけのはずが3つの問題に遭遇し、思いのほか時間がかかってしまいました。。

  1. 公式通りにclaude_desktop_config.jsonを設定しても動かない
  2. WSLにツールをインストールした場合の実行方法が分かったが、nodeが見つからないエラー
  3. MCP自体はうまく動いたが、Claudeにスクショを撮ってもらうと権限エラーになる

最終的な結論

最終的にこちらの設定でうまく動作した。

claude_desktop_config.json
{
  "mcpServers": {
    "playwright": {
      "command": "wsl",
      "args": [
        "-d", "Debian",
        "--",
        "/usr/bin/env",
        "-C", "{任意のディレクトリパス(playwrightのスクショの保存先)}",
        "PATH={nodeのフルパス}:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
        "npx",
        "-y",
        "@playwright/mcp@latest"
      ]
    }
  }
}

問題への対処

どの問題もすべてclaude_desktop_config.jsonの記載方法で解決できました。

1. 公式通りにclaude_desktop_config.jsonを設定しても動かない

こちらはシンプルで、npxコマンドはWindows側にないため起きていたエラーでした。
npxの前にwslコマンドを打ってあげることで解決

修正Ver.1
{
  "mcpServers": {
    "playwright": {
      "command": "wsl",
      "args": [
        "npx",
        "@playwright/mcp@latest"
      ]
    }
  }
}

2. WSLにツールをインストールした場合の実行方法が分かったが、nodeが見つからないエラー

ここが今回一番詰まったところでした。
エラーログを見るとenv: ‘node’: No such file or directoryというエラーでしたが、WSL上でnodenpxが使えることは確認済。
フルパスを指定しなきゃいけないという記事を見つけ、npxのフルパスを入れてみましたがそれでもダメでした。(npxのパスはwhere npxコマンドで取得)
そこでClaudeにエラー原因を聞いてみると「おそらくnpxが内部のnodeを参照するときにエラーが出ており、WSL起動時のPATHnodeがないのが根本原因」と返答がありました。
wsl --でコマンドを打った場合、Windows側の環境変数しか見れないようです。
そのため、コマンドでPATHを渡してやることでMCPとのサーバとの接続ができました。

修正Ver.2
{
  "mcpServers": {
    "playwright": {
      "command": "wsl",
      "args": [
        "bash",
        "-c",
       "PATH={nodeのフルパス}:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin {npxのフルパス} @playwright/mcp@latest"
      ]
    }
  }
}

3. MCP自体はうまく動いたが、Claudeにスクショを撮ってもらうと権限エラーになる

MCPも接続できたのでexample.comのスクショを依頼したところ「playwright-mcpがWindows側のパス(/mnt/c/Windows/System32/)にディレクトリを作ろうとして失敗しています」という返事。
詳細を見ると権限エラーとなっていた。
これはplaywright-mcpがスクショの保存などを行うディレクトを作業ディレクトリ上に作成する仕様によるものと判明。
cdコマンド等を追加して、動作するディレクトリを管理者権限の不要な任意の場所に変えることで解決。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?