本文へスキップ

MCP サーバー:AI エージェントから Clearcote を操作する

Claude Desktop、Cursor、Cline を Clearcote の MCP サーバーに接続すると、モデルが 20 個のツールを使って 1 つの共有ブラウザを操作できます。ペルソナは環境変数で一度設定するだけなので、ツール群はシンプルなままです。エージェントが作業を進めている間も、その下のアイデンティティは整合性を保ちます。

MCP クライアントを設定する

クライアントの MCP 設定に Clearcote を追加します(例は Claude Desktop。Cursor / Cline も同じ形式です):

json
{
  "mcpServers": {
    "clearcote": {
      "command": "npx",
      "args": ["-y", "clearcote-mcp"],
      "env": {
        "CLEARCOTE_FINGERPRINT": "acct-1",
        "CLEARCOTE_PLATFORM": "windows",
        "CLEARCOTE_PROXY": "http://host:8080",
        "CLEARCOTE_GEOIP": "1"
      }
    }
  }
}

どちらの方法でも同じ Python サーバーが動くため、Python 3.10+ が必要です。先に pip でインストールしておけば、npx ランチャーはそのインストールを再利用します。あるいは、設定で "command": "clearcote-mcp" を指定してください。mcp のバージョンを固定しているのは、サーバーをビルド時に想定した MCP ライブラリのバージョンで動かすためです(clearcote-mcp 0.1.0 は mcp 2.x では動作しません):

bash
pip install -U clearcote clearcote-mcp "mcp[cli]<2"

ライセンスキーがない場合、サーバーはオープンビルドを実行します。最新のライセンスビルド(「GitHub で無料」または Pro)を使うには、env に CLEARCOTE_LICENSE_KEY を追加します(または clearcote login を一度実行します)。無料キーには clearcote SDK 0.30.0 以降が必要で、上のコマンドでインストールされます。

ツール

1 つの共有ブラウザを 20 個のツールで操作します:

ツール機能
navigate現在のタブで URL を読み込みます(最終的な URL とタイトルを返します)
read_page表示中のページをテキスト / Markdown として読み取ります
page_elements表示されているリンク、ボタン、入力欄を最大 200 件まで一覧にします。CSS セレクターがあれば併記します
clickDOM 要素をクリックします
fill_fieldinput / textarea に入力します
press_keyキーを押します(Enter、Tab など)
wait_forセレクターに一致する DOM 要素が現れるまで待機します
screenshot_pageページ全体の PNG スクリーンショットをサンドボックスのフォルダに保存します(パスを返します)
list_tabs / new_tab / close_tabタブの一覧表示 / 新規作成 / クローズを行います
save_profile / load_profileCookie とストレージをサンドボックス内の名前付きファイルに保存し、あとで Cookie を復元します。一度ログインすれば、そのセッションを使い回せます
get_egress_infoパブリック IP と、現在有効なペルソナを返します
get_cdp_endpoint直接接続するクライアント向けに CDP URL を返します

このほか、get_page_html、evaluate_js、current_page、get_cookies(読み取り専用)、save_page_pdf(ヘッドレス時のみ)があります。エージェントはページを読み、判断し、操作します。そのすべてを、ペルソナが一貫した 1 つの Clearcote インスタンスを通じて行います。

環境変数でペルソナを設定する

ペルソナの基本設定は CLEARCOTE_* 環境変数で行うため、モデルがアイデンティティを意識する必要はありません。その他のフィンガープリントのオプションは、SDK から直接指定してください。

bash
CLEARCOTE_FINGERPRINT=acct-1          # seed -> stable identity
CLEARCOTE_PLATFORM=windows            # windows | linux | macos | android
CLEARCOTE_BRAND=Edge                  # Chrome (default) | Edge | Opera | Vivaldi
CLEARCOTE_ACCEPT_LANGUAGE=en-US
CLEARCOTE_TIMEZONE=America/New_York
CLEARCOTE_PROXY=http://user:pass@host:8080
CLEARCOTE_GEOIP=1                     # timezone + language + WebRTC follow the proxy exit
CLEARCOTE_HEADLESS=0                  # show the window (default: headless)
CLEARCOTE_LICENSE_KEY=cc_lic_...      # optional -> the latest licensed build

認証付きプロキシにはライセンスビルドが必要です。オープンビルドは、プロキシの認証情報をブラウザに渡せません。

ガードレール

  • URL が localhost、プライベートネットワーク、クラウドのメタデータエンドポイントを指すツール呼び出しは拒否されます。これはミスを防ぐための安全策であって、サンドボックスではありません。evaluate_js で実行したスクリプトや、ページがたどるリンクからは、これらのアドレスに引き続きアクセスできます。許可するには CLEARCOTE_ALLOW_PRIVATE_EGRESS=1 を設定してください(ローカルの開発サーバーをテストする場合など)。
  • スクリーンショット、PDF、保存したセッションは <temp>/clearcote-mcp に書き込まれます(場所を変えるには CLEARCOTE_MCP_WRITE_DIR を指定します)。
  • 各ツール呼び出しは 90 秒でタイムアウトします(CLEARCOTE_MCP_TOOL_TIMEOUT)。
  • ブラウザは、MCP クライアントがサーバーを起動した時点で立ち上がります。「GitHub で無料」のキーでは、これで 1 つしかないブラウザ枠がすぐに埋まります。最初のツール呼び出し時に起動させたい場合は、CLEARCOTE_MCP_PREWARM=0 を設定してください。
MCP サーバーは Playwright の自動化フラグを付けずにブラウザを直接起動するため、navigator.webdriver は false のままです。また、CDP の利用時に通常生じる副作用は、エンジンがページに及ばないようにしています。自動化の方法は 2 つあります。ブラウザの外側にある LLM(この MCP サーバー)か、プロセス内で動くブラウザ内 AI エージェントです。

MCP ではなく、直接つなぐエンドポイントが必要な場合は デプロイ & Docker を参照してください。