Skip to main content
Glama

Browser-Use MCP Server

ブラウザ用MCPサーバー

プロジェクトノート:このMCPサーバー実装は、ブラウザ使用/Web UIの基盤上に構築されています。コアブラウザ自動化ロジックと設定パターンは、元のプロジェクトから改変されています。

自然言語によるブラウザ制御と Web リサーチのためのモデル コンテキスト プロトコル (MCP) を実装した AI 駆動型ブラウザ自動化サーバー。

特徴

  • 🧠 MCP 統合- AI エージェント通信用の完全なプロトコル実装。
  • 🌐ブラウザ自動化- ページナビゲーション、フォーム入力、自然言語による要素の対話 ( run_browser_agentツール)。
  • 👁️視覚的理解- ビジョン対応 LLM のオプションのスクリーンショット分析。
  • 🔄状態の永続性- 複数の MCP 呼び出しにわたってブラウザー セッションを管理したり、ユーザーのブラウザーに接続したりするオプション。
  • 🔌マルチ LLM サポート- OpenAI、Anthropic、Azure、DeepSeek、Google、Mistral、Ollama、OpenRouter、Alibaba、Moonshot、Unbound AI と統合します。
  • 🔍ディープ リサーチ ツール- マルチステップの Web リサーチとレポート生成専用のツール ( run_deep_searchツール)。
  • ⚙️環境変数の設定- 環境変数を介して完全に設定可能です。
  • 🔗 CDP 接続- Chrome DevTools プロトコルを介してユーザーが起動した Chrome/Chromium インスタンスに接続して制御する機能。

クイックスタート

前提条件

  • Python 3.11以上
  • uv (高速 Python パッケージインストーラー): pip install uv
  • Chrome/Chromiumブラウザがインストールされている
  • Playwrightブラウザをインストールします: uv sync実行してからuv run playwright install

MCP クライアントとの統合 (例: Claude Desktop)

Claude Desktopなどのクライアントをこのサーバーに接続するように設定できます。クライアントの設定(例: claude_desktop_config.json )に以下の構造を追加し、必要に応じてパスと環境変数を調整してください。

// Example for Claude Desktop config "mcpServers": { "browser-use": { // Option 1: Run installed package // "command": "uvx", // "args": ["mcp-server-browser-use"], // Option 2: Run from local development source "command": "uv", "args": [ "--directory", "/path/to/mcp-server-browser-use", "run", "mcp-server-browser-use" ], "env": { // --- CRITICAL: Add required API keys here --- "OPENROUTER_API_KEY": "YOUR_OPENROUTER_API_KEY", // "OPENAI_API_KEY": "YOUR_KEY_HERE_IF_USING_OPENAI", // "ANTHROPIC_API_KEY": "YOUR_KEY_HERE_IF_USING_ANTHROPIC", // ... add other keys based on MCP_MODEL_PROVIDER ... // --- Optional Overrides (defaults are usually fine) --- "MCP_MODEL_PROVIDER": "openrouter", // Use OpenRouter as provider "MCP_MODEL_NAME": "google/gemini-2.5-pro-exp-03-25:free", // Example OpenRouter model "BROWSER_HEADLESS": "true", // Default: run browser without UI "BROWSER_USE_LOGGING_LEVEL": "INFO", // --- Example for connecting to your own browser --- // "MCP_USE_OWN_BROWSER": "true", // "CHROME_CDP": "http://localhost:9222", // Ensure Python uses UTF-8 "PYTHONIOENCODING": "utf-8", "PYTHONUNBUFFERED": "1", "PYTHONUTF8": "1" } } }

重要: commandargs 、サーバーの実行方法(インストールされたパッケージまたはソースディレクトリ)を正しく指定していることを確認してください。env envで必要なAPIキーを設定してください。

MCPツール

このサーバーは、モデル コンテキスト プロトコルを介して次のツールを公開します。

同期ツール(完了を待つ)

  1. run_browser_agent
    • **説明:**自然言語指示に基づいてブラウザ自動化タスクを実行し、完了するまで待機します。MCP_ MCP_HEADLESS``MCP_``MCP_MAX_STEPS )。
    • 引数:
      • task (文字列、必須): 主なタスクまたは目的。
      • add_infos (文字列、オプション): エージェントの追加コンテキストまたはヒント ( customエージェント タイプで使用)。
    • 戻り値: (文字列) エージェントによって抽出された最終結果またはエラー メッセージ。
  2. run_deep_search
    • **説明:**特定のトピックについて詳細なウェブ調査を行い、レポートを生成して完了を待ちます。MCP_RESEARCH_ MCP_RESEARCH_始まる設定と、 BROWSER_一般的な設定(例: BROWSER_HEADLESS )を使用します。
    • 引数:
      • research_task (文字列、必須): 研究のトピックまたは質問。
      • max_search_iterations (整数、オプション、デフォルト: 10): 最大検索サイクル。
      • max_query_per_iteration (整数、オプション、デフォルト: 3): サイクルあたりの最大検索クエリ数。
    • 戻り値: (文字列) ファイル パスまたはエラー メッセージを含む、Markdown 形式で生成された調査レポート。

設定(環境変数)

環境変数を使用してサーバーを設定します。これらの環境変数はシステム内で設定することも、プロジェクトルートにある.envファイルに配置することもできます。

変数説明必須?デフォルト値サンプル値
LLM設定
MCP_MODEL_PROVIDER使用するLLMプロバイダー。以下のオプションを参照してください。はいanthropicopenrouter
MCP_MODEL_NAME選択したプロバイダーの特定のモデル名。いいえclaude-3-7-sonnet-20250219anthropic/claude-3.7-sonnet
MCP_TEMPERATURELLM温度(0.0~2.0)。ランダム性を制御します。いいえ0.00.7
MCP_TOOL_CALLING_METHODツール呼び出しメソッド('auto'、'json_schema'、'function_calling')。 run_browser_agentに影響します。いいえautojson_schema
MCP_MAX_INPUT_TOKENSrun_browser_agentの LLM コンテキストの最大入力トークン。いいえ12800064000
MCP_BASE_URLオプション: LLM プロバイダーのベース URL の一般的なオーバーライド。いいえプロバイダー固有http://localhost:8080/v1
MCP_API_KEYオプション: LLM プロバイダーの API キーの一般的なオーバーライド (プロバイダー固有のキーよりも優先されます)。いいえ-sk-...
プロバイダーAPIキーMCP_API_KEYが設定されていない場合は、 MCP_MODEL_PROVIDERに基づいて必須です。
OPENAI_API_KEYOpenAI の API キー。使用する場合-sk-...
ANTHROPIC_API_KEYAnthropic の API キー。使用する場合-sk-ant-...
GOOGLE_API_KEYGoogle AI (Gemini) の API キー。使用する場合-AIza...
AZURE_OPENAI_API_KEYAzure OpenAI の API キー。使用する場合-...
DEEPSEEK_API_KEYDeepSeek の API キー。使用する場合-sk-...
MISTRAL_API_KEYMistral AI の API キー。使用する場合-...
OPENROUTER_API_KEYOpenRouter の API キー。使用する場合-sk-or-...
ALIBABA_API_KEYAlibaba Cloud (DashScope) の API キー。使用する場合-sk-...
MOONSHOT_API_KEYMoonshot AI の API キー。使用する場合-sk-...
UNBOUND_API_KEYUnbound AI の API キー。使用する場合-...
プロバイダーエンドポイントオプション: デフォルトの API エンドポイントをオーバーライドします。
OPENAI_ENDPOINTOpenAI API エンドポイント URL。いいえhttps://api.openai.com/v1
ANTHROPIC_ENDPOINTAnthropic API エンドポイント URL。いいえhttps://api.anthropic.com
AZURE_OPENAI_ENDPOINTAzure を使用する場合は必須です。Azureリソースのエンドポイント。使用する場合-https://res.openai.azure.com/
AZURE_OPENAI_API_VERSIONAzure API バージョン。いいえ2025-01-01-preview2023-12-01-preview
DEEPSEEK_ENDPOINTDeepSeek API エンドポイント URL。いいえhttps://api.deepseek.com
MISTRAL_ENDPOINTMistral API エンドポイント URL。いいえhttps://api.mistral.ai/v1
OLLAMA_ENDPOINTOllama API エンドポイント URL。いいえhttp://localhost:11434http://ollama.local:11434
OPENROUTER_ENDPOINTOpenRouter API エンドポイント URL。いいえhttps://openrouter.ai/api/v1
ALIBABA_ENDPOINTAlibaba (DashScope) API エンドポイント URL。いいえhttps://dashscope...v1
MOONSHOT_ENDPOINTMoonshot API エンドポイント URL。いいえhttps://api.moonshot.cn/v1
UNBOUND_ENDPOINTバインドされていない AI API エンドポイント URL。いいえhttps://api.getunbound.ai
オラマ特有の
OLLAMA_NUM_CTXOllama モデルのコンテキスト ウィンドウのサイズ。いいえ320008192
OLLAMA_NUM_PREDICTOllama モデルを予測するための最大トークン。いいえ10242048
エージェント設定 ( run_browser_agent )
MCP_AGENT_TYPErun_browser_agentのエージェント実装 ('org' または 'custom')。いいえorgcustom
MCP_MAX_STEPSエージェント実行あたりの最大ステップ数。いいえ10050
MCP_USE_VISIONビジョン機能(スクリーンショット分析)を有効にします。いいえtruefalse
MCP_MAX_ACTIONS_PER_STEPエージェント ステップあたりの最大アクション数。いいえ510
MCP_KEEP_BROWSER_OPENrun_browser_agent呼び出し間で、サーバーによって管理されるブラウザを開いたままにします ( MCP_USE_OWN_BROWSER=falseの場合)。いいえfalsetrue
MCP_ENABLE_RECORDINGrun_browser_agentの Playwright ビデオ録画を有効にします。いいえfalsetrue
MCP_SAVE_RECORDING_PATHエージェント実行ビデオ録画を保存するパス ( MCP_ENABLE_RECORDING=trueの場合は必須)。録音する場合-./tmp/recordings
MCP_AGENT_HISTORY_PATHエージェント履歴 JSON ファイルを保存するディレクトリ。いいえ./tmp/agent_history./agent_runs
MCP_HEADLESSrun_browser_agentツール専用に UI なしでブラウザを実行します。いいえtruefalse
MCP_DISABLE_SECURITYrun_browser_agentツール専用のブラウザ セキュリティ機能を無効にします (慎重に使用してください)。いいえtruefalse
ディープリサーチ設定 ( run_deep_search )
MCP_RESEARCH_MAX_ITERATIONS深い調査のための最大検索反復。いいえ105
MCP_RESEARCH_MAX_QUERY反復ごとの最大検索クエリ数。いいえ35
MCP_RESEARCH_USE_OWN_BROWSERリサーチには別のブラウザ インスタンスを使用します ( MCP_USE_OWN_BROWSER=trueの場合はCHROME_CDPが必要です)。いいえfalsetrue
MCP_RESEARCH_SAVE_DIR研究成果物 (レポート、結果) を保存するためのディレクトリ。いいえ./tmp/deep_research/{task_id}./research_output
MCP_RESEARCH_AGENT_MAX_STEPSディープリサーチ内のサブエージェントの最大ステップ数。いいえ1015
ブラウザ設定(一般および特定のツールのオーバーライド)
MCP_USE_OWN_BROWSER新しいブラウザを起動するのではなく、 CHROME_CDP経由でユーザーのブラウザに接続するには、true に設定します。いいえfalsetrue
CHROME_CDPDevTools プロトコル URL 経由で既存の Chrome に接続します。MCP_USE_OWN_BROWSER MCP_USE_OWN_BROWSER=trueの場合に必須です。MCP_USE_OWN_BROWSER=true場合-http://localhost:9222
BROWSER_HEADLESSUIを表示せずにブラウザを実行します。主にrun_deep_search影響します。MCP_HEADLESS MCP_HEADLESS参照してください。いいえtruefalse
BROWSER_DISABLE_SECURITYブラウザの一般的なセキュリティ設定。MCP_DISABLE_SECURITY MCP_DISABLE_SECURITY参照してください。いいえfalsetrue
CHROME_PATHChrome/Chromium 実行可能ファイルへのパス。いいえ-/usr/bin/chromium-browser
CHROME_USER_DATAChrome ユーザー データ ディレクトリへのパス (永続セッション用、 CHROME_CDPで便利)。いいえ-~/.config/google-chrome/Profile 1
BROWSER_TRACE_PATHPlaywright トレース ファイルを保存するディレクトリ (デバッグに役立ちます)。いいえ./tmp/trace./traces
BROWSER_WINDOW_WIDTHブラウザウィンドウの幅(ピクセル)。いいえ12801920
BROWSER_WINDOW_HEIGHTブラウザウィンドウの高さ(ピクセル)。いいえ7201080
サーバーとログ
LOG_FILEサーバー ログ ファイルのパス。いいえmcp_server_browser_use.log/var/log/mcp_browser.log
BROWSER_USE_LOGGING_LEVELログレベル ( DEBUGINFOWARNINGERRORCRITICAL )。いいえINFODEBUG
ANONYMIZED_TELEMETRY匿名化されたテレメトリを有効/無効にします ( true / false )。いいえtruefalse

サポートされている LLM プロバイダー ( MCP_MODEL_PROVIDER ):

openaiazure_openaianthropicgooglemistralollamadeepseekopenrouteralibabamoonshotunbound

独自のブラウザへの接続(CDP)

サーバーが独自のブラウザインスタンスを起動・管理する代わりに、ユーザーが自分で起動・管理するChrome/Chromiumブラウザに接続できます。これは以下の場合に便利です。

  • 既存のブラウザ プロファイル (Cookie、ログイン、拡張機能) を使用します。
  • 自分のブラウザ ウィンドウで自動化を直接観察します。
  • 複雑なシナリオのデバッグ。

手順:

  1. **リモートデバッグを有効にしてChrome/Chromiumを起動します。**ターミナルまたはコマンドプロンプトを開き、お使いのOSに適したコマンドを実行します。これにより、Chromeは特定のポート(例:9222)で接続をリッスンするようになります。
    • macOS:
      /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
      (Chrome が他の場所にインストールされている場合はパスを調整してください)
    • リナックス:
      google-chrome --remote-debugging-port=9222 # or chromium-browser --remote-debugging-port=9222
    • Windows (コマンドプロンプト):
      "C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222
      (必要に応じてChromeのインストールパスを調整してください)
    • Windows (PowerShell):
      & "C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222
      (必要に応じてChromeのインストールパスを調整してください)

    **注:**ポート 9222 がすでに使用されている場合は、別のポート (例: 9223) を選択し、 CHROME_CDP環境変数で同じポートを使用します。

  2. 環境変数を構成する: MCP サーバーを起動する前に、 .envファイルまたはシステム環境で次の環境変数を設定します。
    MCP_USE_OWN_BROWSER=true CHROME_CDP=http://localhost:9222 # Use the same port you launched Chrome with
    • MCP_USE_OWN_BROWSER=true : ブラウザを起動するのではなく、既存のブラウザに接続するようにサーバーに指示します。
    • CHROME_CDP : サーバーがブラウザの DevTools プロトコル エンドポイントに接続できる URL を指定します。
  3. **MCP サーバーを実行します。**通常どおりサーバーを起動します。
    uv run mcp-server-browser-use

これで、 run_browser_agentまたはrun_deep_searchツールを使用すると、サーバーは新しいインスタンスを作成するのではなく、実行中の Chrome インスタンスに接続するようになります。

重要な考慮事項:

  • --remote-debugging-portで起動したブラウザは、MCP サーバーが実行中であり、MCP サーバーと対話する必要がある間は開いたままにしておく必要があります。
  • MCP サーバーが実行されている場所からCHROME_CDP URL にアクセスできることを確認します (同じマシンで実行されている場合は通常http://localhost:PORT )。
  • 独自のブラウザを使用する場合、サーバーはそのブラウザの状態(開いているタブ、ログイン中のセッションなど)を継承します。自動化を行う際は、この点にご注意ください。
  • MCP_HEADLESSBROWSER_HEADLESSMCP_KEEP_BROWSER_OPENなどの設定はMCP_USE_OWN_BROWSER=trueの場合無視されます。ウィンドウサイズはブラウザウィンドウによって決まります。

発達

# Install dev dependencies and sync project deps uv sync --dev # Install playwright browsers uv run playwright install # Run with debugger (Example connecting to own browser via CDP) # 1. Launch Chrome: google-chrome --remote-debugging-port=9222 # 2. Run inspector command: npx @modelcontextprotocol/inspector@latest \ -e OPENROUTER_API_KEY=$OPENROUTER_API_KEY \ -e MCP_MODEL_PROVIDER=openrouter \ -e MCP_MODEL_NAME=anthropic/claude-3.7-sonnet \ -e MCP_USE_OWN_BROWSER=true \ -e CHROME_CDP=http://localhost:9222 \ uv --directory . run mcp run src/mcp_server_browser_use/server.py # Note: Change timeout in inspector's config panel if needed (default is 10 seconds)

トラブルシューティング

  • ブラウザの競合: CHROME_CDP ( MCP_USE_OWN_BROWSER=false ) を使用していない場合、 CHROME_USER_DATAが指定されているときは、同じユーザー データ ディレクトリで競合する他の Chrome インスタンスが実行されていないことを確認してください。
  • CDP 接続の問題: MCP_USE_OWN_BROWSER=true使用している場合:
    • Chrome が--remote-debugging-portフラグを使用して起動されたことを確認します。
    • CHROME_CDPのポートが Chrome の起動時に使用されるポートと一致していることを確認します。
    • 指定されたポートへの接続をブロックするファイアウォールの問題を確認します。
    • ブラウザがまだ実行されていることを確認してください。
  • APIエラー:選択したMCP_MODEL_PROVIDERに正しいAPIキー環境変数( OPENAI_API_KEYANTHROPIC_API_KEYなど)が設定されているか、またはMCP_API_KEYが設定されていることを確認してください。キーとエンドポイントを確認してください(Azureの場合はAZURE_OPENAI_ENDPOINTが必要です)。
  • ビジョンの問題: ビジョン機能を使用する場合はMCP_USE_VISION=trueあり、選択した LLM モデルがビジョンをサポートしていることを確認します。
  • 依存関係の問題: uv syncを実行して、すべての依存関係が正しくインストールされていることを確認してくださいpyproject.tomlを確認してください。
  • ログ記録:詳細なエラーメッセージについては、 LOG_FILE (デフォルト: mcp_server_browser_use.log )で指定されたログファイルを確認してください。より詳細な出力を得るには、 BROWSER_USE_LOGGING_LEVELDEBUGに上げてください。

ライセンス

MIT - 詳細についてはライセンスを参照してください。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

ブラウザ使用ライブラリを通じて統合されたカスタム機能とエージェントベースのインタラクションにより、ブラウザの自動化を促進します。

  1. 特徴
    1. クイックスタート
      1. 前提条件
      2. MCP クライアントとの統合 (例: Claude Desktop)
    2. MCPツール
      1. 同期ツール(完了を待つ)
    3. 設定(環境変数)
      1. 独自のブラウザへの接続(CDP)
        1. 発達
          1. トラブルシューティング
            1. ライセンス

              Related MCP Servers

              • A
                security
                F
                license
                A
                quality
                Enables AI agents to interact with web browsers using natural language, featuring automated browsing, form filling, vision-based element detection, and structured JSON responses for systematic browser control.
                Last updated -
                1
                43
                Python
                • Linux
                • Apple
              • -
                security
                F
                license
                -
                quality
                Enables AI agents to control web browsers via a standardized interface for operations like launching, interacting with, and closing browsers.
                Last updated -
                0
                JavaScript
              • -
                security
                A
                license
                -
                quality
                Enables browser automation and real-time computer vision tasks through AI-driven commands, offering zero-cost digital navigation and interaction for enhanced web experiences.
                Last updated -
                0
                1
                JavaScript
                MIT License
              • -
                security
                A
                license
                -
                quality
                Empowers AI agents to perform web browsing, automation, and scraping tasks with minimal supervision using natural language instructions and Selenium.
                Last updated -
                1
                Python
                Apache 2.0
                • Apple

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/Saik0s/mcp-browser-use'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server