Playwright MCPをクラウド環境で疑似再現してみた

2026.03.02
Playwright MCPをクラウド環境で疑似再現してみた

はじめに

MS開発部の松坂です。

今回は、PlaywrightのModel Context Protocol(MCP)を実際に触ってみて、その仕組みをAzure Container Apps上で疑似的に再現してみました。
手元でMCPを確認した後、Pythonでサンプルモデルを作成し、Azure上にデプロイ。最後にAzure AI Foundryと接続して動作確認まで行った手順をまとめます。

Playwright MCPとは?

Playwright MCP は、LLM がブラウザを操作できるようにするための MCP サーバーです。
AI の指示を受けて Playwright を介してページを開く・クリックする・入力するなどの操作が可能になります。
通常はローカルで Node.js を使って MCP サーバーを立て、それをエージェント側(Copilot/Claude/Cursor 等)に接続して使います。

MCPに関する詳細についても別ブログで紹介しています。気になる方はそちらをご覧ください。
データは揃っているのに動けない——そのボトルネック、MCPで可視化できます – 株式会社ディープコム

Playwright MCPをAzure AI Foundryで使うには制限がある

ローカルでは MCP 経由で AI がブラウザ操作できるのに、クラウド上だとすぐには動きません。
理由は以下の通りです。
  1. ブラウザ操作が制限される
    クラウド環境では直接ブラウザを起動するのが難しい
  2. ローカル依存の構成
    MCP が Node.js 環境やファイルに依存している
  3. セキュリティ・ネットワーク制約
    外部アクセスやポートの開放が制限される場合がある
このままでは「ローカルでは動くがクラウドでは動かない」という状況が続きます。

そこで、作ってみた

  • クラウドに MCP サーバーを立ててみる
    • Azure Container Apps に Docker化した自作 Playwright MCP をデプロイ
    • Foundry から外部エンドポイントとして接続
  • Foundry MCP Server の代替案も確認
    • Playwright MCP と同等のブラウザ操作はできないが、AI エージェントの呼び出しは可能

まずは手元でMCPを試す

まず、公式のPlaywright MCPツールを手元で動かしてみました。

① Playwrightのインストール

まずはPlaywrightをインストールします。 これでブラウザ実行環境がローカルにセットアップされます。

② Visual Studio Code + GitHub Copilot でMCPを有効化

今回は、Visual Studio Code 上で GitHub Copilot を利用してMCPを試しました。
CopilotのMCP設定に、以下のサーバー定義を追加します。 設定を保存し、MCP サーバーを有効化します。

③ MCPを実行

有効化後は、そのまま実行するだけでMCP サーバーが起動します。

特に面白かったのは、
MCPを有効にした状態で詳細情報を確認すると、利用可能な関数一覧が見られること です。
ここで
  • どのような操作が可能なのか
  • どのような引数を取るのか
  • どんな形式でレスポンスが返るのか
を事前に把握できました。

Azure Container Apps環境の準備

Azure上でMCPを疑似再現するために、次のリソースを作成しました。

リソースグループ コンテナアプリ環境

PythonでPlaywright MCPを疑似再現

以降のコードは以下のサイトを参考に作成しました。
記載されているコードから変更した箇所を説明します。
https://techcommunity.microsoft.com/blog/appsonazureblog/host-remote-mcp-servers-in-azure-container-apps/4403550

1. Dockerコンテナの修正

Dockerfileにてuvによるパッケージインストール時にPlaywrightのインストールするよう追記します。 pyproject.tomlにおいても合わせてPlaywrightを追加します。

2. Pythonファイルの作成・修正

次にPythonファイルを新たに作成し、Playwrightのツールを作成していきます。
作成したファイルの一部を記載します。 このように先ほどVisual Studio Codeから確認できたツールを一つ一つ再現しました。
次に main.pyを修正します。

3. デプロイ

こちらのプロジェクトをAzure Container Apps にデプロイします。

Azure AI Foundryとの接続と動作確認

Azure AI Foundryで新たにエージェントを作成し、ツールの追加を行います。
ツール追加時は以下のように設定をします

これで、Azure AI Foundry上での設定が完了です。

設定したエージェントで Playwright を実行するチャットを行うことで、自作の Playwright MCP が起動することを確認できました。

まとめ

  • Playwright MCPの概念を手元で確認
  • Azure Container Apps上でPythonを使って疑似再現
  • Azure AI Foundryから接続して動作確認
今回の検証で、「MCPを模した軽量サーバを作るだけでAzure上でも統一的なモデル操作が可能」ということがわかりました。
今後は、より複雑なモデルや実データとの連携も試してみたいです。

参考

以上、最後までご愛読いただき
ありがとうございました。

お問い合わせは、
以下のフォームへご連絡ください。

お問い合わせ

PAGETOP