Playwright MCPを聞ってCopilotに徭失俐屎させたい

n-ozawan

峻さん、こんにちは。晦永蝕kグル`プの稼-看噛温敬温稼です。
歎嚏苧けを登僅する苧鳩な協吶はありません。なので、歎嚏苧けをk燕しない定もあり、その扮は仝歎嚏苧けを蒙協しない々として芝hされるそうです。

云籾です。
GitHub Copilotを聞ってコ`ドをくC氏がえました。コ`ドを伏撹させてみたものの、gHに咾してみると、こちらの峺幣宥りに伏撹されていないケ`スが朕に原きます。書指は、Playwright MCPを聞って、LLMに徭蛍で俐屎Y惚を_Jさせて、徭蛍で俐屎するような碧Mみをしてみました。

Playwright MCP

古勣

Playwright MCPは、Microsoftが_kしたMCPサ`バ`で、LLMがブラウザを荷恬することを辛嬬とします。LLMがPlaywright MCPを宥してブラウザを荷恬することにより、LLMが俐屎したコ`ドの強恬鳩範やE2Eテストなどが辛嬬となります。なお、書指の並ではQいませんが、というものもあります。まだ聞ったことはありませんが、コマンドでブラウザ荷恬ができるようです。

譜協

Playwright MCP を聞うための譜協をします。h廠はVS Code + GitHub Copilotです。.vscode/mcp.jsonにPlaywright MCPの譜協を峰します。

{
  "servers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}

お編しなので恷もシンプルな更撹にしています。オプションを峺協したい魁栽はを歌孚してください。

カスタムエ`ジェントを恬撹します。參和はサンプルです。ポイントは酷姻看稼岳馨温岳岳艶姻のtoolsplaywright/*を峺協するところと、返でPlaywright MCPで_Jするように峺幣しているところです。

---
name: "custom-agent"
description: |
  フロントエンドのソ`スコ`ドを俐屎した瘁、Playwright MCPにより強恬鳩範を佩い、
  屎しく俐屎が佩えるまでRり卦し俐屎するエ`ジェント
argument-hint: "恬撹および俐屎する坪否"
tools: ["read", "search", "edit", "playwright/*"]
agents: []
---

## 返

1. 俐屎鵑離秋`スファイルを蒙協し、俐屎圭をQ協する。
2. ソ`スコ`ドを俐屎する。
3. Playwright MCP で `localhost:8080` のg鮫中を_Jする。
4. g鮫中の_Jで}がある栽は、圻咀を蛍裂し俐屎をみる。

toolsplaywright/*は、Playwright MCPを宥した畠ての荷恬をS否する、という吭龍になります。峺協しない栽は仝S否しない々ということになりますので、カスタムエ`ジェントがPlaywright MCPを聞うことはありません。なお、playwright/*は仝なんでも或悪々な彜蓑ですので、g縞の匍暦では playwright/* を峺協しない圭が措いです。

強恬鳩範

カスタムエ`ジェントにコ`ド俐屎を卆mしたH、Playwright MCPを宥して、鮫中が雲れていないか、覿宥りにg廾できたかを_Jするようになりました。

ツ`ル

枠ほども峰べた宥り、toolsplaywright/*を峺協すると仝なんでも或悪々な彜蓑になります。晦晦珂が珂遺永をg佩する念には駅ず鳩範が函れるとは冱え、セキュリティにQ泣から伽いものがあります。また、ツ`ルの僉k岔が謹いと、粥鴛が屎しい荷恬を僉kできず、粥鴛の娼業にも唹譴靴泙后

參和は児云議なツ`ルの匯Eになります。駅勣なツ`ルのみを峺協するようにして、聞わないツ`ルは峺協しないようにしましょう。

兆念h苧
playwright/browser_click安艶恢ペ`ジ貧でクリック荷恬を佩う
playwright/browser_closeブラウザを液じる
playwright/browser_console_messagesコンソ`ルメッセ`ジを函誼する
playwright/browser_drag2つの勣殆寂でドラッグΕ疋蹈奪廚g佩する
playwright/browser_dropファイルまたは珂鴛珂掘タイプ峺協されたデ`タを勣殆貧にドロップします。
playwright/browser_evaluateペ`ジまたは勣殆貧で干温厩温皆界姻庄沿岳塀を得する
playwright/browser_file_upload1つまたは鹸方のファイルをアップロ`ドする
playwright/browser_fill_form鹸方のフォ`ムフィ`ルドに秘薦する
playwright/browser_findテキストや屎号燕屬砲茲碧を佩う
playwright/browser_handle_dialogダイアログをI尖する
playwright/browser_hoverペ`ジ貧の勣殆にマウスを栽わせる
playwright/browser_navigate峺協した雨檎晦を燕幣する
playwright/browser_navigate_back堕sの念のペ`ジにる
playwright/browser_network_requestリクエストの袁固蕷┐鯣ゝ辰垢
playwright/browser_network_requestsペ`ジiみzみ參週のリクエスト秤烏を函誼する
playwright/browser_press_keyキ`ボ`ドのキ`を兀和する
playwright/browser_resizeブラウザウィンドウのサイズを筝する
playwright/browser_run_code_unsafeコ`ドスニペットをg佩する
playwright/browser_select_optionプルダウンからオプションを僉kする
playwright/browser_snapshot嶬擇離擧`ジのアクセシビリティツリ`のスナップショットを函る
playwright/browser_take_screenshot嶬擇離擧`ジをキャプチャする
playwright/browser_type園鹿辛嬬な勣殆にテキストを秘薦する
playwright/browser_wait_for峺協した扮寂、棋字する
playwright/browser_tabsブラウザタブを恬撹や茅、僉kする

Playwright MCPには貧參翌にもDevToolsへのアクセス吉があります。d龍ある圭はをいてみてください。

エ`ジェントの娼業を互める圭隈にはいくつかありますが、その坪のひとつに仝ツ`ルを浙┐垢襦垢箸いΔ發里あります。粥鴛に僉k岔を謹く嚥えれば、それだけ謹くのことができるようになり、娼業も鯢呂垢襪繁爾錣譴ちです。しかしg縞のところは、僉k岔がえることで粥鴛のツ`ル僉協をミスする鳩楕がえるだけで、娼業が和がると冱われています。

また、playwright/browser_run_code_unsafeでは永鉛温霞敬姻庄乙鞄岳サ`バ`のプロセス坪で販吭の干温厩温皆界姻庄沿岳をg佩するため、喘伉して聞わないと裡です。そういった中においても、きちんとどれを聞うのか嚠め峺協することが嶷勣です。

おわりに

Playwright MCPを秘したことで、}jなUIのg廾を峺幣したとしても、Copilotがこちらの峺幣宥りにg廾をKえるまで、ひたすらRり卦しBるようになりました。GitHub Copilotは枠埖から愖腎n署崙に卞佩したこともあり、この咾がどれぐらいコストにいているのかは隆編^ですが、この宴旋さを岑ってしまったら、嶄?返慧せませんね。

ではまた。


Recommendおすすめブログ