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

# Char Extension

> Add tools to applications you don't control

<Note>
  **Private Beta** — [Contact us](mailto:alex@mcp-b.ai?subject=Char%20Extension) to get set up.
</Note>

The Char Extension is a Chrome extension that connects browsers to the [Tool Hub](/explanation/tool-hub). It adds tools to legacy portals, third-party SaaS, and any application where you can't embed Char directly.

## The problem

Not every application will add a script tag for you. Legacy portals maintained by another team. Third-party SaaS you don't control. Internal tools built years ago that nobody wants to touch.

You want AI agents to interact with these applications. But you can't modify them.

## How it works

The extension's service worker connects to the Tool Hub via WebSocket—same protocol as the embedded agent, different runtime.

```mermaid theme={null}
graph TD
    subgraph Browser
        SW[Extension]
        Tab1[Legacy Portal]
        Tab2[Third-Party SaaS]
    end

    Hub[Tool Hub]

    SW <-->|WebSocket| Hub
    SW -->|Inject scripts| Tab1
    SW -->|Inject scripts| Tab2
    Tab1 -->|registerTool| SW
    Tab2 -->|registerTool| SW
```

[User scripts](/guides/extension-user-scripts) inject into matching pages via Chrome's user scripts API. They call `registerTool()` to expose functionality. The extension aggregates tools from all tabs and uplinks them to the Hub.

## Where it runs

| Environment       | Use case                                                                  |
| ----------------- | ------------------------------------------------------------------------- |
| **Local browser** | Add tools to apps you use daily                                           |
| **Cloud browser** | [Autonomous Char](/guides/autonomous-char/index) for unattended execution |

The architecture is identical. Same extension, same Hub connection, different runtime.

## What you get

**Tools where you couldn't have them.** Legacy applications become AI-accessible without modifying their source code.

**Org-level scripts.** Scripts are defined at the org level and shared across users. Everyone gets the same tools for the same applications.

**Same governance.** Tool calls from the extension flow through the same [governance](/guides/governance/index) layer as everything else—access control, guardrails, approvals, audit.

## See also

<CardGroup cols={3}>
  <Card title="User Scripts" icon="code" href="/guides/extension-user-scripts">
    Write scripts that inject tools
  </Card>

  <Card title="Testing with CDP" icon="terminal" href="/guides/extension-testing">
    Test extension tools from Claude Code
  </Card>

  <Card title="Autonomous Char" icon="bot" href="/guides/autonomous-char/index">
    Run unattended in cloud browsers
  </Card>
</CardGroup>
