Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者による説明(英語の原文)
Real Chrome profiles with site intelligence — already logged in, PII anonymization, sessions persist
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"pagerunner": {
"command": "npx",
"args": [
"-y",
"pagerunner"
]
}
}
}ターミナルでこれを実行します
claude mcp add pagerunner -- npx -y pagerunnerプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"pagerunner": {
"command": "npx",
"args": [
"-y",
"pagerunner"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"pagerunner": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"pagerunner"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント Enreign で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.8.0)がレジストリに届いたのは7 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Browser Use, Chrome DevTools MCP, MCP Server Browser
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
MCP server for Chrome DevTools
MCP server for browser use access
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
A Chrome browser automation MCP server. Connect Claude (or any MCP client) to a real Chrome session — using your existing profiles with their cookies, saved passwords, and history.
[!WARNING]
Pagerunner is early-stage software (v0.x). APIs and configuration formats may change between releases.
Pagerunner launches Chrome with your existing user profile via CDP (Chrome DevTools Protocol) and exposes it as an MCP server over stdin/stdout. Claude can then navigate, click, type, screenshot, and run JavaScript in the live browser.
1. Install
# Option A — Homebrew (easiest on macOS/Linux):
brew tap enreign/pagerunner brew install pagerunner
cargo install pagerunner
curl -L https://github.com/Enreign/pagerunner/releases/latest/download/pagerunner-macos-arm64 \ -o pagerunner && chmod +x pagerunner
curl -L https://github.com/Enreign/pagerunner/releases/latest/download/pagerunner-macos-x86_64 \ -o pagerunner && chmod +x pagerunner
curl -L https://github.com/Enreign/pagerunner/releases/latest/download/pagerunner-linux-x86_64 \ -o pagerunner && chmod +x pagerunner
xattr -d com.apple.quarantine pagerunner
cargo install --git https://github.com/Enreign/pagerunner --locked
cargo build --release
2. Auto-detect Chrome profiles
pagerunner init
This reads Chrome's profile list and writes ~/.pagerunner/config.toml automatically. Run pagerunner status to verify.
Alternatively, write ~/.pagerunner/config.toml by hand — see pagerunner example-config for the format.
3. Register as MCP server
# If installed (Options A or B — binary is in PATH):
claude mcp add pagerunner "$(which pagerunner)" mcp
claude mcp add pagerunner "$(pwd)/target/release/pagerunner" mcp
For Claude Desktop, add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": { "pagerunner": { "command": "/absolute/path/to/pagerunner", "args": ["mcp"] } } }
Note: The
mcpsubcommand is required — registering just the binary path withoutmcpwill not work.
Note: Chrome locks profile directories. Close any Chrome window using a profile before opening a Pagerunner session on it.
4. Set up in your project (optional)
In any project directory with a CLAUDE.md or AGENTS.md:
pagerunner init
Pagerunner prints a ready-to-use usage snippet and offers to append it to your project file automatically. For scripting: pagerunner init --json.
5. (Optional, `--features ner` builds only) Download the NER model
pagerunner download-model # ~65MB, enables PERSON/ORG name detection
Copy the example agent instructions into your project root so Claude (or any agent) immediately knows how to use Pagerunner:
# Claude Code projects:
curl -sL https://raw.githubusercontent.com/Enreign/pagerunner/main/docs/examples/CLAUDE.md -o CLAUDE.md
curl -sL https://raw.githubusercontent.com/Enreign/pagerunner/main/docs/examples/AGENTS.md -o AGENTS.md
Or paste the content manually and extend it with project-specific instructions.
For comprehensive guidance, workflows, and examples tailored to 4 different use cases, install the Pagerunner Skill:
# Install the skill (once available in skills.sh registry)
claude skill install pagerunner-skill
Or explore the skill repository directly: pagerunner-skill
The skill includes:
Start with the skill's SKILL.md to find your use case and quick start path.
| Tool | Description |
|---|---|
list_profiles | List configured Chrome profiles |
open_session | Launch Chrome for a profile, returns session_id |
attach_session | Attach to an existing Chrome instance via --remote-debugging-port |
close_session | Kill a Chrome session |
list_sessions | List active sessions |
list_tabs | List open tabs in a session |
new_tab | Open a new tab, returns target_id |
close_tab | Close a specific tab |
| Tool | Description |
|---|---|
navigate | Navigate a tab to a URL |
wait_for | Wait for a CSS selector, URL pattern, or fixed delay |
get_content | Get visible text content of a tab |
screenshot | Capture a tab as PNG (saved to temp file or inline base64) |
evaluate | Run JavaScript in a tab, returns the result |
| Tool | Description |
|---|---|
click | Click an element by CSS selector |
type_text | Type text at the focused element or a given selector |
fill | Set input value with React/Vue/Angular synthetic events |
select | Choose a dropdown option by value |
scroll | Scroll the page by pixels or scroll an element into view |
| Tool | Description |
|---|---|
save_snapshot | Save current page cookies/localStorage to the encrypted DB |
restore_snapshot | Restore a saved snapshot into the current tab |
list_snapshots | List saved snapshots (optionally across all profiles) |
delete_snapshot | Delete a saved snapshot |
save_tab_state | Save all open tab URLs to the DB |
restore_tab_state | Reopen the previously saved tabs |
| Tool | Description |
|---|---|
kv_set | Store a value in a persistent namespace |
kv_get | Retrieve a value by key |
kv_delete | Delete a key |
kv_list | List keys in a namespace (with optional prefix filter) |
kv_clear | Delete all keys in a namespace |
| Tool | Description |
|---|---|
get_network_log | Inspect HTTP requests captured in a session |
get_console_log | Capture JavaScript console output from a tab |
| Tool | Description |
|---|---|
get_site_knowledge | Inspect what Pagerunner has learned about a site (adapters, auth tokens, selector health) |
register_adapter | Store a JS adapter for direct API calls against a site |
call_site_api | Execute a stored adapter in the browser tab |
generate_adapter | Auto-generate a JS adapter from network traffic using Claude (requires ANTHROPIC_API_KEY) |
| Tool | Description |
|---|---|
save_session_checkpoint | Save full tab state (URLs + scroll positions) for all tabs in a session |
restore_session_checkpoint | Reopen all saved tabs and navigate to stored URLs |
list_session_checkpoints | List saved checkpoints for a profile |
delete_session_checkpoint | Remove a checkpoint by ID |
Pagerunner learns about sites as you use them and can call site APIs directly using your session credentials — no separate auth setup required.
Adapters are short JS functions stored in the encrypted DB and executed in the browser tab. Use them to call APIs that a site exposes (typically the same API the web UI uses):
register_adapter(origin="https://github.com", name="list-issues",
description="List open issues for a repo", js_code="async ({owner, repo}) => { const r = await fetch(...); return r.json() }")
call_site_api(session_id, target_id, origin="https://github.com", name="list-issues", params={"owner": "Enreign", "repo": "pagerunner"})
Seed adapters for GitHub, Linear, Jira, Notion, and Gmail are built in.
Auth token detection — Bearer tokens, API keys, and session cookies discovered in network traffic are stored in the encrypted site vault. Adapters automatically have access to them via the credentials argument.
Selector stability — click, fill, and select track success/failure rates per selector. A fragility warning appears in the tool response when a selector fails >30% of the time over ≥5 uses.
Save complete browser state (all open tabs with URLs and scroll positions) and restore it in any future session:
save_session_checkpoint(session_id, name="before-review")
→ checkpoint_id: cp_abc123
restore_session_checkpoint(session_id, checkpoint_id="cp_abc123") → reopens all saved tabs at their stored URLs
Checkpoints are stored in the encrypted DB and scoped to a profile.
A native Swift companion app lives at apps/menubar/. It shows all Chrome profiles, active sessions, open tabs, and daemon status from the menu bar — no terminal required.
Features:
Build and run:
pagerunner daemon &
cd apps/menubar bash scripts/package.sh # builds + bundles into scripts/Pagerunner.app open scripts/Pagerunner.app
Pass anonymize: true to open_session to strip PII from all get_content and evaluate results before they reach Claude. Screenshots are blocked in anonymization mode.
{ "tool": "open_session", "profile": "personal", "anonymize": true }
Detected by default: EMAIL, PHONE, CREDIT_CARD, IBAN, SSN, IP With `--features ner` build: also detects PERSON and ORG names via a local ONNX model
[EMAIL:a3f9b2]. Pass tokens back to fill/type_text — Pagerunner de-tokenizes before writing to the DOM.[EMAIL] — no vault, no de-tokenization.# 1. Build with NER support:
cargo build --release --features ner
冒頭だけを表示しています。続きはリポジトリで読めます