mcpField
S
Selenium MCP Server

Selenium MCP Server

ローカル
github.com/Raghvendra-Raghuvanshiブラウザ自動化073 週間前に更新

Selenium MCP Server について

Selenium MCP Serverは、Selenium WebDriverを通じてMCPクライアントからブラウザーを自動操作するサーバーです。複数のブラウザーに対応し、ページ移動、操作、情報収集、タブ管理を個人やチームのワークフローで利用できます。

主な機能

  1. 01Chrome、Firefox、Edge、Safariに対応
  2. 02ページ移動と操作
  3. 03アクセシビリティスナップショットとスクリーンショット
  4. 04ネットワークリクエストとコンソールの確認
  5. 05ブラウザータブの管理
  6. 06ヘッドレスモードと分離モード

活用シーン

  1. 01フォームの自動入力と送信
  2. 02ページ情報やリンクの収集
  3. 03CIでのブラウザータスク実行

MCP 対応

ページ移動、クリック、入力、スクリーンショット、タブ操作などのSeleniumブラウザー自動化ツールをMCPクライアントに公開します。クライアントからコマンドとして設定し、サーバーを起動できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"selenium": {
"command": "npx",
"args": [
"-y",
"selenium-mcp-server"
]
}
}
}
起動コマンドnpx -y selenium-mcp-server

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmselenium-mcp-server

ツール

6

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
urlstringはい移動先の URL

詳細

Selenium MCP サーバー

Selenium WebDriver を使用したブラウザー自動化のための Model Context Protocol(MCP)サーバーです。Playwright MCP と同様の標準プロトコルを介して、LLM やチームがブラウザーを自動化できます。

🚀 主な機能

  • マルチブラウザー対応(Chrome、Firefox、Edge、Safari)
  • チームで使いやすい設計:デフォルトでブラウザーを表示
  • MCP 準拠の API(移動、クリック、入力、スクリーンショットなど)
  • チームや CI への導入が簡単

📦 チームで使用するための MCP サーバーの公開

1. npm に公開する(チーム全体で利用する場合)
  • package.json が正しく設定されていることを確認します(下記を参照)
  • 次を実行します:
npm publish --access public
  • または、プライベートレジストリの場合:
npm publish --access restricted
2. インストールして実行する(すべてのチーム向け)
グローバルインストール(チームにおすすめ)
npm install -g selenium-mcp-server
selenium-mcp-server --browser chrome
または npx を使用する(インストール不要)
npx selenium-mcp-server@latest --browser chrome
3. MCP クライアントで設定する(例:Cursor、CI、カスタムクライアント)

.cursor/mcp.json または同等のファイルに追加します:

{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp-server",
      "args": ["--browser", "chrome"]
    }
  }
}
  • CI の場合は、サーバーをバックグラウンドプロセスとして実行し、クライアントからそのポートに接続します。

📝 新しいチーム向けの導入手順

  1. Node.js 18+ と Java 11+ をインストールします
  2. MCP サーバーをグローバルにインストールするか、npx を使用します
  3. npm パッケージ名と README をチームで共有します
  4. 設定例と使い方を共有します(上記を参照)
  5. サポートが必要な場合は、GitHub リポジトリの issue ページを利用します

公開用 package.json の例

{
  "name": "selenium-mcp-server",
  "version": "1.0.0",
  "description": "Selenium MCP server for browser automation",
  "main": "index.js",
  "bin": { "selenium-mcp-server": "index.js" },
  "repository": { "type": "git", "url": "https://github.com/your-org/selenium-mcp-server.git" },
  "author": "Your Name",
  "license": "MIT"
}

📋 利用可能なツール

  • browser_navigate - 任意の URL に移動
  • browser_snapshot - 要素参照を含む、ページのアクセシビリティスナップショットを取得
  • browser_click - スナップショット内の参照を使って要素をクリック
  • browser_type - 任意で送信しながら、フォームフィールドにテキストを入力
  • browser_wait_for - 指定した時間待機するか、テキストの表示または非表示を待機
  • browser_take_screenshot - 現在のページのスクリーンショットを撮影

🛠️ インストールとセットアップ

Cursor ユーザー向け
  1. Cursor の設定に追加します:

    • Cursor Settings → MCP → Add new MCP Server に移動します
    • 名前:selenium-mcp
    • コマンドの種類:command
    • コマンド:npx
    • 引数:["selenium-mcp-server@latest"]
  2. JSON で設定する方法:

{
  "mcpServers": {
    "selenium-mcp": {
      "command": "npx",
      "args": ["selenium-mcp-server@latest"]
    }
  }
}
その他の MCP クライアント向け

MCP クライアントで同じ設定パターンを使用します:

{
  "mcpServers": {
    "selenium-mcp": {
      "command": "npx",
      "args": ["selenium-mcp-server@latest"]
    }
  }
}
その他のインストール方法
クリックしてその他のインストール方法を表示
方法 1:ローカルインストール
npm install selenium-mcp-server
方法 2:グローバルインストール
npm install -g selenium-mcp-server

クイックスタート

🎯 インストール不要(推奨)
1. 設定を追加する

プロジェクトのルートに .cursor/mcp.json を作成します:

{
  "mcpServers": {
    "selenium": {
      "command": "npx",
      "args": [
        "selenium-mcp-server@latest",
        "--browser", "chrome"
      ]
    }
  }
}
2. Cursor を再起動する
  • Cursor を完全に終了します
  • Cursor を再起動します
  • npx がサーバーを自動的にダウンロードして実行します
その他のセットアップ方法
オプション A:ローカルインストール
1. プロジェクトにインストールする
npm install selenium-mcp-server
2. Cursor を設定する
{
  "mcpServers": {
    "selenium": {
      "command": "node",
      "args": ["./node_modules/selenium-mcp-server/dist/index.js", "--browser", "chrome", "--headless"]
    }
  }
}
オプション B:グローバルインストール
1. グローバルにインストールする
npm install -g selenium-mcp-server
2. Cursor を設定する
{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp",
      "args": ["--browser", "chrome", "--headless"]
    }
  }
}
3. Cursor で使用する

Cursor にブラウザーの自動化を依頼します:

  • 「google.com に移動してスクリーンショットを撮って」
  • 「example.com の問い合わせフォームに入力して」
  • 「現在のページからすべてのリンクを抽出して」

設定オプション

selenium-mcp [options]

Options:
  --browser <browser>        Browser to use (chrome, firefox, edge, safari) (default: "chrome")
  --headless                 Run browser in headless mode
  --executable-path <path>   Path to browser executable
  --user-data-dir <path>     Path to user data directory
  --isolated                 Keep browser profile in memory
  --viewport-size <size>     Browser viewport size (e.g., 1280,720)
  --output-dir <path>        Path to directory for output files
  -h, --help                 Display help for command

利用可能なツール

ナビゲーション
  • browser_navigate - URL に移動
  • browser_navigate_back - 履歴を戻る
  • browser_navigate_forward - 履歴を進む
ページ操作
  • browser_click - 要素をクリック
  • browser_type - 入力欄にテキストを入力
  • browser_hover - 要素にマウスカーソルを合わせる
  • browser_drag - 要素をドラッグ&ドロップ
  • browser_select_option - ドロップダウンのオプションを選択
  • browser_press_key - キーボードのキーを押す
情報収集
  • browser_snapshot - アクセシビリティツリーを取得
  • browser_take_screenshot - スクリーンショットを撮影
  • browser_network_requests - ネットワークリクエストの一覧を取得
  • browser_console_messages - コンソールメッセージを取得
タブ管理
  • browser_tab_list - 開いているタブを一覧表示します
  • browser_tab_new - 新しいタブを開きます
  • browser_tab_select - タブを切り替えます
  • browser_tab_close - タブを閉じます
ユーティリティ
  • browser_wait_for - 要素やテキストが表示されるまで待機します
  • browser_file_upload - ファイルをアップロードします
  • browser_handle_dialog - アラートやダイアログを処理します
  • browser_resize - ブラウザーウィンドウのサイズを変更します
  • browser_pdf_save - ページを PDF として保存します

使用例

基本的なナビゲーションとスクリーンショット
// In Cursor, ask:
"Navigate to https://example.com and take a screenshot"
フォーム操作
// In Cursor, ask:
"Go to the contact page and fill out the form with name 'John Doe' and email '[email protected]'"
データ抽出
// In Cursor, ask:
"Visit the product page and extract all product names and prices"

要件

  • Node.js 18+
  • Java 11+(Selenium WebDriver 用)
  • ブラウザードライバー(WebDriverManager によって自動管理されます)

設定例

ローカル開発
{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp",
      "args": ["--browser", "chrome"]
    }
  }
}
ヘッドレス環境での本番運用
{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp",
      "args": [
        "--browser", "chrome",
        "--headless",
        "--viewport-size", "1920,1080"
      ]
    }
  }
}
カスタムブラウザーパス
{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp",
      "args": [
        "--browser", "chrome",
        "--executable-path", "/path/to/chrome"
      ]
    }
  }
}

トラブルシューティング

ブラウザーが見つからない

ブラウザーが見つからないというエラーが発生した場合:

  1. ブラウザー(Chrome、Firefox など)をインストールします
  2. --executable-path を使用してブラウザーの場所を指定します
  3. Java がインストールされ、アクセス可能であることを確認します
権限の問題

macOS では、アクセシビリティ権限の付与が必要な場合があります:

  1. システム環境設定 > セキュリティとプライバシー > プライバシーに移動します
  2. 「アクセシビリティ」を選択します
  3. ターミナルアプリケーションを追加します
メモリの問題

大きなページや長時間実行するセッションの場合:

{
  "mcpServers": {
    "selenium": {
      "command": "selenium-mcp",
      "args": ["--isolated", "--headless"]
    }
  }
}

コントリビューション

  1. リポジトリをフォークします
  2. 機能ブランチを作成します
  3. 変更を加えます
  4. テストを追加します
  5. プルリクエストを送信します

ライセンス

MIT ライセンス - 詳細は LICENSE ファイルを参照してください。

関連プロジェクト

参考資料

詳細については、CONTRIBUTING.md と TEAM_SETUP_GUIDE.md を参照してください

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。