ブラウザ MCP サーバーに、本物のアイデンティティを
MCP クライアントの設定に Clearcote を追加すれば、モデルは 20 種類のツールを通じて、読み取り・クリック・入力のできるブラウザを使えるようになります。アイデンティティは環境変数で一度だけ設定するので、ツールの一覧は短く保たれ、エージェントの作業中もフィンガープリントの一貫性が保たれます。
キーがなければオープンビルドで動作します。最新ビルドを使うには、GitHub で取得できる無料キーを追加してください。
クライアントの設定に追加する
{
"mcpServers": {
"clearcote": {
"command": "npx",
"args": ["-y", "clearcote-mcp"],
"env": {
"CLEARCOTE_FINGERPRINT": "acct-1",
"CLEARCOTE_TIMEZONE": "America/New_York",
"CLEARCOTE_ACCEPT_LANGUAGE": "en-US"
}
}
}
}主なポイント
20 種類のツール
navigate、read_page、page_elements、click、fill_field、screenshot_page に加え、待機、キー入力、タブ、Cookie、PDF、セッションの保存も扱えます。
アイデンティティはプロンプトの外に
シード、プラットフォーム、ブランド、言語、タイムゾーンは CLEARCOTE_* 環境変数で指定します。モデルがフィンガープリントについて考える必要は一切ありません。
使い慣れたクライアントで
Claude Desktop、Cursor、Cline は同じ設定形式を使います。PyPI からインストールし、直接、または npx ランチャー経由で実行します。
自動化スイッチなし
サーバーは Playwright の自動化スイッチなしでブラウザを起動するため、navigator.webdriver は false のままです。また、CDP にありがちな副作用がページに及ばないよう、エンジンが抑えています。
生の CDP への出口
get_cdp_endpoint がブラウザの CDP URL を返すので、エージェントが作業していたのと同じセッションをスクリプトで引き継げます。
変数 1 つで最新ビルド
CLEARCOTE_LICENSE_KEY を追加すれば、オープンビルドの代わりに最新のライセンスビルドで動作します。
MCP サーバーの仕組み
サーバーは Clearcote ブラウザを 1 つ起動し、サーバーが動いている間それを保持します。各ツール呼び出しは、その共有ブラウザに対して行われます。モデルはページをテキストまたは Markdown として読み、表示されているリンク、ボタン、入力欄を、可能なものにはそれぞれ CSS セレクター付きで一覧にし、そのセレクターを使って操作します。そのため、モデルが自分でセレクターを書く必要はほとんどありません。
アイデンティティはサーバーの起動時に固定されます。ペルソナの基本項目(シード、プラットフォーム、ブランド、言語、タイムゾーン、プロキシ、geoip)は CLEARCOTE_* 変数で指定するため、サーバーのエントリー 1 つがアイデンティティ 1 つに対応し、タスクの途中でツールがそれを変えることはできません。そのほかのフィンガープリントフラグを使うには、SDK を直接使ってください。
Clearcote の操作をモデルに任せる方法は 2 つあります。このサーバーでは、モデルはブラウザの外にいてツールを呼び出します。一方、ブラウザ内エージェントはブラウザのプロセス内で動作し、あなたが選んだ OpenAI 互換のエンドポイントと通信します。
よく使うツール
| ツール | 機能 |
|---|---|
read_page | 表示中のページを Markdown(デフォルト)または表示されているテキストとして、HTTP ステータス付きで読み取る |
page_elements | 表示されているリンク、ボタン、入力欄を最大 200 件、可能なものには CSS セレクター付きで一覧表示 |
click | 要素をクリック |
fill_field | input または textarea に入力 |
screenshot_page | ページ全体の PNG スクリーンショットを、サーバーの書き込み用フォルダに保存 |
navigate | 現在のタブで URL を読み込み、最終的な URL とタイトルを返す |
save_profile | Cookie とストレージを名前付きファイルに保存し、後で Cookie を復元できるようにする |
get_cdp_endpoint | 生の CDP クライアント用に CDP URL を返す |
このほか、get_page_html、press_key、wait_for、evaluate_js、current_page、get_cookies、list_tabs、new_tab、close_tab、load_profile、get_egress_info、save_page_pdf(ヘッドレスのみ)があります。
主な用途
本物のブラウザでリサーチ
テキストだけを取得するのではなく、JavaScript による描画が必要なページをモデルに読ませます。
日常的な Web 作業
会員登録、設定ページ、ダッシュボードなど、本来なら手作業でクリックしていく作業。
アシスタントとデバッグ
ステージング環境のバグを Cursor に再現させ、各ステップのスクリーンショットを撮らせます。
自動化のプロトタイピング
モデルと一緒にフローをひととおりたどり、その後 CDP エンドポイントを取得してスクリプト化します。
Clearcote は、プライバシー保護、テスト、研究、合法的な自動化のために作られています。どう使うか、そしてアクセスするサイトの規約を守ることは、利用者ご自身の責任です。
標準の Chromium と Clearcote Pro の差は 38,921 行。
これが、Pro ビルドと Google が配布する Chromium との距離です。サイトが読み取れる値はすべて Chromium が計算する場所で設定されるため、ページ、その Worker、iframe がすべて同じデバイスを示します。
- Canvas
- WebGL
- WebGPU
- オーディオ
- フォント
- 画面とウィンドウ
- WebRTC
- TLS
- Client Hints
- 入力タイミング
- 音声とコーデック
Pro ビルド、r57 のパッチスタック(Chromium 156.0.8078.47)から集計。無料のオープンビルドは、より小さな公開パッチセットです。
345 files changed, 35915 insertions(+), 3006 deletions(-)
240 件のパッチ
領域別の変更ファイル数
- レンダリングエンジン(Blink)118
- ブラウザ(chrome/)52
- Content レイヤー42
- コンポーネント39
- ネットワークスタック22
- UI とウィンドウ14
- TLS(BoringSSL)11
- V8 と URL17
- その他30
対象プラン
MCP サーバーはすべてのプランで無料です。ライセンスキー(CLEARCOTE_LICENSE_KEY、または clearcote login で保存したキー)が見つからない限りオープンビルドで動作し、GitHub の無料キーがあれば、同時に 1 ブラウザまで最新ビルドで動作します。
よくある質問
どの MCP クライアントで使えますか?
設定ファイルから MCP サーバーを起動するクライアントです。上の例は Claude Desktop ですが、Cursor と Cline も同じ形式です。
フィンガープリントはモデルが制御するのですか?
いいえ。アイデンティティはサーバー起動時に環境変数から決まり、どのツールからも変更されません。これにより、セッション全体を通じてペルソナの一貫性が保たれ、ツールの一覧も短く済みます。
Node と Python のどちらが必要ですか?
どちらの場合も Python 3.10 以降が必要です。npm パッケージは、同じ Python サーバーを起動するランチャーだからです。上のインストール手順のとおり pip でインストールし(clearcote-mcp 自体が mcp ライブラリに依存しており、1.x と 2.x のどちらでも動作するため、バージョンを固定する必要はありません)、コマンドとして clearcote-mcp を指定してください。または、npx -y clearcote-mcp にサーバーを探させるか、インストールさせることもできます(uvx、pipx、pip のいずれかを使います)。
ブラウザ内エージェントとは何が違うのですか?
MCP サーバーでは、外部のモデル(チャットクライアント内のモデル)がツールを通じてブラウザを操作します。ブラウザ内エージェントはブラウザの中で動作し、設定したモデルのエンドポイントを呼び出します。どちらも同じエンジンを操作します。
エージェントのセッションをスクリプトで引き継げますか?
はい。get_cdp_endpoint はエージェントが使っているブラウザの CDP URL を返すので、Playwright や Puppeteer からそこに接続できます。
エージェントはローカルネットワークにアクセスできますか?
デフォルトではできません。clearcote-mcp 0.3.0 以降、自分のマシン上のアドレス、ローカルネットワーク、クラウドのメタデータエンドポイントは、ツールに渡された URL だけでなく、ブラウザが送るすべてのリクエストで拒否されます。ただし、ページのスクリプトが開く WebSocket や、チェックの後でアドレスが変わるホスト名は対象外です。そのため、これはサンドボックスではなく、ミスを防ぐための安全策です。ローカル開発では CLEARCOTE_ALLOW_PRIVATE_EGRESS=1 で無効にできます。ツールがページから返すテキストは信頼できないデータとして明示されるため、モデルはそれをあなたの指示と区別できます。
Puppeteer MCP サーバーはどうなったのですか?
Puppeteer MCP サーバー(@modelcontextprotocol/server-puppeteer)は、Model Context Protocol のリファレンスサーバーの 1 つでした。navigate、screenshot、click、hover、fill、select、evaluate の 7 つのツールで、モデルが Puppeteer を通じてローカルの Chrome を操作できるようにするものです。MCP プロジェクトは 2025 年 5 月 29 日にこれをアーカイブしたため、今後は更新されません。このサーバーは 20 種類のツールで同じ範囲をカバーし、ブラウザのアイデンティティの一貫性を保ったうえで、Puppeteer からの接続にも対応しています。get_cdp_endpoint が返すアドレスを puppeteer.connect() に渡してください。
ドキュメントで詳しく
関連する機能
browser-use、Stagehand、Crawl4AI や自作のエージェントに、エンジンレベルのアイデンティティを持つ Chromium を渡せます。Clearcote のオプトイン式ブラウザ内エージェントを、自分のモデルで動かすこともできます。
公式 Docker イメージ、serve()、CLI のいずれかで Clearcote を常駐の CDP エンドポイントとして動かし、どのフレームワークでもコードを変えずに接続できます。
API 呼び出し 1 回でクラウド上に Clearcote ブラウザを起動し、CDP 経由で Playwright や Puppeteer を接続できます。住宅用 IP 込みで、通信量 1 GB 単位の課金です。
canvas、WebGL、WebGPU、オーディオ、フォント、画面、ハードウェアを C++ のエンジン内で 1 つのシードから導出し、ロケールとタイムゾーンもそれに合わせます。すべての項目が互いに整合します。
関連記事
Clearcote を試す
Playwright & Puppeteer にそのまま組み込め、TLS ハンドシェイクまで整合性を保ちます。まずはオープンソースのビルドから始められます。
ブラウザ 1 つまで無料:GitHub、カード確認、または会社の Google アカウント。請求は一切ありません。