Playwright Server

by williamvd4
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Supports targeting elements on web pages using CSS selectors for operations like clicking, filling forms, taking screenshots, and extracting content

  • Allows execution of JavaScript code in the browser context through the playwright_evaluate tool, enabling manipulation of web page content and behavior

プレイライトサーバー MCP サーバー

\Playwrightツールを備えたMCPサーバー\

コンポーネント

リソース

サーバーは、次の機能を備えたシンプルなメモ保存システムを実装します。

  • 個々のノートにアクセスするためのカスタム note:// URI スキーム
  • 各ノートリソースには、名前、説明、text/plain mimetype があります。

プロンプト

サーバーは単一のプロンプトを提供します:

  • 要約ノート: 保存されているすべてのノートの要約を作成します
    • 詳細レベル(簡潔/詳細)を制御するためのオプションの「スタイル」引数
    • 現在のすべてのメモをスタイルの好みに合わせて組み合わせたプロンプトを生成します

ツール

サーバーは次のツールを実装します。

  • playwright_navigate : 指定されたURLへ移動します。アクティブなセッションがない場合、この操作は自動的に新しいセッションを作成します。
    • url引数 (文字列) が必要です。
  • playwright_screenshot : 現在のページまたは特定の要素のスクリーンショットを撮ります。
    • スクリーンショット ファイル名にはname引数 (文字列) が必要です。
    • スクリーンショットを撮影する要素のCSSセレクターを指定するためのオプションのselector引数(文字列)。セレクターが指定されていない場合は、ページ全体のスクリーンショットが撮影されます。
  • playwright_click : CSS セレクターを使用してページ上の要素をクリックします。
    • クリックする要素の CSS セレクターを指定するには、 selector引数 (文字列) が必要です。
  • playwright_fill : 入力フィールドに入力します。
    • 入力フィールドの CSS セレクターを指定するには、 selector引数 (文字列) が必要です。
    • 入力する値を指定するには、 value引数 (文字列) が必要です。
  • playwright_evaluate : ブラウザコンソールで JavaScript コードを実行します。
    • 実行する JavaScript コードを指定するには、 script引数 (文字列) が必要です。
  • playwright_click_text : ページ上の要素をテキストコンテンツでクリックします。
    • クリックする要素のテキスト コンテンツを指定するには、 text引数 (文字列) が必要です。
  • playwright_get_text_content : 表示されているすべての要素のテキスト コンテンツを取得します。
  • playwright_get_html_content : ページの HTML コンテンツを取得します。
    • 要素の CSS セレクターを指定するには、 selector引数 (文字列) が必要です。

構成

[TODO: 実装に固有の構成の詳細を追加する]

クイックスタート

インストール

クロードデスクトップ

MacOS の場合: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows の場合: %APPDATA%/Claude/claude_desktop_config.json

発達

建築と出版

配布用のパッケージを準備するには:

  1. 依存関係を同期し、ロックファイルを更新します。
uv sync
  1. パッケージディストリビューションをビルドします。
uv build

これにより、 dist/ディレクトリにソースとホイールのディストリビューションが作成されます。

  1. PyPI に公開:
uv publish

注: 環境変数またはコマンド フラグを使用して PyPI 資格情報を設定する必要があります。

  • トークン: --tokenまたはUV_PUBLISH_TOKEN
  • またはユーザー名/パスワード: --username / UV_PUBLISH_USERNAMEおよび--password / UV_PUBLISH_PASSWORD

デバッグ

MCPサーバーはstdio経由で実行されるため、デバッグが困難になる場合があります。最適なデバッグ環境を実現するには、 MCP Inspectorの使用を強くお勧めします。

次のコマンドを使用して、 npm経由で MCP Inspector を起動できます。

npx @modelcontextprotocol/inspector uv --directory C:\Users\YUNYING\Documents\project\python\mcp\playwright-server run playwright-server

起動すると、ブラウザでアクセスしてデバッグを開始できる URL がインスペクタに表示されます。

-
security - not tested
A
license - permissive license
-
quality - not tested

ブラウザ自動化ツールを提供する MCP サーバー。ユーザーは、Playwright を通じて Web サイトをナビゲートしたり、スクリーンショットを撮ったり、要素をクリックしたり、フォームに入力したり、JavaScript を実行したりできます。

  1. Components
    1. Resources
    2. Prompts
    3. Tools
  2. Configuration
    1. Quickstart
      1. Install
    2. Development
      1. Building and Publishing
      2. Debugging
    ID: 810q5ib4rv