コードを書かないSE日誌

SE歴26年。コードを書かずにClaude Codeで8体のAIエージェントチームを動かしています。AIエージェント・自動化・GTDの実験日誌。

Claude in Chrome MCPとCowork、CLIからブラウザを操る2つの方法——実測で分かった使い分け

この記事の概要(2026-05-30 実測): Claude Code(CLI)からブラウザを操作する方法として、Cowork(Claudeデスクトップアプリ)とは別に Claude in Chrome MCP が利用可能になった。navigate / screenshot / get_page_text / gif_creator の4ツールを実際に試し、Coworkと比較した結果、CLIユーザーがブラウザUI操作にCoworkを使う理由はほぼなくなった。Coworkが残る場面は「CLIのコンテキストを汚染せずにfresh eyesが欲しいとき」の一点のみだ。


CLIからブラウザを操作したいとき、これまでは2択だった。WebSearchツールで検索する(ページのDOM構造や画像は取れない)か、Coworkに指示書を渡してデスクトップアプリ側で処理させるか(結果はファイル経由)。

Claude in Chrome MCPはこの地図を書き換える。MCP経由でChromeを直接操作し、テキスト・スクリーンショット・GIF録画をCLIセッションに直接返せる。しかも、サブエージェントから呼び出してバックグラウンド実行できる。

この記事では、navigate・screenshot・get_page_text・gif_creator の4ツールを2026-05-30に実際に動かした結果と、Coworkとの使い分け判断軸を整理する。


Claude in Chrome MCPとは何か

Claude in Chrome MCPは、Chromeブラウザ拡張機能とMCPサーバーを組み合わせてCLIセッションからChrome操作を可能にする仕組みだ。Claude in Chromeの拡張機能をインストールし、claude --chrome フラグで起動する(または既存セッション内で /chrome コマンドを実行する)だけで使い始められる。接続が確立するとChromeの各タブに「Claude (MCP)」のタグが表示され、CLIからどのタブが開いているかを認識できる。

提供されるツールは大きく3カテゴリに分かれる。

  • ナビゲーション: navigate(URLへ移動)、tabs_context_mcp(開いているタブの一覧取得)
  • 内容取得: computer(マウス・キーボード・スクリーンショット等13種のアクションを持つ複合ツール)、get_page_text(ページ本文のテキスト抽出)
  • 記録: gif_creator(GIF録画・エクスポート)

computer-useとの関係も補足しておく。computer-useは computer-use という名前のMCPサーバーとしてClaude Codeに組み込まれており、CoworkもClaude Code基盤の上に作られているため、CoworkとClaude Codeは同じcomputer-use MCPを共有していると考えられる(Cowork側での動作確認に基づく推測であり、一次ソースでの検証は未実施)。「CLIとは別の仕組み」ではなく、同じMCP基盤の中で用途が異なる複数のツール(claude-in-chrome / computer-use / bash / WebSearch 等)が並存している構造だ。mcp__computer-use__request_access でChrome権限を取得しようとすると「read」tier(スクリーンショットのみ)として付与される。実際のクリック・フォーム入力といったブラウザ操作は、Claude in Chrome MCPのツール群が担う。

DOMベース操作であることの意味

Claude in Chrome MCPの核心はDOMへのアクセスにある。find ツールに「検索ボタン」という文字列を渡すと、ページ上の該当要素を探してクリックする。ウィンドウサイズを変えてもフォントを変えても、要素がDOMに存在する限り操作は成立する。ピクセル座標に依存しないため、表示環境の差異に耐性がある。また、要素が見つからなければエラーを返す。操作が静かに失敗するのではなく、エラーとして検知できるのは自動化において重要な性質だ。

computer useはこれとは異なるアプローチを取る。スクリーンショットを撮影し、画面上の座標を推定してクリックする流れだ。ウィンドウの位置やサイズ、DPIスケール、OSのズーム設定がずれると、クリック先がずれる。ブラウザに限って言えば、DOMで操作できるClaude in Chrome MCPのほうが精度・安定性ともに高い。

ただし、computer useにしか選択肢がない領域がある。Excelや Finder、カレンダーといったネイティブアプリだ。これらはDOMを持たないため、Claude in Chrome MCPは使えない。結果として役割分担は明確になる。ブラウザ操作はClaude in Chrome MCP、ネイティブアプリ操作はcomputer useという棲み分けだ。


4ツールを実際に動かした(2026-05-30)

mcp__claude-in-chrome__navigate でZenn.devの検索ページ(?q=claude+code)へ移動

URLを渡すと即座に対象ページへ遷移する。リダイレクトも追跡する。実行は同期で、完了するまでCLIは待機する。

screenshot: ページを画像として取得する

mcp__claude-in-chrome__computerscreenshot アクションで、現在開いているページを画像としてCLIセッション内に取得できた(computer ツールはクリック・タイピング・スクロール等も担う複合ツールで、screenshot はその一アクション)。返ってくるのはCLI側のコンテキストに直接渡される画像データで、Claudeがそのまま内容を解釈・分析できる。外部ファイルに保存する必要がなく、即座に「このページに何が書いてあるか」を処理に回せる。

get_page_text: 本文をテキストとして抽出する

mcp__claude-in-chrome__get_page_text はDOMからテキストを抽出してCLIに返す。HTMLタグが除去されたプレーンテキストが返るため、そのままgrep処理・要約・比較に使える。スクレイピングと言うと大げさだが、「このページの記事タイトル一覧を取得してCSV化する」のような用途を数行のプロンプトで実現できる。

gif_creator: GIF録画する

mcp__claude-in-chrome__gif_creator でGIF録画とエクスポートが可能だった。navigateアクションが自動的にフレームとして記録される仕組みで、出力は367KB・2フレームのGIFファイルだった(2026-05-30実測。navigateがフレームトリガーになる詳細仕様は公式未記載)。UIの操作手順をドキュメント化する用途に使える。


サブエージェントからも呼び出せることを確認した

最も重要な実証はこれだ。Agent ツールで起動したサブエージェントから mcp__claude-in-chrome__tabs_context_mcp を ToolSearch でロードし、現在開いているタブ(Zenn検索ページ)を正しく取得できた(2026-05-30確認)。

これが何を意味するかというと、マルチエージェントワークフローにブラウザ操作を組み込めるということだ。

たとえば、researcherエージェントがClaude in Chrome MCPを使ってウェブページを巡回・テキスト収集し、その結果をCLIセッションに返してwriterエージェントが記事を書く——この一連のフローを、Coworkへの指示書渡しや結果のファイル経由受け取りなしに完結させられる。

さらに Agent(run_in_background=True) でサブエージェントをバックグラウンド起動すれば、COOは対話を続けながらブラウザ操作を並行実行できる。完了時に通知が届き、結果がCLIセッションに直接返ってくる。


CoworkとClaude in Chromeを4軸で比較する

実際に両方を使った体験から、使い分けを4軸で整理した。

比較軸 Claude in Chrome MCP Cowork
実行タイミング 同期(CLIが待機) / バックグラウンド並行実行も可 非同期(別ウィンドウで実行)
コンテキスト共有 CLIと共有(ページデータが直接返る) 独立(fresh eyes)
サブエージェント対応 可(ToolSearch経由でロード可能) 不可(/coworkスキルでCOOが指示書を生成、手動でアプリに渡す形のみ)
結果の受け取り CLIセッションに直接返る ファイル経由か手動コピーが必要

この表から見えるのは、データ収集・自動化・マルチエージェント連携という用途においては、Claude in Chrome MCPがほぼ全ての軸でCoworkを上回るということだ。


Coworkが優位な場面は一点のみ

Coworkが勝るのは「CLIのコンテキストを汚染せずに独立した視点(fresh eyes)が欲しいとき」の一点だ。

CLIセッションが長時間続くと、判断が積み上げた文脈に引っ張られ始める。「この設計で本当にいいのか」と思いながらも立ち止まれなくなる。そういうときにCoworkで壁打ちすると、同じMacのファイルを直接読ませながら、CLIとは独立したコンテキストで意見をもらえる。

これはClaude in Chrome MCPでは再現できない。MCPはCLIのコンテキストに統合される設計だからだ。

逆に言えば、Coworkのブラウザ操作用途(「このページを確認して」「フォームを入力して」)は、CLIユーザーにとってはClaude in Chrome MCPで置き換わる。Coworkが主役になるのは、CLIを使わないユーザーがブラウザ操作をClaudeに任せたいときか、CLIユーザーがコンテキスト分離を意図して使うときだ。


セットアップの要点

Claude in Chrome MCPを使い始めるには2つの準備が必要だ。

1. Chrome拡張機能のインストール

Chromeウェブストアから Claude in Chrome 拡張機能をインストールする(Chrome ウェブストア / 公式ドキュメント)。インストール後、接続が確立するとタブに「Claude (MCP)」タグが表示される。

2. Claude Codeの起動時に --chrome フラグを付ける

claude --chrome

または既存のCLIセッション内で /chrome コマンドを実行すると、その場でChrome連携を有効にできる。毎回フラグを付けたくない場合は /chrome から「Enabled by default」を選択すれば次回以降も自動で有効になる。


CLIからのブラウザ操作はClaude in Chrome MCPで統一する

Claude in Chrome MCPの登場で、CLIからのブラウザ操作の選択肢は整理される。

navigate・get_page_text・screenshot・gif_creator の4ツールが実際に動き、サブエージェントからも呼び出せることが確認できた。バックグラウンド実行を組み合わせれば、COOの対話をブロックせずにブラウザ操作を並行実行できる。

Coworkを使う場面は「fresh eyes(コンテキスト分離)が必要なとき」に絞られる。それ以外のブラウザ操作用途では、Claude in Chrome MCPが速く・直接的で・自動化しやすい。

Claude in Chrome MCPはまだ新しいツールで、公式ドキュメントや拡張機能の全量仕様(gif_creatorで使えるアクション種別の全量など)は [要確認] の項目が残っている。ただ、日常的なデータ収集・確認作業の用途であれば、今すぐ実用できるレベルだ。CLIワークフローにブラウザ操作を組み込みたいなら、まず試してみる価値がある。


Claude in Chrome MCPで「サブエージェントからブラウザを操れる」と分かると、次の問いが出てくる——AIエージェントを複数組み合わせたワークフローを、実際にどう設計・運用すればいいのか。

私はこの問いを掘り下げていくなかで、エージェントの役割分担・指示の渡し方・自動化の接続点といった設計パターンが、ブラウザ操作だけでなく執筆・調査・公開まで一貫して問われることに気づいた。その全体像をコードなしで構築する方法を、Zenn Bookシリーズにまとめている。

関連記事