> ## Documentation Index
> Fetch the complete documentation index at: https://piyushvyas.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Slim Mode

> Expose only 5 essential MCP tools to reduce token overhead from ~4,200 to ~600 tokens.

# Slim Mode

Start the MCP server with `--slim` to expose only 5 essential tools instead of 23. This cuts tool definition tokens from approximately 4,200 to approximately 600 -- a major context savings for AI agents.

## Enable Slim Mode

<CodeGroup>
  ```bash CLI theme={null}
  npx @browseragentprotocol/mcp --slim
  ```

  ```bash Claude Code theme={null}
  claude mcp add --transport stdio bap-browser -- npx -y @browseragentprotocol/mcp --slim
  ```

  ```json Claude Desktop theme={null}
  {
    "mcpServers": {
      "bap-browser": {
        "command": "npx",
        "args": ["-y", "@browseragentprotocol/mcp", "--slim"]
      }
    }
  }
  ```
</CodeGroup>

## The 5 Essential Tools

| Tool         | Description                                    |
| ------------ | ---------------------------------------------- |
| `navigate`   | Navigate to a URL (with fused observe support) |
| `observe`    | See interactive elements with stable refs      |
| `act`        | Batch multiple interactions in one call        |
| `extract`    | Extract structured data with JSON schema       |
| `screenshot` | Capture page screenshot                        |

These 5 tools cover 95%+ of browser automation tasks.

## What You Lose

With slim mode, these tools are not available:

* **Individual interaction tools**: `click`, `fill`, `type`, `press`, `select`, `scroll`, `hover` -- use `act` to batch these instead
* **Advanced observation**: `accessibility`, `aria_snapshot`, `content`, `element` -- use `observe` with `responseTier`
* **Page management**: `pages`, `activate_page`, `close_page` -- single-tab workflows only
* **Navigation helpers**: `go_back`, `go_forward`, `reload` -- navigate to URLs directly
* **Discovery**: `discover_tools` -- no WebMCP discovery

<Note>
  In slim mode, use `act` for all interactions. Instead of calling `click` directly, use:

  ```
  act({ steps: [{ action: "action/click", selector: "role:button:Submit" }] })
  ```
</Note>

## When to Use Slim Mode

<CardGroup cols={2}>
  <Card title="Use Slim Mode" icon="check">
    * Most browser automation tasks - When token budget is limited - Single-tab workflows - When
      using `act` for batched interactions
  </Card>

  <Card title="Use Full Mode" icon="xmark">
    * Multi-tab workflows requiring `pages`/`activate_page` - When you need `aria_snapshot` for
      cheap page structure - When you need `content` for markdown extraction - When you need `element`
      for state queries - When using WebMCP `discover_tools`
  </Card>
</CardGroup>

## Token Comparison

| Mode        | Tools    | Definition tokens |
| ----------- | -------- | ----------------- |
| Full        | 23 tools | \~4,200 tokens    |
| Slim        | 5 tools  | \~600 tokens      |
| **Savings** |          | **\~85%**         |

<Tip>
  Start with slim mode. If you hit a limitation, switch to full mode. Most agents never need more
  than the 5 essential tools.
</Tip>
