# Pagerunner — The Browser Layer That Learns MCP server

Real Chrome profiles with site intelligence — already logged in, PII anonymization, sessions persist

## At a glance

Pagerunner — The Browser Layer That Learns is an MCP server in the Dev Tools & Git category. It runs locally over stdio via `npx -y pagerunner`, and declares no required credentials. It exposes 39 tools, including list_profiles, open_session and attach_session. It scores A (84/100) on the MCP Skills Hub health score as of Oct 28, 2026.

## Install

### How to install Pagerunner — The Browser Layer That Learns in Claude Code

1. Add the server

```bash
claude mcp add pagerunner -- npx -y pagerunner
```

2. Verify it's connected

```bash
claude mcp list
```

3. Sharing it with your team?

   Add `--scope project` to write it to .mcp.json in the repository root, which you can commit (with the secrets left as environment variables).

4. Use it in a session

   Ask Claude to use the tools this server exposes (e.g. list_profiles, open_session, attach_session). It discovers them automatically.

### How to install Pagerunner — The Browser Layer That Learns in Claude Desktop

1. Open your MCP config

   macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json

2. Add this server

```json
{
  "mcpServers": {
    "pagerunner": {
      "command": "npx",
      "args": [
        "-y",
        "pagerunner"
      ]
    }
  }
}
```

3. Restart Claude Desktop

   The tools appear under the 🔌 menu once the app reloads.

### How to install Pagerunner — The Browser Layer That Learns in Cursor

1. Create / edit .cursor/mcp.json in your project

```json
{
  "mcpServers": {
    "pagerunner": {
      "command": "npx",
      "args": [
        "-y",
        "pagerunner"
      ]
    }
  }
}
```

2. Enable it

   Cursor Settings → MCP → toggle the server on. Tools become available to the Composer/Agent.

### How to install Pagerunner — The Browser Layer That Learns in Codex CLI

1. Add to ~/.codex/config.toml

```toml
[mcp_servers.pagerunner]
command = "npx"
args = ["-y", "pagerunner"]
```

2. Run Codex

   Codex loads MCP servers from config.toml on startup and exposes their tools to the agent.

### How to install Pagerunner — The Browser Layer That Learns in Windsurf

1. Edit ~/.codeium/windsurf/mcp_config.json

```json
{
  "mcpServers": {
    "pagerunner": {
      "command": "npx",
      "args": [
        "-y",
        "pagerunner"
      ]
    }
  }
}
```

2. Reload

   Windsurf → Cascade → refresh MCP servers. Cascade can now call the tools.

### How to install Pagerunner — The Browser Layer That Learns in Cline

1. Open Cline → MCP Servers → Configure

   Adds to cline_mcp_settings.json.

2. Add the server

```json
{
  "mcpServers": {
    "pagerunner": {
      "command": "npx",
      "args": [
        "-y",
        "pagerunner"
      ]
    }
  }
}
```

### How to install Pagerunner — The Browser Layer That Learns in VS Code

1. Create .vscode/mcp.json

```json
{
  "servers": {
    "pagerunner": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "pagerunner"
      ]
    }
  }
}
```

2. Start it

   VS Code shows a ▶ Start action above the server entry. Agent mode (Copilot Chat) can then use the tools.

## Tools

- `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
- `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
- `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
- `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
- `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
- `get_network_log` — Inspect HTTP requests captured in a session
- `get_console_log` — Capture JavaScript console output from a tab
- `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`)
- `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

Source repository: https://github.com/Enreign/pagerunner.git

---

Source: https://mcp-skills-hub.vercel.app/mcps/io-github-enreign-pagerunner · MCP Skills Hub · data as of 2026-10-28T12:31:05Z
