Skip to main content
Glama

unbrowser

エージェント向けの低コストなブラウザパス。ネイティブバイナリ1つ。Chrome不要。

unbrowser MCP server

公式MCPレジストリID: mcp-name: io.github.protostatis/unbrowser

unbrowser は、エージェント向けのステートフルで非視覚的なWebランタイムです。curl/WebFetch と本物のブラウザの間に位置します。CookieとDOM状態を保持し、クエリ可能な要素参照を返し、リンクとHTMLフォームを処理し、チャレンジおよびSPAシグナルを検出し、静的HTMLでは不十分な場合に制限付きQuickJSページスクリプトを実行できます。

デフォルトの navigate は高速な静的/SSRパスです。 制限付きQuickJS実行が必要な場合にのみ exec_scripts: true を設定してください。重いSPA、ピクセル、V8の忠実性、拡張機能、インタラクティブなアンチボットチャレンジは、本物のChrome層に属します。

インストール前にライブの公開Webデモをお試しください。このデモはページに表示されている固定された公開ソースセットのみを受け付けます。プライベートデータ、Cookie、認証付きタスクを送信しないでください。公開スモークテスト用に、共有のStreamable HTTP MCPエンドポイントがhttps://unchainedsky.com/unbrowser-mcpで利用できます。本番セッションではローカルインストールを使用してください。

unbrowser は、アクセスを許可されているサイト、アカウント、データにのみ使用してください。 チャレンジ検出とCookieインポートは、アクセス制御やサイトの利用規約を回避する 許可を与えるものではありません。セッションCookieは認証情報として扱ってください。 ローカルに保持し、認可されたタスクに限定し、公開デモに送信しないでください。

適切なティアを選ぶ

ニーズ

curl / WebFetch

unbrowser

Real Chrome

静的 / SSR HTML

生のレスポンス

構造化されたBlockMap + DOMクエリ

フルブラウザ

Cookie、リンク、HTMLフォーム

自前

組み込み

組み込み

クライアントサイドのページスクリプト

制限付きQuickJS、オプトイン

V8

ピクセル、Canvas、WebGL、Worker、拡張機能

エージェント向け出力

自前のパース

要素参照、ページシグナル、構造化抽出

自前のCDP / DOMパース

インタラクティブなアクセスチャレンジ

検出 + 停止またはエスカレーション

認可済みブラウザ / 人間による確認

HTTPだけでは不十分で、フルブラウザを使うにはコストがかかりすぎる場合に unbrowser を使用してください。ページがChromeを必要とする場合、出力は実際には持っていない互換性を偽るのではなく、エージェントにエスカレーションするよう伝えます。

Related MCP server: Browserbase MCP Server

クイックスタート

Docker — Linux amd64/arm64、プルサイズ約13 MiB

docker pull ghcr.io/protostatis/unbrowser:latest

# One-shot navigation
docker run --rm ghcr.io/protostatis/unbrowser:latest \
  navigate https://example.com --json

# Default mode: MCP over stdio
docker run --rm -i ghcr.io/protostatis/unbrowser:latest

このイメージはdistrolessで、非rootとして実行されます。シェル、パッケージマネージャー、永続状態はありません。本番環境では :vX.Y.Z またはイメージダイジェストで固定してください。

Python

pipx install pyunbrowser   # recommended on macOS / modern Linux
# or, inside a Python 3.10+ virtual environment:
pip install pyunbrowser
from unbrowser import Client

with Client() as ub:
    ub.navigate("https://news.ycombinator.com")
    for link in ub.query(".titleline > a")[:3]:
        print(link["text"], link["attrs"]["href"])

macOSでは、/usr/bin/python3 は3.9であるためwheelをインストールできません。pipx またはHomebrewのPythonを使用してください。PyPIディストリビューションは pyunbrowser ですが、インポート名と実行可能ファイル名は引き続き unbrowser です。

MCP

{
  "mcpServers": {
    "unbrowser": {
      "command": "unbrowser",
      "args": ["--mcp"]
    }
  }
}

最小限のサーフェス: "--mcp-profile", "minimal" を追加すると、navigate/query/extract/help のみが公開され、エージェントは help(topic) で残りを発見できます。Pythonラッパーには、unbrowser-smart コンソールスクリプトとして3ツールのスマートサーバー(search/open/help)が同梱されています。

{
  "mcpServers": {
    "unbrowser": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "ghcr.io/protostatis/unbrowser:latest"
      ]
    }
  }
}

Cargo、リリースアーカイブ、ソースからのビルド、永続的なシェルセッション、生のJSON-RPC、すべてのMCPオプションについては、インストールおよびインターフェースリファレンス を参照してください。

エージェントが得られるもの

  • navigate はBlockMapを返します: ページタイトル、ランドマーク、見出し、インタラクティブ要素、密度シグナル、ASCIIアウトライン。サイズはページに依存します。固定トークンを約束するものではなく、計画用に構造化されています。

  • 安定した要素参照e:142): 要素を一度クエリすると、HTMLを再パースせずに clicktypesubmit を実行できます。

  • ステートフルなCookieとフォーム: Cookieジャー、GETおよびURLエンコードされたPOSTフォーム送信、リンク、リダイレクトがセッション内で保持されます。

  • ページおよびチャレンジシグナル: density.likely_js_filledthin_shellchallenge.provider は、エージェントにスクリプトを実行するか、埋め込みデータを検査するか、停止するか、認可されたブラウザセッションにエスカレーションするかを伝えます。

  • すべての結果に付随するルーティング支援: micro_hint(次に実行すべき具体的な単一ステップ)、next_tools(ランク付けされた候補)、avoid(操作対象のないツール)、そして retryable/severity/evidence を備えた安定した escalation 分類(challengethin_shellpartial_result、…)— 推奨事項は avoid と矛盾しません。

  • 構造化ヘルパー: ルート発見、カード抽出、テーブル正規化、text_main、セレクターデバッグが一般的な抽出ワークフローをカバーします。

スクリプトモードとエスカレーション

{"id":1,"method":"navigate","params":{"url":"https://example.com","exec_scripts":true}}

exec_scripts: true を設定すると、インラインおよび外部スクリプトが制限付きウォッチドッグの下でQuickJSで実行されます。これにより、軽量なハイドレーションやfetchで取得可能なデータが実体化されることがありますが、V8でもレンダリングエンジンでもありません。重いReact/Vue/Emberアプリでは、空のシェルが残る可能性があります。

許可されたタスクで実際のピクセル、Canvas/WebGL、Worker、ブラウザ拡張機能、V8互換性、認証済みプロファイル、または人間による確認が必要な場合は、unchainedsky-cli または Unchained にエスカレーションしてください。ユーザーがChromeで認可されたセッションをすでに確立している場合、cookies_set は必要なセッションCookieを有効期限までローカルにインポートできます。これはサイトの制御を回避するライセンスではありません。

ドキュメント

ニーズ

参照先

インストールパス、セッションCLI、ワンショットCLI、生のRPC、MCP、シム、完全なRPCテーブル

使用法リファレンス

スクリプト互換性、SPAシグナル、チャレンジ処理、認可されたCookieの引き渡し、エスカレーション

互換性とエスカレーション

ディストリビューションとサポート対象のディレクトリ一覧

ディストリビューションのメモ

ネイティブバイナリのビルド

ビルド手順

ライセンス

Apache-2.0 — LICENSE を参照してください。

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
10hResponse time
6dRelease cycle
17Releases (12mo)
Commit activity
Issues opened vs closed

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol server that provides browser automation capabilities using Playwright, enabling LLMs to interact with web pages through structured accessibility snapshots without requiring screenshots or visually-tuned models.
    22
    4,588,713
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables cloud browser automation through Browserbase and Stagehand, allowing LLMs to interact with web pages, take screenshots, extract data, and perform automated actions with support for proxies, stealth mode, and parallel sessions.
    14
    3,231
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Agent-native headless browser for AI agents. Converts web pages to a Semantic Object Model (SOM) instead of raw HTML — 17x average token reduction across real-world sites (up to 117x on complex pages). Native MCP server with fetch_page, extract_text, extract_links, and full browser automation. No API key required.
    37
    Apache 2.0

View all related MCP servers

Related MCP Connectors

  • Stealth web browser for agents: search, fetch, click and type through persistent sessions over MCP.

  • Scrape, crawl, map & search the web. Open-source, self-hostable Rust crawler & search for AI agents.

  • AI-powered browser automation — navigate, click, fill forms, and extract data from any website.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/protostatis/unbrowser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server