Browzie 0.1 is open source: MIT licensed, made for Windows 10 and 11.

Read the design

Tools

Nineteen tools.
One cursor.

Everything Claude needs to read a page and act on it, over MCP. Reads are instant and send no input. Input tools move a real cursor and return only what changed.

  • MCP over stdio
  • 10 loaded up front
  • Text snapshots, not screenshots

Showing all 19 tools.

click

Loaded up front, so Claude needs no tool-search turn to use it.

Refs, not pixels

Read the page as text.

A snapshot is one line per meaningful element, with a ref like [e12] on everything Claude can act on. It costs a few milliseconds, and after an action only the difference comes back.

snapshot4 ms

  1. heading “Create your account”
  2. textbox “Email” [e7]
  3. textbox “Name” [e8]
  4. checkbox “Send me the weekly summary” [e9]
  5. button “Create account” [e12]
  6. link “I already have an account” [e13]

A shortened example. Refs live in the extension’s memory, never in the page.

example.com/signup

Create your account

Emailada@example.com NameAda Lovelace Send me the weekly summary Create account I already have an account

Check your inbox

We sent a link to ada@example.com

Claude

batch

A whole flow, one turn.

The model’s round trips between steps are the largest cost in a task. With batch a known sequence runs as one call, each step keeps its human pacing, and it stops at the first step that fails.

{
  "steps": [
    { "action": "navigate", "url": "example.com/contact" },
    { "action": "fill", "fields": [
      { "text": "Name", "value": "Ada" },
      { "text": "Message", "value": "Hello!" } ] },
    { "action": "click", "text": "Send" },
    { "action": "wait_for", "text": "Thanks" }
  ]
}

one call per step

  1. navigate
  2. model turn
  3. fill
  4. model turn
  5. click
  6. model turn
  7. wait_for

with batch

  1. navigate
  2. fill
  3. click
  4. wait_for
  5. one line per step, full result of the last

Later steps target by text, role or selector, because their refs do not exist yet.

BROWZIE_PACE

Speed is a setting.

All three keep the same shapes: curved moves, separate button and key events, Shift as its own key. Only the clock changes.

fastdefault

A quick, confident user

Pointer move
45 to 250 ms
Typing
keystrokes; text over 40 characters in word chunks
Per site, per minute
up to 400 actions and 60 navigations

brisk

A practised user

Pointer move
Fitts’ law, shorter
Typing
key by key, at a quicker rhythm
Per site, per minute
stays inside human ranges

human

A careful person

Pointer move
Fitts’ law, up to 1.7 s
Typing
key by key with natural pauses, optional typos that get corrected
Per site, per minute
at most 40 actions and 14 navigations

Curved moves of 45 to 250 ms. Text over 40 characters goes in word chunks.

Pick a pace to see the same sentence typed three ways. A simulation of the model in extension/lib/human.js.

Configuration

Six switches, no config file.

Set them in the environment of the MCP server, for example with claude mcp add -e. The native host logs to %LOCALAPPDATA%\Browzie\host.log.

  • BROWZIE_PACE

    fastbriskhuman

    How quickly the pointer moves and keys are typed. fast is the default.

  • BROWZIE_YIELD

    windowanyoff

    window (default): stop only for your input in the Browzie window. any: stop for any input anywhere. off: never stop.

  • BROWZIE_DESKTOP

    numberGUIDoff

    The virtual desktop for Browzie’s windows. By default, the desktop Claude Code runs on.

  • BROWZIE_CHROME_PATH

    path

    The chrome.exe to start when Chrome is not running.

  • BROWZIE_DEBUG

    1

    Timing lines on stderr, for every hop.

  • BROWZIE_LENS_LOG

    file

    A file the cursor overlay writes its window decisions to.

Ready when you are

One browser.
Now, two cursors.

Clone it, run one installer, load the extension once, then ask Claude to open a page. You will see the purple cursor on its way.

Browzie for Claude Code

One installer, one unpacked extension, and Claude can use your Chrome.

Setup guide

Any MCP client stdio

Point any client that speaks stdio at server/server.js and it gets all 19 tools.

See the tools