mcpField
M
MCP Browser Automation Server

MCP Browser Automation Server

ローカル
github.com/weir1ブラウザ自動化086 週間前に更新

MCP Browser Automation Server について

MCP Browser Automation Serverは、HTTP APIでブラウザーセッションを操作し、ページ移動、スクリーンショット、クリック、フォーム入力を行います。コンソールログのリアルタイム監視を伴う自動化にも利用できます。

主な機能

  1. 01ブラウザーセッションの作成と終了
  2. 02URLへの移動
  3. 03ページ全体または要素の撮影
  4. 04要素のクリックと入力欄への記入
  5. 05WebSocketによるログ配信

活用シーン

  1. 01ブラウザー移動とフォーム入力の自動化
  2. 02ページ全体または要素の撮影
  3. 03セッション中のコンソール出力監視

MCP 対応

プロジェクト名はMCPサーバーを示していますが、READMEにはREST APIとWebSocketによるブラウザー操作が記載され、MCPツールや通信方式の説明はありません。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP ブラウザー自動化サーバー

REST API を通じてブラウザーを操作し、スクリーンショットを撮影し、コンソールログを監視できる、シンプルながら強力なブラウザー自動化サーバーです。

機能

  • ブラウザーセッションを作成する
  • URL に移動する
  • スクリーンショットを撮影する(ページ全体または特定の要素)
  • 要素をクリックする
  • フォーム入力欄に入力する
  • WebSocket を通じてコンソールログをリアルタイムで監視する
  • セッションを終了する

インストール

  1. このリポジトリをクローンします:
git clone https://github.com/weir1/mcp-browser-automation.git
cd mcp-browser-automation
  1. 仮想環境を作成して有効化します:
python -m venv venv
.\venv\Scripts\Activate
  1. 依存関係をインストールします:
pip install -r requirements.txt
  1. Playwright のブラウザーをインストールします:
playwright install

使用方法

  1. サーバーを起動します:
python server.py

サーバーは http://localhost:8000 で起動します。

API エンドポイント

新しいセッションを作成する
POST /session/create
Response: { "session_id": "..." }
URL に移動する
POST /session/{session_id}/navigate?url=https://example.com
スクリーンショットを撮影する
POST /session/{session_id}/screenshot?name=screenshot1&selector=.my-element

セレクターが指定されていない場合は、ページ全体のスクリーンショットを撮影します。

要素をクリックする
POST /session/{session_id}/click?selector=.my-button
入力欄に入力する
POST /session/{session_id}/fill?selector=input[name="username"]&value=myuser
コンソールログを監視する
WebSocket /session/{session_id}/console
セッションを終了する
POST /session/{session_id}/close

Python での使用例

import requests
import websockets
import asyncio
import json

# Create a session
response = requests.post("http://localhost:8000/session/create")
session_id = response.json()["session_id"]

# Navigate to a URL
requests.post(f"http://localhost:8000/session/{session_id}/navigate?url=https://example.com")

# Take a screenshot
response = requests.post(f"http://localhost:8000/session/{session_id}/screenshot?name=example")
with open("screenshot.png", "wb") as f:
    f.write(response.content)

# Monitor console logs
async def monitor_console():
    async with websockets.connect(f"ws://localhost:8000/session/{session_id}/console") as ws:
        while True:
            message = await ws.recv()
            print(json.loads(message))

asyncio.get_event_loop().run_until_complete(monitor_console())

ライセンス

MIT

コメント

MCP は初めてですか?

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

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