macOS (Terminal):
curl -fsSL https://bryg.pages.dev/install.sh | sh
Windows (PowerShell):
irm https://bryg.pages.dev/install.ps1 | iex
npm / npx (any OS with Node.js 18+, if you'd rather configure your MCP client directly):
{
"mcpServers": {
"bryg": { "command": "npx", "args": ["-y", "bryg-mcp"] }
}
}
The bryg-mcp package is a launcher: on first run it downloads the BRYG engine for your platform into ~/.bryg/bin, verifies its checksum, and starts it — the same engine, the same license, the same ~/.bryg as the installers above. Activate with npx bryg-mcp activate <key>; every other command works the same way (npx bryg-mcp license, npx bryg-mcp setup, …).
The installer downloads the right binary for your OS/architecture to ~/.bryg/bin/ (%USERPROFILE%\.bryg\bin\ on Windows), verifies its SHA-256 checksum, then runs a guided setup that:
tesseract — Homebrew on macOS, winget on Windows) and sets the OCR language,bryg on your PATH,Non-interactive: macOS curl -fsSL https://bryg.pages.dev/install.sh | sh -s -- --yes --no-ocr; Windows $env:BRYG_YES='1'; irm https://bryg.pages.dev/install.ps1 | iex. Re-run setup anytime with bryg setup.
Requirements: macOS (Apple Silicon) or Windows 10/11 (x64); Google Chrome (or a Chromium-based browser via BRYG_CHROME); and an MCP client. The binary is self-contained — nothing else to install. BRYG launches a dedicated browser profile — it never touches your daily browser. Need an Intel Mac build, Linux, or another environment? It's available as custom work — email flexiblepackage@outlook.com.
| Command | What it does |
|---|---|
bryg | Start the MCP server (stdio) — this is what your MCP client runs |
bryg setup [--yes] [--no-ocr] [--no-path] | Guided setup (re-runnable) |
bryg uninstall [--yes] | Deactivate the license seat, unregister from MCP clients, remove from PATH, delete ~/.bryg |
bryg activate <key> | Activate your license on this machine |
bryg deactivate | Release this machine's license seat (move to another machine) |
bryg license | Show local license status |
bryg update [--check] | Update BRYG to the latest version (verified by checksum) |
bryg browser launch [url] | stop | update [--update] | Manage the dedicated automation browser |
| Environment variable | Meaning | Default |
|---|---|---|
BRYG_CHROME | Path to a Chromium-based browser binary | Google Chrome |
BRYG_PROFILE | Browser profile directory | ~/.bryg/chrome-profile |
BRYG_HEADLESS=1 | Run the browser headless | headful |
BRYG_CDP_PORT | Debug port; random picks & persists an unpredictable port | 9222 |
BRYG_CDP_HOST | Debug host | 127.0.0.1 |
BRYG_OCR_LANG | Tesseract language pack(s), e.g. eng+fra, or all | eng |
BRYG_AUTO_UPDATE=1 | Self-update automatically in the background | off |
BRYG_HOME | Data directory | ~/.bryg |
~/.bryg/config.json supports {"ocrLang": "...", "autoUpdate": true} — both are also set by bryg setup.
browser_tabs · browser_new_tab · browser_close_tab · browser_activate_tab · browser_navigate · browser_reload · browser_go_back · browser_go_forward · browser_page_info
browser_snapshot (accessibility tree with stable [ref=N] element handles, filterable) · browser_read (page text / links) · browser_screenshot · browser_ocr (multi-strategy, any tesseract language) · browser_qr (decode QR codes)
browser_click · browser_click_text (click by visible text) · browser_double_click · browser_right_click · browser_long_press · browser_hover · browser_drag · browser_scroll · browser_scroll_to
browser_type · browser_press_key (combos like Control+Shift+T) · browser_fill · browser_replace (select-all-and-replace; reliable on React controlled inputs) · browser_select_option · browser_focus · browser_upload · browser_login_fill (credentials from a local file — values never enter the AI conversation)
browser_evaluate (run JS) · browser_wait · browser_set_viewport · browser_pdf · browser_clipboard_read / browser_clipboard_write (move data across tabs via the OS clipboard, no permission popups)
network_start (record everything, keyword-filtered, or failures-only; sensitive headers/fields masked by default — see Security) · network_stop · network_status
xpath_by_text · xpath_at (from coordinates) · xpath_for_ref — short, semantic, verified-unique selectors for your test suites
BRYG checks a static version file at startup (anonymously, at most once per 24h). When an update is available, your AI assistant relays a short notice in the session — run ~/.bryg/bin/bryg update, then restart your MCP client. Prefer hands-off? Enable auto-update in bryg setup or with BRYG_AUTO_UPDATE=1.
In your purchase email from Polar. You can always retrieve it from the customer portal link in the same email.
Pick the number of devices at checkout — each device is $3/month, so 3 devices is $9/month. Your own key is issued immediately; for every additional device you give an email address, and the invitation link sent there issues that device its own key. Invitation links are valid for 24 hours — if one doesn't arrive, check your spam folder. When all devices are set up, every key is listed together in your customer portal, so you can copy them from one place.
Do it anytime in the customer portal: change the device count, confirm, and billing is prorated automatically. Adding a device does not affect the devices you already set up — they keep their existing keys. Note that once a subscription is set to cancel, you cannot add devices until you resume it.
Run bryg deactivate on the old machine (or deactivate the instance in the customer portal), then bryg activate <key> on the new one. One key = one active device.
All self-serve in the Polar customer portal (linked in every receipt email). Cancelling during the 14-day trial means you're never charged.
BRYG validates your subscription at startup and caches the result — you can work offline for up to 72 hours without re-validation.
Run bryg uninstall (add --yes to skip the prompt). It deactivates the license seat, unregisters BRYG from your MCP client(s) — leaving your other servers untouched — removes it from PATH, and deletes ~/.bryg. Manual alternative: remove the bryg entry from your MCP client config, delete ~/.bryg, and drop any PATH entry marked # added by bryg.
bryg setup now accepts config files saved with a UTF-8 BOM (common with Windows editors), and a broken config at one Claude Desktop location no longer prevents registering the others — it reports which file needs fixing and carries onbryg setup now registers with Microsoft Store installs of Claude Desktop too (previously only the classic installer was detected, so BRYG never appeared in the Store version's connector list); bryg uninstall cleans up bothnpx bryg-mcp — point your MCP client at it and BRYG installs itself on first runbrowser_screenshot gains save_path — save the capture straight to a file (PNG or JPEG by extension) instead of returning the image inlineallbryg uninstall command — deactivates the license seat, unregisters from MCP clients, cleans PATH, and removes ~/.brygirm https://bryg.pages.dev/install.ps1 | iex)raw option for unredacted capture)BRYG_CDP_PORT=random: unpredictable, persisted debug portbrowser_login_fill warns when the credentials file is readable by other usersbryg update self-update with checksum verification, opt-in automatic updatesbryg on your PATH