mcpField
V
Vibe MCP — Real Chrome, Remotely

Vibe MCP — Real Chrome, Remotely

リモート
vibebrowser.appブラウザ自動化3今日更新
リポジトリ公式サイト

Vibe MCP — Real Chrome, Remotely について

Vibe MCPは、ログイン済みのChromeをMCPクライアントから操作するブラウザー自動化サーバーです。拡張機能が中継先へ接続するため、受信ポートを開かずに別のマシンから利用できます。

主な機能

  1. 01ログイン済みChromeの操作
  2. 02拡張機能から中継先への接続
  3. 03複数エージェントでのブラウザー共有
  4. 04ループバック限定のローカルモード
  5. 05任意のChrome DevToolsモード

活用シーン

  1. 01別のマシンからログイン済みブラウザーを操作
  2. 02複数エージェントでブラウザーを共有
  3. 03MCPクライアントからローカルChromeを操作

MCP 対応

ブラウザー操作機能をMCPクライアントに公開するMCPサーバーです。ローカルのstdioで起動する方法と、リモートのStreamable HTTP中継を使う方法があります。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://relay.api.vibebrowser.app/mcp/{session_id}
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

パッケージ
npm@vibebrowser/mcp0.3.6

ツール

詳細

Vibe MCP - AI エージェント向けブラウザー自動化

npm version License

Vibe AI Browser 用の MCP サーバーです。あらゆる MCP クライアントから 実際にログイン済みの Chrome を操作できます。受信ポートを開放していない 別のマシン 上で動作するエージェントからも利用できます。

⚠️ セキュリティ — リレー URL/UUID はパスワードと同様に扱ってください。 リレー URL または拡張機能の UUID(wss://relay.api.vibebrowser.app/<uuid>)を使うと、ブラウザーセッションをリアルタイムで操作できます(タブの読み取り、スクリーンショットの撮影、ページコンテンツの読み取り)。共有したり、信頼できない相手とのチャットに貼り付けたり、リポジトリにコミットしたりしないでください。このドキュメントに記載されている UUID の例はすべて、ルーティングできないプレースホルダー(YOUR-EXTENSION-UUID または 00000000-0000-0000-0000-000000000000)です。ローカルで自分の秘密の値に置き換え、バージョン管理に含めないでください。

AI エージェント(OpenClaw / Hermes)向けのインストールプロンプト

以下のブロックを OpenClaw または Hermes エージェントに貼り付けてください。最後の行をリモートの値に置き換えます。これは、Vibe 拡張機能の Settings → AI Agent Control → Remote (internet) → Relay access に表示されるコネクター URL(https://relay.api.vibebrowser.app/mcp/<uuid>)です(UUID のみ、または wss:// リレー URL も引き続き使用できます)。変更するのはこれだけです。

You are setting yourself up to control my real Chrome through Vibe Browser. Work through the steps in order, and after each step confirm it worked before moving on. Do not claim a step is done until you have proven it.

1. Install the "vibebrowser" skill for your runtime:
   - OpenClaw:  npx -y skills add VibeTechnologies/vibe-mcp -s vibebrowser -a openclaw -g -y --copy --dangerously-accept-openclaw-risks
                then run `openclaw skills list` and confirm a "vibebrowser" row shows "ready" as installer registration.
   - Hermes:    npx -y skills add VibeTechnologies/vibe-mcp -s vibebrowser -y
                optional installer registration check: `npx -y skills list` shows a "vibebrowser" row.

2. Remember my remote so I only give it to you once. Save it to a file `vibebrowser-cli.md` in your persistent agent workspace root (the directory that holds your `memory/` folder — not the shell's working dir, not $HOME unless they are the same) as a line `remote: <value>`; if your runtime can also write memory keys, additionally store it under `vibebrowser_remote`. On every later command — including the first message of a new conversation — load it back from that file and reuse it without asking me again.

3. Record a standing rule so you route correctly later: whenever I ask you to do anything in MY browser / MY Chrome / MY tabs / the page I'm on, use this vibebrowser skill (`npx -y @vibebrowser/cli@latest` with my saved remote) to drive my REAL browser — never your built-in, headless, or in-pod browser, never web-fetch instead, and never run `vibebrowser`. Save this rule wherever your standing instructions/memory live so it applies in future conversations.

4. Confirm you can control my Chrome, retrying on "Extension reconnecting" (wait 3s, up to 5x):
   npx -y @vibebrowser/cli@latest --remote "<my remote>" --json status --wait-for-extension --wait-timeout 20000
   npx -y @vibebrowser/cli@latest --remote "<my remote>" --json snapshot --format aria

Then report: (1) is extensionConnected true, (2) did the snapshot return my real page content?

My remote: <PASTE YOUR CONNECTOR URL, UUID, OR wss:// URL HERE>

Vibe MCP を選ぶ理由

ブラウザー自動化の MCP 分野は急速に進化しました。以前は差別化要因だった機能のほとんどが、今では当たり前になっています。そこで、率直な評価をお伝えします。競合製品が同等の機能を備えている場合、列には はい と記載しています。

機能Vibe MCPPlaywright MCPChrome DevTools MCPClaude for ChromeBrowserMCP
実際のプロファイル/ログイン済みセッションを使用はいはい(--extension)はい(専用の --user-data-dir)はいはい
接続ごとの承認ダイアログが不要はいはい(トークン)はい(専用プロファイルのみ)はいはい
実際のログイン済みプロファイルとダイアログなしを両立はいはいいいえ — どちらかを選択はいはい
1 つのブラウザーを複数のエージェントで操作はいはい(--shared-browser-context)はい(--experimentalPageIdRouting)いいえいいえ
別のマシン上のエージェントから、インバウンドポートなしで操作はい — 拡張機能からリレーへ アウトバウンド接続いいえいいえ — インバウンドのデバッグポートとポート転送が必要いいえいいえ
あらゆる MCP クライアント(Codex、OpenCode、Cursor、Hermes、OpenClaw)で動作はいはいはいいいえ — Anthropic の製品のみはい

次の 2 つの項目は、当社独自の強みです。

  • マシンをまたいだアウトバウンド制御。 Vibe の拡張機能は、アウトバウンド WebSocket でリレー(wss://relay.api.vibebrowser.app/<uuid>)に接続します。ユーザーのマシン上で待ち受けるものはなく、ポート転送も不要です。エージェントはポッド、cron ジョブ、チャットボットのいずれでも実行できます。拡張機能からリモート MCP サーバーへのアウトバウンド接続を開始する方式を公開している競合製品はありません。
  • ダイアログの煩わしさなしで、実際のプロファイルを使用。 Chrome DevTools MCP では、Chrome への WebSocket 接続のたびに承認が必要です(#1794 は未解決、永続化の提案は 対応しないとしてクローズ)。メンテナーが示す回避策は、--remote-debugging-port と専用の --user-data-dir を使う方法ですが、ログイン済みプロファイルを諦める必要があります。つまり、ダイアログを省くか、実際のプロファイルを使うかのどちらかで、両方はできません。

以下の点も知っておくとよいでしょう。

  • ベンダーロックイン。 Claude for Chrome は GA で、debugger 権限を使ってクリックや入力を行い、スケジュールされたタスクにも対応します。最も近い競合製品ですが、Anthropic 独自の製品(サイドパネル、Claude Desktop コネクター、Cowork、Claude Code)のみを操作します。公開 API も MCP インターフェースもないため、Codex、OpenCode、Hermes、OpenClaw からは利用できません。Vibe MCP は特定のエージェントに依存しません。
  • 安定性。 Chrome DevTools MCP は明確に実験段階であり、現在もメモリーリーク(#2431、#2291、#2456)や並行処理(#1763、#1921)に関する未解決の問題があります。
マルチエージェントアーキテクチャ

Claude Desktop、Cursor、VS Code Copilot、OpenCode を同時に実行できます。リレーを介して 1 つのブラウザーを共有して操作します。リレーはリクエストを多重化し、それぞれの応答をリクエスト元のエージェントに返します。

Claude Desktop       Cursor          VS Code         OpenCode
     |                  |                |               |
     v                  v                v               v
 [vibebrowser-mcp] [vibebrowser-mcp] [vibebrowser-mcp] [vibebrowser-mcp]
     |                  |                |               |
     +------------------+----------------+---------------+
                        |
                        v
                  [Relay Daemon]  <-- Auto-spawned, handles multiplexing
                        |
                        v
                 [Vibe Extension]
                        |
                        v
                   [Your Chrome]

機能

  • マルチエージェント対応 - Claude、Cursor、VS Code などを、1 つのブラウザーに同時に接続して実行できます
  • お使いのブラウザーを使用 - 別のブラウザーインスタンスは不要です。すべてのログイン情報が保持された、既存の Chrome を使用します
  • リモート対応 - 拡張機能がリレーに接続するため、受信ポートを開かずに、別のマシンでエージェントを実行できます
  • デフォルトでローカル - ローカルモードではすべての通信が 127.0.0.1 内にとどまります。リモートリレーモードでのみ、トラフィックが relay.api.vibebrowser.app 経由でルーティングされます
  • Chrome DevTools 直接モード - デフォルトでは拡張機能のツールが優先されます。--devtools を使用すると、DevTools Protocol 経由で実行中の実際の Chrome を直接操作できます(拡張機能は不要です)

クイックスタート

1. Vibe 拡張機能をインストールする

Vibe AI Browser 拡張機能を Chrome、Brave、または任意の Chromium ブラウザーにインストールします。

オプション A:Chrome ウェブストア(推奨)

  1. Chrome ウェブストアにアクセスします
  2. 「Chrome に追加」をクリックします
  3. ツールバーに Vibe アイコンが表示されます

オプション B:開発者向けバージョン

  1. 最新リリースの ZIPをダウンロードします
  2. 永続的に使用するフォルダーに展開します
  3. chrome://extensions に移動し、デベロッパーモードを有効にします
  4. 「パッケージ化されていない拡張機能を読み込む」をクリックし、展開したフォルダーを選択します

詳しい手順については、インストールガイドをご覧ください。

2. AI アプリケーションを設定する
Claude Desktop

Claude Desktop の設定ファイルを編集します。

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "@vibebrowser/mcp"]
    }
  }
}

保存後、Claude Desktop を再起動します。

Cursor
  1. Cursor の設定を開きます(Cmd/Ctrl + ,)
  2. 「Features」->「MCP Servers」に移動します
  3. 「Add Server」をクリックして、次の内容を追加します。
{
  "vibe": {
    "command": "npx",
    "args": ["-y", "@vibebrowser/mcp"]
  }
}

または、~/.cursor/mcp.json を直接編集します。

VS Code(GitHub Copilot)

VS Code の settings.json に追加します。

{
  "github.copilot.chat.mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "@vibebrowser/mcp"]
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json を編集します。

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "@vibebrowser/mcp"]
    }
  }
}
OpenCode

.opencode/config.json に追加します。

{
  "mcp": {
    "servers": {
      "vibe": {
        "command": "npx",
        "args": ["-y", "@vibebrowser/mcp"]
      }
    }
  }
}
Gemini CLI

~/.gemini/settings.json に追加します。

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "@vibebrowser/mcp"]
    }
  }
}
OpenAI Codex CLI / ChatGPT デスクトップアプリ / Codex IDE 拡張機能

3 つとも同じ設定ファイル ~/.codex/config.toml を使用します。一度設定すれば、どこでも使用できます。

最も簡単な方法は、Codex に設定項目を作成してもらうことです。

codex mcp add vibe -- npx -y @vibebrowser/mcp

または、~/.codex/config.toml にテーブルを手動で追加します(Codex が使用するのは JSON ではなく TOML です)。

[mcp_servers.vibe]
command = "npx"
args = ["-y", "@vibebrowser/mcp"]

ChatGPT デスクトップアプリでは、UI からも設定できます。Settings → MCP servers → Add server を選択し、STDIO、コマンド npx、引数 -y @vibebrowser/mcp を指定してから、Restart を選択します。

codex mcp list を実行するか、Codex TUI またはデスクトップの入力欄で /mcp と入力して確認します。

ChatGPT のウェブ版はローカルの Codex 設定を読み込まないため、Vibe のようなローカル MCP サーバーは利用できません。

MCP コマンド形式

MCP サーバーには、最短の直接パッケージ呼び出しを使用します。

npx -y @vibebrowser/mcp@latest --help
npx -y @vibebrowser/mcp@latest start --transport http
npx -y @vibebrowser/mcp@latest openclaw --remote "$VIBE_REMOTE_URL"

バイナリを明示的に指定する必要がある場合は、後方互換性のあるエイリアスも引き続き使用できます。

npx -y -p @vibebrowser/mcp@latest vibebrowser-mcp --help
npx -y -p @vibebrowser/mcp@latest vibe-mcp --help
リモートコネクター(ホスト型アシスタント — インストール不要)

ここまでの説明はすべて、クライアントがローカルプロセスを起動できることを前提としています。ホスト型アシスタントはそれができません。Web版/Cowork/モバイル版の Claude と Web版の ChatGPT はベンダーのクラウド上で実行されるため、お使いのマシンにはアクセスできません。これらが受け付けるのは リモート MCP サーバー URL だけです。コマンドも、引数も、カスタムリクエストヘッダーも指定できません。

その場合は、@vibebrowser/mcp をまったく使わないでください。拡張機能だけで十分です。

https://relay.api.vibebrowser.app/mcp/<your-extension-uuid>

拡張機能で <your-extension-uuid> を確認してください。Vibe アイコン → Settings → AI Agent Control → Remote (internet) → Relay access の順に開きます。このパネルに正確なコネクター URL が表示されます。同じ文字列が CLI/サーバーの --remote フラグで推奨される値になりました。両方の場所に貼り付けるだけで、変換は不要です。

VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
npx -y @vibebrowser/mcp@latest start --remote "$VIBE_REMOTE_URL"

拡張機能の UUID のみ、または wss://relay.api.vibebrowser.app/<uuid> 形式のリレー URL も、引き続き高度な用途/互換性のための形式として受け付けられます。下記の「Cloud OpenClaw -> Local Browser」にある、受け付けられる --remote の値の表をご覧ください。

これは標準の Streamable HTTP MCP エンドポイントです。この接続方法では、OAuth の同意フロー、動的クライアント登録、スコープ設定はありません。URL 内(または下記のヘッダー内)の UUID が認証情報のすべてです。サーバーを追加する前に OAuth ログインを求めるクライアントには、ここでは対応していません。代わりにローカル stdio 接続を使用してください。

貼り付ける場所:

クライアント場所
Claude(Web、Cowork、モバイル)Settings → Connectors → Add custom connector
Claude Desktop — 代替手段のみ。同じマシンで Chrome を実行する場合は、上記のローカル stdio の項目を推奨しますSettings → Connectors → Add custom connector
ChatGPT(Web)Settings → Connectors → developer mode
Codex Desktop / Codex CLI(リモート形式)codex mcp add vibe --url https://relay.api.vibebrowser.app/mcp/<your-extension-uuid>

カスタムコネクターは、Claude および ChatGPT 製品の有料プランで利用できる機能です。

Codex Desktop、Codex CLI、Codex IDE 拡張機能はローカルプロセスを起動でき、いずれも ~/.codex/config.toml を共有します。上記のローカル stdio の項目を推奨します。これにより、通信は 127.0.0.1 上に留まり、UUID を URL に含めずに済みます。codex mcp add vibe --url … を使うのは、操作したいブラウザーと Codex が別のマシン上にある場合だけです。ChatGPT のデスクトップアプリは Codex を基盤としており、同じ設定を読み込むため、こちらもローカル stdio で利用できます。ホスト型 URL が必要なのは ChatGPT のWeb版だけです。

廃止された OAuth 方式のコネクター手順からの移行

以前のドキュメント案(および worklog/ に保管されている 2026 年 8 月のディレクトリー登録に関する調査)では、単独の /mcp で廃止された OAuth 2.1 + DCR の同意フローを説明していました。この方法は廃止されており、ユーザーにはサポートされていません。以前 Vibe をコネクターとして追加し、廃止された同意画面に誘導された場合は、そのコネクターを削除し、上記の直接指定する https://relay.api.vibebrowser.app/mcp/<uuid> URL で追加し直してください。認証も登録も必要なく、スコープを選択する必要もありません。

このリレーは、単独の POST /mcp に対する X-Remote-Session または Authorization: Bearer ヘッダーでの UUID の指定にも対応しています。ヘッダーを送信できるもの(Codex CLI、スクリプト)では、ヘッダー形式を使用してください。認証情報を URL、ログ、ブラウザーの履歴に残さずに済みます。パス形式は、ヘッダーを送信できない UI 向けに用意されています。

この方法で生じる 2 つの代償を、はっきり説明します。

  1. **URL は認証情報です。**この UUID を知っている人なら誰でも、ログイン済みのブラウザーを操作し、メールを読んだり、サインインしているあらゆるサイトであなたになりすまして操作したりできます。パスワードとまったく同じように扱ってください。絶対にコミットしたり、共有チャット、イシュー、README、スクリーンショットに貼り付けたりしないでください。漏えいした場合は、拡張機能でセッションを取り消し、新しいセッションを生成してください。(これは仮定の話ではありません。開発用マシンの UUID が、かつてこのドキュメント自体に掲載されていました。)
  2. **ページの内容がマシンの外部に送信されます。**ローカル STDIO 経由では、ツール呼び出しとページの内容が 127.0.0.1 の外部に送信されることはありません。リモートコネクター経由では、アシスタントがベンダーのクラウド上にあり、ブラウザーに接続する別の方法がないため、データは relay.api.vibebrowser.app を経由します。デバイス内だけで完結させる必要がある場合は、ローカルサーバーを使用するデスクトップクライアントを使ってください。
3. 拡張機能を接続する
  1. Vibe 拡張機能をインストールした Chrome を開きます
  2. ツールバーにある Vibe 拡張機能のアイコンをクリックします
  3. 設定を開き、「MCP External Control」を有効にします
  4. ステータスに「Connected」と表示されることを確認します

拡張機能が接続されていない場合、vibebrowser-mcp は、そのパッケージがインストールされていれば、chrome-devtools-mcp(--autoConnect モードで起動)にフォールバックできます。このフォールバックは、共有のローカルリレーデーモンで一度だけ実行されるため(複数エージェントで安全)、vibebrowser-mcp と vibebrowser-cli は同じバックエンドインスタンスを使用します。拡張機能が接続されている場合は、拡張機能のツールが優先されます。

--devtools モード(CDP 経由で実際に使用中の Chrome を操作)

どちらの CLI にも --devtools を指定すると、リレーや拡張機能を介さず、実際に起動中の Chrome を Chrome DevTools Protocol 経由で直接操作できます。このバックエンド(chrome-use スキルから移植)は、Chrome の DevToolsActivePort ファイルを読み取り、実行中のプロファイルに自動接続します。拡張機能、外部 MCP サーバー、追加の依存関係は不要です。Chrome 144 以降が必要です。権限ダイアログはプロファイルごとに一度表示されます。

--devtools では、navigate、snapshot(@eN 参照を含むアクセシビリティツリー)、click、fill、type、press_key、hover、scroll、screenshot、eval、get_text、get_url、get_title、およびタブ管理(list_tabs、new_tab、select_tab、close_tab)という、用途を絞ったツールセットを利用できます。snapshot で @eN 要素参照を取得し、それらを click/fill/type のセレクターとして渡します。

VIBE_CHROME_USER_DATA_DIR と VIBE_CHROME_CHANNEL(stable | canary | beta | dev)で、Chrome のプロファイルやチャンネルを指定できます。

--devtools v1 では、ネットワークリクエストの調査、コンソールログ、パフォーマンストレース、Lighthouse、メモリスナップショット、デバイスエミュレーション、ダイアログの処理、ファイルのアップロード、ドラッグにはまだ対応していません(CDP ドメインの接続が進めば、後から追加できます)。

利用可能なツール

ツール説明
navigate_to_url任意の URL に移動します
go_back / go_forwardブラウザーの履歴を移動します
clickページ上の要素をクリックします
type / fill入力欄にテキストを入力します
scrollページをスクロールします
take_screenshotスクリーンショットを撮影します
get_page_contentページのテキスト/HTML を抽出します
get_tabs / create_new_tab / switch_to_tab / close_tabタブを管理します
keyboard_shortcutキーの組み合わせを押します
web_searchウェブを検索します

動作の仕組み

デフォルトのローカルモード(フラグなし):

Claude / Cursor / VS Code (stdio)
            │
            ▼
   [vibebrowser-mcp]
            │  ws://127.0.0.1:19888
            ▼
     Local Relay (auto-spawned)
            │  ws://127.0.0.1:19889
            ▼
     Vibe Extension (Chrome)
  1. AI アプリケーションは stdio 経由で MCP に接続します
  2. vibebrowser-mcp はポート 19888 のローカルリレーに接続します
  3. リレーはポート 19889 の拡張機能にコマンドを転送します
  4. 結果はエージェントに返されます
2 つの経路、2 つのプロトコル

混同しないでください。MCP サーバーへのトランスポートは設定可能ですが、拡張機能へのトランスポートは設定できません。

経路プロトコル設定可能?
MCP クライアント → vibebrowser-mcpstdio または streamable HTTPはい — --transport stdio|http
vibebrowser-mcp ↔ リレー ↔ 拡張機能WebSocket のみいいえ
MCP client ──stdio──┐
                    ├──> [vibebrowser-mcp] ──ws──> [relay] ──ws──> [extension]
MCP client ──http───┘

Streamable HTTP を使うと、stdio サブプロセスを起動できないリモートまたはホスト型のエージェントが、URL 経由でサーバーと通信できます。

npx -y @vibebrowser/mcp@latest start --transport http
# serves POST/GET http://127.0.0.1:8788/mcp

デフォルト値:--host 127.0.0.1、--http-port 8788、--http-path /mcp。プロキシ経由で公開する場合や localhost の外部にバインドする場合は、--allow-host <host> を追加してください(繰り返し指定できます)。

マルチエージェントモード

複数のエージェントが接続すると、Vibe MCP はリレーデーモンを自動的に起動します。

  • 最初のエージェントがリレーを起動します(ポート 19888 と 19889 をリッスンします)
  • 追加のエージェントはクライアントとしてリレーに接続します
  • リレーはすべてのエージェントのリクエストを、単一の拡張機能接続へ多重化します
  • 各エージェントは自身への応答のみを受け取ります
クラウド OpenClaw → ローカルブラウザー

⚠️ セキュリティ: 以下の --remote の値は有効な認証情報です。リレー URL/UUID/コネクター URL により、対象のブラウザーセッションを完全に制御できます。これが唯一のベアラー認証情報であり、第二要素のトークンはありません。パスワードと同様に扱ってください。秘密に保ち、コミットしたりログに貼り付けたりしないでください。漏えいした場合は、Vibe 拡張機能の Settings で再生成してください。

--remote で受け付ける値

--remote(および MCP の set_remote ツール)では、次の3つの形式を受け付けます。いずれも同じリレー接続に正規化されます。

形式例対応先ステータス
コネクター URLhttps://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000リレー wss://relay.api.vibebrowser.app + UUID推奨 — 拡張機能の設定に表示され、Claude/ChatGPT のコネクターに貼り付ける文字列と同じです
拡張機能の UUID のみ00000000-0000-0000-0000-000000000000デフォルトのパブリックリレー + UUID上級者向け/互換性用
ws(s) リレー URLwss://relay.api.vibebrowser.app/00000000-0000-0000-0000-000000000000明示的なリレーエンドポイント上級者向け/互換性用

セルフホストまたはローカルのリレーも同じ方法で導出されます。https://your-host/vibe/mcp/<uuid> → リレー wss://your-host/vibe。ループバックのコネクター(例:http://127.0.0.1:19889/mcp/<uuid>)→ ws://127.0.0.1:19889(セルフホスト/ローカルのリレーのみ — ループバック以外のホストでは https:///wss:// を使用する必要があります)。

拒否される値:無効な UUID、認証情報が埋め込まれた URL、クエリ文字列またはフラグメントを含む URL、ループバック以外のホストに対する平文の http:///ws://、および正確な /mcp/<uuid> で終わらない HTTP(S) URL。

エージェントがクラウド上で動作していても、ユーザーの実際のローカルブラウザーを操作したい場合は、vibebrowser-mcp を HTTP モードで実行し、Vibe 拡張機能をリモートリレーモードで接続してください。コネクター URL(推奨)、拡張機能の UUID、または完全な WebSocket リレー URL を --remote に渡します。

VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
npx -y @vibebrowser/mcp@latest start --transport http --remote "$VIBE_REMOTE_URL"

デフォルトでは、http://127.0.0.1:8788/mcp にローカル MCP エンドポイントが公開されます。

OpenClaw が別のマシン(たとえばクラウド上)で動作している場合は、到達可能な URL を指定してください。

VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
PUBLIC_MCP_URL="https://browser-bridge.example.com/mcp"
npx -y @vibebrowser/mcp@latest openclaw --remote "$VIBE_REMOTE_URL" --public-url "$PUBLIC_MCP_URL"

OpenClaw ですぐに使える正確なセットアップ手順は、次のコマンドで出力できます。

VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
npx -y @vibebrowser/mcp@latest openclaw --remote "$VIBE_REMOTE_URL"

デフォルトのパブリックリレーを使用する場合はコネクター URL(推奨)、デフォルトのパブリックリレーを使用する場合は UUID のみ、明示的なリレーエンドポイントが必要な場合は wss:// URL を使用してください。どの形式を使う場合も、それだけが認証情報です。決して共有、記録、または信頼できないチャットへの貼り付けをしないでください。

ブラウザー CLI を直接確認する場合は、必ず npx -y @vibebrowser/cli@latest を使用してください。

VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" --json status

コネクター URL はデフォルトのパブリックリレーを使用します。--remote <uuid> もデフォルトのパブリックリレーを使用します。--remote <full-ws-url> は明示的なリレーエンドポイントを指定します。第2要素認証用のシークレットは不要であり、受け付けられません。渡した形式がどれであっても、それだけがセッションを認証する唯一の認証情報です。

詳しい手順については、docs/openclaw-local-browser.md を参照してください。

OpenClaw 互換ブラウザー CLI

npx -y @vibebrowser/cli@latest は、実際のローカルブラウザーパス用に OpenClaw のブラウザー CLI と同じ形式を提供します。

npx -y @vibebrowser/cli@latest sessions
VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" status
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" tabs
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" open https://example.com
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" snapshot
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" click 12
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" type 23 "hello" --submit
npx -y @vibebrowser/cli@latest --devtools status

MCP サーバーのワークフローには MCP パッケージを、ブラウザーを直接操作するには CLI パッケージを使用してください。

  • vibebrowser-mcp:MCP サーバー、HTTP ブリッジ、ヘルパーコマンド用
  • npx -y @vibebrowser/cli@latest:実際の Vibe 接続済みセッションを対象とする、OpenClaw に着想を得たブラウザー操作用

@vibebrowser/cli は互換性のために OpenClaw 形式の --browser-profile フラグを受け付け、機械可読な出力を得るための --json にも対応しています。OpenClaw が管理する openclaw ブラウザープロファイルとは異なり、この CLI は常に実際の Vibe 接続済みブラウザーセッションを対象にします。

ローカルセッションの選択:

  • npx -y @vibebrowser/cli@latest sessions は、接続済みのローカルブラウザーセッションを一覧表示します。
  • npx -y @vibebrowser/cli@latest --session <id> ... は、指定したローカルセッションを対象にします。
  • ローカルモードで --session を省略した場合、CLI は最初に接続されたセッションを使用します。
  • リモートモードでは、コネクター URL(推奨)、デフォルトのパブリックリレーを使う --remote <uuid>、または明示的なリレーエンドポイントを指定する --remote <full-ws-url> を渡してください。

スナップショットの取得はツールのみで行います(従来のスナップショット RPC ショートカットはありません)。

  • snapshot(デフォルトの --format markdown。従来の別名は --format ai)は、take_md_snapshot ツールを通じて処理されます。コンテンツスクリプトのページ内 Markdown 抽出機能を使用します。高速で読みやすい一方、コンテンツスクリプトにアクセスできない場合やレイアウトが計算されていない場合、背景タブや複雑な SPA(Notion、Gmail)では空の結果が返ることがあります。バックエンドが take_snapshot のみを公開している場合、CLI は format: "markdown" を送信します(呼び出し前に ai は markdown に変換されます)。
  • snapshot --format aria は、take_a11y_snapshot ツールを通じて処理されます。Chrome DevTools Protocol の Accessibility.getFullAXTree を直接使用します。**背景タブや SPA を含むすべてのタブで安定して動作します。**デフォルトの形式で空の結果、またはページタイトルのみが返された場合は、フォールバックとして使用してください。

これにより、CLI の動作が拡張機能でサポートされているツールと一致し、--page-id/--pageId によるページ指定も一貫して機能します。

ナビゲーション形式の操作では、ページの状態が変化した際に、応答にページの内容が含まれるようになりました。

  • CLI の open/navigate は、JSON 出力に pageContent を含めます。
  • ナビゲーション形式のツールに対する MCP ツール呼び出しは、現在のページ状態を含むテキストコンテンツを返します(必要に応じてスナップショットにフォールバックします)。
AI エージェント向けインストールプロンプト(OpenClaw/Hermes)

この README の先頭にある、コピーして貼り付けるだけの標準プロンプトを使用してください。 AI エージェント向けインストールプロンプト(OpenClaw/Hermes)。 vibebrowser スキルをインストールし、リモート接続先を保存するため、一度指定するだけで済みます。また、実際の Chrome を操作できることを確認します。

スキルの定義をさらに詳しく確認する場合(管理対象のブラウザー/ヘッドレスブラウザーよりこちらを優先する場面、リモート接続先の再利用ルール、セレクター/スナップショットのガイダンスなど)は、openclaw/vibebrowser/SKILL.md をエージェントのスキルディレクトリにインストールしてください。

OpenClaw との統合

Vibe を OpenClaw で使用する方法は 2 つあります。

オプション A:クラウド上の OpenClaw からローカルブラウザーを操作

OpenClaw はクラウド上で実行しながら、ローカルブラウザーを操作する場合:

  1. Vibe 拡張機能をインストールし、Remote モードを有効にします(docs/openclaw-local-browser.md を参照)
  2. ローカル HTTP ブリッジを起動します:vibebrowser-mcp openclaw --remote "$VIBE_REMOTE_URL" [--public-url "$PUBLIC_MCP_URL"]
  3. OpenClaw に MCP URL を登録します

オプション B:ローカルエージェント向け OpenClaw スキル

実際のブラウザーコンテキスト(ログイン済みのセッションや既存のタブ)を必要とする OpenClaw エージェントの場合:

  1. このパッケージから Vibe スキルを OpenClaw のスキルフォルダーにコピーします
  2. コネクター URL(推奨)、拡張機能の UUID、または --remote を指定した完全な WebSocket リレー URL を使用します
  3. エージェントのプロンプトで npx -y @vibebrowser/cli@latest コマンドを使用します

スキルは openclaw/vibebrowser/SKILL.md にあり、以下を提供します。

  • OpenClaw 互換の CLI コマンド一式(status、tabs、snapshot、click、type など)
  • DevTools ベースのフロー向けのフォールバック対応コマンド(resize、upload、dialog)
  • 機械解析用の --json 出力
  • 環境変数による設定

手順の詳細については、docs/openclaw-local-browser.md を参照してください。

ローカル LLM:serve コマンド

コマンド 1 つでローカル LLM を実行できます。クラウド API キーは不要です。Ollama を自動でインストールし、モデルをダウンロードして、OpenAI 互換 API の提供を開始します。

npx -y @vibebrowser/mcp@latest serve qwen3.5

これだけです。macOS、Linux、Windows で動作します。

機能
  1. Ollama を検出 → 見つからない場合はインストールします(brew、curl、または winget を使用)
  2. サーバーを起動 → バックグラウンドで ollama serve を起動します
  3. モデルをダウンロード → ダウンロードの進捗をターミナルに表示します
  4. 接続情報を表示 → VibeBrowser または任意の OpenAI 互換クライアントですぐに使用できます
推奨モデル
npx -y @vibebrowser/mcp@latest serve qwen3.5      # Best overall for agentic tasks
npx -y @vibebrowser/mcp@latest serve llama4        # Strong general reasoning
npx -y @vibebrowser/mcp@latest serve deepseek-r1   # Reasoning chains
npx -y @vibebrowser/mcp@latest serve mistral       # Lightweight & fast (7B)
オプション
npx -y @vibebrowser/mcp@latest serve <model> [options]

Options:
  -p, --port <number>  Ollama API port (default: 11434)
  -y, --yes            Skip install confirmation prompts
  -d, --debug          Enable debug logging
VibeBrowser 拡張機能での使用

serve の実行後、拡張機能を設定します。

  • Model provider → ollama
  • Model name → 実行したモデル(例:qwen3.5)

拡張機能は http://localhost:11434/v1 に自動で接続します。

CLI オプション

npx -y @vibebrowser/mcp@latest --help
npx -y @vibebrowser/cli@latest --help

# MCP server (default)
npx -y @vibebrowser/mcp@latest [start] [options]
  -p, --port <number>  WebSocket port for local relay (agent) connection (default: 19888)
  -d, --debug          Enable debug logging
  --transport <mode>   MCP transport to expose: stdio or http (default: stdio)
  --host <host>        Host to bind the HTTP server to (default: 127.0.0.1)
  --http-port <number> Port for streamable HTTP MCP transport (default: 8788)
  --http-path <path>   Path for streamable HTTP MCP transport (default: /mcp)
  --allow-host <host>  Allowed host header for HTTP transport (repeatable)
  -r, --remote <uuid-or-url>  Connect to a remote extension via relay. Accepts the connector URL from extension Settings (https://relay.api.vibebrowser.app/mcp/<uuid>), a bare extension UUID, or a ws(s) relay URL. This value is the sole bearer credential — treat it like a password; regenerate it in extension Settings if exposed.
  --devtools           Drive your real running Chrome directly over the DevTools Protocol (bypasses the extension relay)

# MCP server tool
set_remote { "url": "https://relay.api.vibebrowser.app/mcp/<extension-uuid>" }

set_remote MCP サーバーツールは、実行中の MCP サーバーを別のリモートリレーにホット再接続します。これは MCP ツールであり、ブラウザー CLI のサブコマンドではありません。--remote と同じ 3 種類の形式(コネクター URL を推奨、UUID のみ、または wss:// URL)を受け付けます。この値だけが認証情報です。信頼できない相手と共有するログには決して記載しないでください。漏えいした場合は、拡張機能の設定で再生成してください。

# OpenClaw helper
VIBE_REMOTE_URL="https://relay.api.vibebrowser.app/mcp/00000000-0000-0000-0000-000000000000"
PUBLIC_MCP_URL="https://browser-bridge.example.com/mcp"
npx -y @vibebrowser/mcp@latest openclaw --remote "$VIBE_REMOTE_URL" --public-url "$PUBLIC_MCP_URL"

# OpenClaw-compatible browser CLI
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" status
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" status --wait-for-extension --wait-timeout 10000
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" tabs
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" snapshot --json
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" click 12
npx -y @vibebrowser/cli@latest --remote "$VIBE_REMOTE_URL" type 23 "hello" --submit
npx -y @vibebrowser/cli@latest --devtools tabs

# Local LLM server
MODEL="qwen3.5"
npx -y @vibebrowser/mcp@latest serve "$MODEL"
  -p, --port <number>  Ollama API port (default: 11434)
  -y, --yes            Skip confirmation prompts
  -d, --debug          Enable debug logging

トラブルシューティング

「Vibe 拡張機能に接続できません」
  1. Vibe 拡張機能が Chrome にインストールされていることを確認します
  2. 拡張機能のアイコンをクリックし、設定で「MCP External Control」を有効にします
  3. localhost 接続をブロックしているファイアウォールがないことを確認します
「OpenClaw からローカルブラウザーブリッジに接続できません」
  1. vibebrowser-mcp を stdio ではなく HTTP モードで起動します
  2. ブリッジのプロセスがユーザーのマシン上で引き続き実行されていることを確認します
  3. 拡張機能が Remote モードで、接続済みであることを確認します
  4. OpenClaw の MCP URL がブリッジ URL と一致していることを確認します。OpenClaw がクラウド上でホストされている場合は、127.0.0.1 を使用せず、到達可能なホストを指定して openclaw --public-url を使用してください。
デバッグモード

問題を診断するには、デバッグログを有効にします。

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "@vibebrowser/mcp", "--debug"]
    }
  }
}

開発

git clone https://github.com/VibeTechnologies/vibe-mcp.git
cd vibe-mcp
npm install
npm run build
node dist/cli.js --debug

キーワード

ブラウザー自動化、MCP サーバー、Model Context Protocol、AI ブラウザー制御、Claude デスクトップブラウザー、Cursor ブラウザー自動化、ウェブ自動化、Chrome 自動化、AI エージェントのブラウザー、マルチエージェントのブラウザー制御、Playwright の代替、Puppeteer の代替、ブラウザー MCP、AI ウェブスクレイピング、AI ウェブエージェント

ライセンス

Apache-2.0

Links

コメント

MCP は初めてですか?

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

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