mcpField
B
browser-use

browser-use

github.com/saik0s生産性972104 回インストール39 週間前に更新
リポジトリ

browser-use について

browser-useライブラリを基盤とするMCPサーバーで、ブラウザー操作、調査、データ抽出が必要なユーザー向けです。ブラウザーワークフローの学習と再利用に加え、バックグラウンドタスクの追跡やキャンセルにも対応します。

主な機能

  1. 01自然言語によるブラウザー操作
  2. 02複数ソースの調査とレポート作成
  3. 03Webページからの構造化データ抽出
  4. 04ブラウザースキルの学習と再利用
  5. 05バックグラウンドタスクの追跡とキャンセル

活用シーン

  1. 01Webフォームの入力と送信
  2. 02複数サイトの調査内容の整理
  3. 03Webページから一覧や項目を抽出
  4. 04長時間のブラウザータスクの監視

MCP 対応

MCPクライアントにブラウザー自動化、詳細調査、スキル管理、タスク管理のツールを提供します。クライアントはタスクを開始し、進捗や結果の確認、キャンセルを行えます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/saik0s/mcp-browser-use --skill browser-use

インストール後、Claude Code で/browser-useを入力して読み込まれたか確認します。

同梱ファイル.gitkeep

詳細

ブラウザー操作

browser-use ライブラリを活用した AI 搭載のブラウザー自動化により、ウェブ上での操作、調査、データ抽出を行います。

使用する場面

  • ウェブ上の操作を自動化する(フォームへの入力、ボタンのクリック、ページの移動)
  • 複数のウェブソースを対象に詳細な調査を行う
  • ウェブページから構造化データを抽出する
  • ブラウザーのワークフローを再利用可能なスキルとして学習し、再実行する
  • 長時間実行されるブラウザー自動化タスクを監視、管理する

主要なツール

run_browser_agent

AI を使用してブラウザー自動化タスクを実行します。スキルを使った実行、学習モード、バックグラウンドでのタスク実行に対応しています。

パラメーター:

  • task(string、必須) - ブラウザーで行う操作の自然言語による説明
  • max_steps(integer、任意) - エージェントのステップ数の上限(デフォルト:設定値)
  • skill_name(string、任意) - ヒントとして使用する、学習済みスキルの名前
  • skill_params(string または dict、任意) - スキルのパラメーター(JSON 文字列または dict)
  • learn(boolean、任意) - API を発見して抽出する学習モードを有効にする
  • save_skill_as(string、任意) - 学習したスキルの保存名(learn=True が必要)

戻り値: ブラウザー自動化タスクの結果です。学習モードでは、スキルの抽出状況も含まれます。

例:

# Basic usage
Search for "Claude Code plugins" on Google and summarize the top 3 results

# With max steps
Fill out the contact form at https://example.com/contact with my information
max_steps: 20

# Learning mode - discover and save a skill
Go to GitHub trending page and extract the top 5 repositories
learn: true
save_skill_as: github_trending

# Using a learned skill
task: Get trending Python repositories
skill_name: github_trending
skill_params: {"language": "python", "limit": 10}
run_deep_research

AI による検索と情報の統合を用いて、トピックを複数のソースから調査します。

パラメーター:

  • topic(string、必須) - 調査するトピックまたは質問
  • max_searches(integer、任意) - ウェブ検索回数の上限(デフォルト:設定値)
  • save_to_file(string、任意) - 調査レポートを保存する任意のファイルパス

戻り値: Markdown 形式の包括的な調査レポート

例:

# Basic research
What are the latest developments in AI-powered browser automation?

# With search limit
Research the security implications of CDP-based browser automation
max_searches: 10

# Save to file
Compare Playwright, Puppeteer, and Selenium for 2025
save_to_file: /path/to/research/browser-automation-comparison.md

スキル管理ツール

skill_list

利用可能な学習済みブラウザースキルをすべて、使用統計とともに一覧表示します。

パラメーター: なし

戻り値: 名前、説明、成功率、使用回数、最終使用日時を含むスキルの概要をまとめた JSON リスト

例:

{
  "skills": [
    {
      "name": "github_trending",
      "description": "Extract trending repositories from GitHub",
      "success_rate": 95.0,
      "usage_count": 20,
      "last_used": "2025-12-20T18:00:00"
    }
  ],
  "skills_directory": "/Users/user/.config/browser-skills"
}
skill_get

API エンドポイント、パラメーター、実行時のヒントなど、特定のスキルの詳細を取得します。

パラメーター:

  • skill_name(string、必須) - 取得するスキルの名前

戻り値: YAML 形式のスキル定義全体

例:

skill_name: github_trending
skill_delete

名前を指定して、学習済みスキルを削除します。

パラメーター:

  • skill_name(string、必須) - 削除するスキルの名前

戻り値: 成功またはエラーメッセージ

例:

skill_name: outdated_skill

タスク管理ツール

health_check

ブラウザー自動化サーバーが稼働しているか確認し、システム統計を取得します。

パラメーター: なし

戻り値: サーバーのヘルスステータス、稼働時間、メモリ使用量、実行中のタスクを含む JSON

応答例:

{
  "status": "healthy",
  "uptime_seconds": 3600.5,
  "memory_mb": 256.3,
  "running_tasks": 2,
  "tasks": [
    {
      "task_id": "a1b2c3d4",
      "tool": "run_browser_agent",
      "stage": "navigating",
      "progress": "5/100",
      "message": "Searching Google..."
    }
  ],
  "stats": {
    "total_completed": 45,
    "total_failed": 2,
    "avg_duration_sec": 32.1
  }
}
task_list

ブラウザー自動化タスクと調査タスクの最近の一覧を、フィルターを指定して表示します。

パラメーター:

  • limit(integer、任意) - 返すタスク数の上限(デフォルト:20)
  • status_filter(string、任意) - ステータスで絞り込みます:"running"、"completed"、"failed"、"pending"

戻り値: 最近のタスクの JSON リスト

例:

# List recent tasks
limit: 10

# List only running tasks
status_filter: running
limit: 5

# List failed tasks
status_filter: failed
task_get

入力、出力、進捗状況など、特定のタスクの詳細情報を取得します。

パラメーター:

  • task_id(string、必須) - タスク ID(完全な UUID または先頭部分で一致)

戻り値: タスクの詳細、タイムスタンプ、結果/エラーを含む JSON

例:

task_id: a1b2c3d4
task_cancel

実行中のブラウザーエージェントまたは調査タスクをキャンセルします。

パラメーター:

  • task_id(string、必須) - タスク ID(完全な UUID または先頭部分で一致)

戻り値: 成功ステータスとメッセージを含む JSON

例:

task_id: a1b2c3d4

よくあるワークフロー

ウェブ調査ワークフロー
  1. 調査する質問を指定して run_deep_research を使用します
  2. 情報が統合された Markdown レポートを確認します
  3. 特定のソースをさらに調べるには、run_browser_agent を使用します
  4. task_list で進捗状況を確認します
# Step 1: Deep research
run_deep_research
topic: What are the best practices for MCP server development in 2025?
max_searches: 8

# Step 2: Follow-up investigation
run_browser_agent
task: Go to the top-ranked article and extract code examples
フォーム自動化のワークフロー
  1. フォームの内容を説明するタスクを指定して、run_browser_agent を使用します
  2. URL がわかっている場合は指定し、わからない場合はエージェントに検索させます
  3. エージェントが移動し、フィールドに入力して送信します
  4. task_get を使用して完了を確認します
run_browser_agent
task: Fill out the contact form at https://example.com/contact with name "John Doe", email "[email protected]", and message "Request for demo"
max_steps: 30
スキルの学習と再利用
  1. learn: true を指定して run_browser_agent を実行し、API を見つけます
  2. エージェントがネットワーク呼び出しを記録し、パターンを抽出します
  3. save_skill_as を使用してスキルを保存します
  4. skill_list を使用して学習済みスキルを確認します
  5. skill_name パラメーターを指定して再利用すると、実行が速くなります
# Step 1: Learn a skill
run_browser_agent
task: Go to Hacker News and extract the top 10 stories with titles, URLs, and scores
learn: true
save_skill_as: hackernews_top_stories

# Step 2: List learned skills
skill_list

# Step 3: Reuse the skill (faster direct execution)
run_browser_agent
task: Get current top stories from Hacker News
skill_name: hackernews_top_stories
skill_params: {"limit": 5}
長時間実行タスクの管理
  1. ブラウザー自動化タスクを開始します(バックグラウンドで実行されます)
  2. task_list を使用してステータスを確認します
  3. task_get を使用して進捗の詳細を確認します
  4. 必要に応じて task_cancel を使用します
# Step 1: Start task
run_browser_agent
task: Research all articles on example.com blog and create a summary
max_steps: 200

# Step 2: Check progress
task_list
status_filter: running

# Step 3: Get details
task_get
task_id: a1b2c3d4

# Step 4: Cancel if needed
task_cancel
task_id: a1b2c3d4

高度な機能

スキルベースの実行

API エンドポイントを含むスキルを学習すると、AI エージェントを介さずに実行できる直接実行が利用可能になり、パフォーマンスが大幅に向上します。

  • 初回実行:エージェントがウェブサイトを調査します(60~120 秒)
  • スキル学習後:API パターンが抽出され、保存されます
  • 2 回目以降の実行:API を直接呼び出します(2~5 秒)

フォールバック動作: 直接実行に失敗した場合(認証が必要、API が変更されたなど)、エージェントベースの実行に自動的にフォールバックします。

進捗の追跡

run_browser_agent と run_deep_research は、どちらもリアルタイムの進捗追跡に対応しています。

  • ステップごとのナビゲーション更新
  • 進捗率(現在のステップ数/合計ステップ数)
  • 現在の段階(初期化中、移動中、抽出中、分析中)
  • タスクメッセージ(現在のアクションの説明)
バックグラウンドタスクへの対応

MCP クライアントからの要求に応じて、長時間実行タスクは自動的にバックグラウンドで実行されます。

  • タスクは SQLite データベースで追跡されます
  • サーバーの再起動後も保持されます
  • task_list と task_get を使用して、いつでもステータスを確認できます
  • task_cancel でキャンセルできます

設定

browser-use MCP サーバーは、~/.config/mcp-server-browser-use/config.json または環境変数で設定できます。主な設定項目は次のとおりです。

  • browser.headless - ブラウザーをヘッドレスモードで実行します(デフォルト:true)
  • browser.cdp_url - CDP 経由で外部の Chrome に接続します(任意)
  • agent.max_steps - デフォルトの最大ステップ数(デフォルト:100)
  • research.max_searches - デフォルトの調査検索回数(デフォルト:5)
  • skills.enabled - スキルの学習と実行を有効にします(デフォルト:true)
  • skills.directory - 学習済みスキルの保存先(デフォルト:~/.config/browser-skills/)

トラブルシューティング

サーバーが応答しない
# Check server health
health_check

# Check if server is running
# In terminal: mcp-server-browser-use status
タスクが停止または失敗する
# List running tasks
task_list
status_filter: running

# Get task details
task_get
task_id: <task_id>

# Cancel if stuck
task_cancel
task_id: <task_id>
スキルの実行に失敗する
# Get skill details to verify parameters
skill_get
skill_name: my_skill

# Try without skill to re-learn
run_browser_agent
task: <original task>
learn: true
save_skill_as: my_skill_v2

ベストプラクティス

  1. 最初に health_check を実行する - タスクを実行する前に、サーバーの準備ができていることを確認します
  2. 説明的なタスク名を使用する - AI が意図を明確に理解できるようにします
  3. 妥当な max_steps を設定する - 簡単なタスクでは 30~50、複雑な調査では 100~200 にします
  4. よく使うワークフローを学習させる - スキルベースの実行で時間を節約します
  5. 長時間のタスクを監視する - task_list と task_get を使用して進捗を追跡します
  6. 失敗したタスクを整理する - task_cancel を使用してリソースを解放します
  7. 調査結果をファイルに保存する - save_to_file を使用して調査レポートを保持します

制限事項

  • ブラウザー自動化を行うには、MCP サーバーがデーモンとして実行されている必要があります
  • CDP ベースのブラウザーは localhost 上で動作している必要があります(セキュリティ上の制限)
  • 自動化をブロックするウェブサイトもあります(robots.txt とレート制限を遵守してください)
  • スキルの学習には、タスクの正常な完了と API の検出が必要です
  • タスクのキャンセルが正常に完了するまで、数秒かかる場合があります

コメント