Yetibrowser Mcp について
アーカイブ済みのオープンソース MCP サーバーです。ブラウザー拡張機能を介して MCP クライアントを実際のタブに接続し、データをローカルに保ちながら自動操作やデバッグを行えます。
主な機能
- 01接続中のブラウザータブの自動操作
- 02移動、クリック、入力、フォーム入力
- 03ページスナップショットとスクリーンショットの取得
- 04コンソールログとページ状態の確認
- 05DOM とアクセシビリティスナップショットの比較
活用シーン
- 01MCP クライアントからのブラウザー操作の自動化
- 02ページ動作やコンソールエラーのデバッグ
- 03スナップショットと画像による UI 変更の確認
MCP 対応
Node ベースの MCP サーバーが Chrome または Firefox の拡張機能を介して、MCP クライアントを実行中のブラウザータブに接続します。移動、操作、スクリーンショット、ページ検査などのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
重要
このプロジェクトはアーカイブされています。Claude や Codex などの AI エージェントにブラウザー制御機能がなかったため、その課題を解決する目的で開発されましたが、現在は専用の MCP ベースのソリューションがなくても、エージェントにこれらの機能が組み込まれています。
YetiBrowser MCP
YetiBrowser MCP は、Browser MCP ワークフローを完全なオープンソースで実装したものです。Node ベースの MCP サーバーを Chrome/Firefox 拡張機能と連携させることで、Codex/Claude Code、Cursor、Windsurf、MCP Inspector、自作ツールなどの Model Context Protocol クライアントが、データをすべてお使いのマシン内に保持し、監査可能な状態で、実際のブラウザータブを自動操作できます。
YetiBrowser MCP を選ぶ理由
- 透明性が高く、自由に改変できます ― バイナリのダウンロードはありません。すべてのコンポーネントを調査、フォーク、拡張できます。
- ローカル優先 ― 拡張機能は localhost の MCP サーバーとのみ通信するため、閲覧データがお使いのデバイスの外部に送信されることはありません。
- クロスブラウザー対応 ― 共通ロジックにより Chrome と Firefox の両方のパッケージが動作します(Firefox ビルドは、Manifest V3 のサポート改善待ちのため、Mozilla が完全な MV3 API を提供するまでは接続時の操作が制限される可能性があります)。
- 開発者向けツール ― デバッグと QA 向けに、より詳細なコンソールキャプチャ、DOM 差分、ページ状態のダンプ、全ページのスクリーンショットを提供します。
- 本番環境で使いやすい ― IDE ワークフローへのパッケージ化、公開、統合のためのスクリプトとドキュメントを用意しています。
リポジトリの構成
packages/shared― メッセージとツールスキーマの共有 TypeScript 定義です。packages/server― MCP クライアントと実行中のブラウザータブをつなぐ MCP サーバーです。extensions/shared― 拡張機能の共通ソース(バックグラウンド/ポップアップ)とアセットです。extensions/chrome/extensions/firefox― ブラウザーごとのパッケージ化レイヤーです。docs/― ワークスペースコマンド、公開チェックリスト、機能に関するメモです。scripts/― リリース用 ZIP を作成するpackage-extensions.shなどのヘルパーユーティリティです。
利用可能な MCP ツール
browser_snapshot― 現在のページのアクセシビリティ重視のスナップショットを取得しますbrowser_snapshot_diff― 直近 2 件のスナップショットを比較し、DOM/ARIA の変更点を表示しますbrowser_navigate― 接続中のタブで新しい URL を読み込み、更新されたスナップショットを返しますbrowser_go_back/browser_go_forward― MCP との同期を保ちながら、閲覧履歴を移動しますbrowser_wait― 指定した秒数だけ自動操作を一時停止しますbrowser_wait_for― 続行前にセレクターが表示される(任意で可視状態になる)まで待機しますbrowser_press_key― フォーカス中の要素でキーボードのキー入力をシミュレートしますbrowser_click― CSS セレクターで指定した要素をクリックしますbrowser_hover― 対象の要素にポインターを重ねますbrowser_drag― ソート可能な UI やドラッグ&ドロップ UI で、要素をドロップ先へドラッグしますbrowser_type― 編集可能な要素にテキストを入力します(任意で Enter キーを押して送信できます)browser_fill_form― 1 回の呼び出しで複数の入力欄/選択欄/チェックボックス/ラジオボタンに値を入力しますbrowser_select_option―<select>要素で 1 つ以上の選択肢を選びますbrowser_screenshot― DevTools プロトコルを使用して、ビューポートまたは全ページのスクリーンショットを取得しますbrowser_get_console_logs― スタックトレース付きのエラーを含め、直近のコンソール出力を返しますbrowser_page_state― 接続中のページのフォーム、ストレージキー、Cookie をダンプしますbrowser_connection_info― ブリッジの WebSocket ポート、接続状態、拡張機能のバージョンを報告しますbrowser_evaluate― ページ内でカスタム JavaScript を実行し、JSON としてシリアライズ可能な結果を返しますbrowser_handle_dialog―alert/confirm/promptダイアログを、任意のプロンプトテキストを指定して承諾または閉じます
MCP ブラウザー拡張機能のインストール
Chrome ブラウザー
- 最新の Chrome ブラウザー拡張機能をこちらからインストールします:https://chromewebstore.google.com/detail/hpedknkjljpopinabjjmljgckhlancni?utm_source=item-share-cb
- YetiBrowser MCP Server を複数起動している場合を除き、接続モードは Automatic のままにします
Firefox ブラウザー(現在利用できません)
- Firefox の安定版では Manifest v3 の機能が限られているため、Nightly ビルド以外でも完全にサポートされるようになるまで、Firefox 拡張機能の提供を保留しています。
MCP サーバーのインストール
Codex CLI
- ~/.codex/config.toml を編集して、MCP エントリーを追加します。
[mcp_servers.yetibrowser-mcp] command = "npx" args = ["-y", "@yetidevworks/server"] codexCLI コマンドを再起動すると、/mcpツールの一覧にyetibrowser-mcpが表示されます。- 特定のポートを指定する場合は、args エントリーを次の形式にします:
args = ["-y", "@yetidevworks/server", "--ws-port", "9010"]
Claude Code
- 拡張機能がインストールされ、タブに接続されていることを確認してから、
npx -y @yetidevworks/serverで MCP サーバーを起動します(または、ローカルでビルドした CLI を実行します)。 - サーバーのエントリーを
~/Library/Application Support/Claude/claude_desktop_config.jsonに追加します(docs/publishing.mdの例を参照してください)。 claudeを再起動して新しい MCP サーバーを読み込ませます。拡張機能が接続されると、/mcpツールメニューにyetibrowser-mcpが表示されます。
その他の MCP 対応クライアント
- 任意の MCP クライアントから、CLI(
npx -y @yetidevworks/server)を起動して接続できます。または、特定のポートを指定することもできます。例:npx -y @yetidevworks/server --ws-port 9010。 - サーバーは標準の MCP トランスポートを stdio 経由で公開するため、タブが接続されたときに上記のコマンドを実行するには、クライアントがサポートする任意の設定方法を使用してください。
MCP Inspector
- コーディングエージェントを使わずにテストやデバッグを行うためのツールです。
npx @modelcontextprotocol/inspector npx -y @yetidevworks/server -- --ws-port 9010を実行すると、YetiBrowser MCP ブラウザー拡張機能と連携して MCP サーバーを実行・検査できます。
トラブルシューティング
- CLI は空きポートが見つかるまでポート
9010-9020を順に確認し、次のポートに進むときにswitched toとログに出力します。特定のポートに固定するには、代わりに--ws-port <port>を渡してください。 - ブラウザー拡張機能のポップアップも同じ動作をします。CLI のポートを追跡するには「Automatic」のままにするか、「Manual」を選択して
browser_connection_infoまたは CLI のログに表示されたポートを入力し、上書きしてください。 - 接続ポートについて、AI ツールにそのまま質問してください。たとえば、
what is the yetibrowser mcp connction info?と尋ね、報告されたポートを手動ポートに設定します。
ドキュメントとビルドスクリプト
- ワークスペースのコマンドは
docs/workspace-commands.mdに記載されています。 - 公開手順(npm と拡張機能ストア)については
docs/publishing.mdを参照してください。 - スクリーンショットの動作については
docs/screenshot.mdに記載されています。 ./scripts/package-extensions.shで配布用の Chrome/Firefox 向け zip を生成できます(artifacts/に出力されます)。- リポジトリレベルのプライバシーポリシーは
PRIVACY.mdにあります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。