victauri-browser
Native messaging host + browser extension that brings Victauri's MCP inspection to any website -- not just Tauri apps.
How It Works
MCP Client → axum HTTP :7474 → Native Messaging (stdio) → Browser Extension → Content Script → Page
The Rust binary serves dual roles: HTTP server for MCP clients AND native messaging host for the browser extension. The extension injects a JS bridge into every page, giving agents the same DOM/interaction/inspection tools that victauri-plugin provides inside Tauri apps.
Install
Then load extensions/chrome/ (or extensions/firefox/) as an unpacked extension in your browser.
Connect
Point any MCP client at http://127.0.0.1:7474/mcp, or use the REST API:
# List available tools
# Take a DOM snapshot of the active tab
Tools
20 MCP tools available through the extension:
| Tool | What it does |
|---|---|
dom_snapshot |
Full accessible DOM tree with ref handles |
find_elements |
Search by text, role, selector, test ID |
click |
Click an element (with actionability checks) |
fill |
Set input/textarea value |
type_text |
Type character-by-character with key events |
press_key |
Dispatch keyboard events (Enter, Tab, Escape, combos) |
hover |
Trigger mouse hover events |
eval_js |
Execute JavaScript in the page |
screenshot |
Capture visible tab as PNG |
get_styles |
Computed CSS for any element |
get_bounding_boxes |
Pixel measurements with box model |
highlight_element |
Visual debug overlay |
clear_highlights |
Remove overlays |
audit_accessibility |
WCAG compliance check |
get_performance |
Navigation timing, heap, resources |
wait_for |
Poll for conditions (selector, text, URL) |
navigate |
Go to URL, go back |
get_cookies |
Read cookies for the current domain |
tabs.list |
List open browser tabs |
get_plugin_info |
Host version and status |
Security
- Localhost only --
127.0.0.1, never0.0.0.0 - Bearer auth -- optional token via
--tokenflag orVICTAURI_AUTH_TOKENenv var - Rate limiting -- token-bucket rate limiter
- Origin guard -- rejects cross-origin requests
- Port fallback -- tries :7474-7484 if the preferred port is taken
CLI
Browser Support
| Browser | Extension | Status |
|---|---|---|
| Chrome / Edge / Brave / Arc | extensions/chrome/ |
Full support (MV3 + CDP screenshots) |
| Firefox | extensions/firefox/ |
Full support (MV3, browser.* namespace, no CDP) |
Tests
&&
Documentation
Full API docs: docs.rs/victauri-browser
License
Apache-2.0 -- see LICENSE
Part of Victauri. Built by 4DA Systems.