Selenium MCP Server について
Selenium MCP Serverは、Selenium WebDriverを通じてMCPクライアントからブラウザーを自動操作するサーバーです。複数のブラウザーに対応し、ページ移動、操作、情報収集、タブ管理を個人やチームのワークフローで利用できます。
主な機能
- 01Chrome、Firefox、Edge、Safariに対応
- 02ページ移動と操作
- 03アクセシビリティスナップショットとスクリーンショット
- 04ネットワークリクエストとコンソールの確認
- 05ブラウザータブの管理
- 06ヘッドレスモードと分離モード
活用シーン
- 01フォームの自動入力と送信
- 02ページ情報やリンクの収集
- 03CIでのブラウザータスク実行
MCP 対応
ページ移動、クリック、入力、スクリーンショット、タブ操作などのSeleniumブラウザー自動化ツールをMCPクライアントに公開します。クライアントからコマンドとして設定し、サーバーを起動できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
6掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 移動先の 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 の場合は、サーバーをバックグラウンドプロセスとして実行し、クライアントからそのポートに接続します。
📝 新しいチーム向けの導入手順
- Node.js 18+ と Java 11+ をインストールします
- MCP サーバーをグローバルにインストールするか、npx を使用します
- npm パッケージ名と README をチームで共有します
- 設定例と使い方を共有します(上記を参照)
- サポートが必要な場合は、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 ユーザー向け
-
Cursor の設定に追加します:
Cursor Settings→MCP→Add new MCP Serverに移動します- 名前:
selenium-mcp - コマンドの種類:
command - コマンド:
npx - 引数:
["selenium-mcp-server@latest"]
-
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"
]
}
}
}
トラブルシューティング
ブラウザーが見つからない
ブラウザーが見つからないというエラーが発生した場合:
- ブラウザー(Chrome、Firefox など)をインストールします
--executable-pathを使用してブラウザーの場所を指定します- Java がインストールされ、アクセス可能であることを確認します
権限の問題
macOS では、アクセシビリティ権限の付与が必要な場合があります:
- システム環境設定 > セキュリティとプライバシー > プライバシーに移動します
- 「アクセシビリティ」を選択します
- ターミナルアプリケーションを追加します
メモリの問題
大きなページや長時間実行するセッションの場合:
{
"mcpServers": {
"selenium": {
"command": "selenium-mcp",
"args": ["--isolated", "--headless"]
}
}
}
コントリビューション
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更を加えます
- テストを追加します
- プルリクエストを送信します
ライセンス
MIT ライセンス - 詳細は LICENSE ファイルを参照してください。
関連プロジェクト
- Playwright MCP - Playwright を使用する類似のサーバー
- Model Context Protocol - プロトコルの仕様
- Selenium WebDriver - 基盤となるブラウザー自動化フレームワーク
参考資料
詳細については、CONTRIBUTING.md と TEAM_SETUP_GUIDE.md を参照してください
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。