Tabryn
Tabryn
The Browser Runtime for AI Agents
Your browser. Your session. Any agent.
Installation • Features • Architecture • Tools • CLI • Contributing
Tabryn connects AI coding agents to the Chrome browser you're already using — existing tabs, existing sessions, real application state — through a universal MCP browser runtime.
Why Tabryn?
Browser automation traditionally means running a separate browser or profile. Coding agents need controlled access to the real development browser — the one with your logged-in sessions, your localhost tabs, your actual application state. Tabryn bridges this gap.
Features
Feature | Description |
Real Browser State | Access your actual Chrome tabs, sessions, and cookies |
MCP Native | First-class Model Context Protocol support |
Zero Config | Works out of the box with your existing Chrome |
Secure by Design | Local-only communication, no credential exposure |
Multi-Agent | Works with Claude Code, Codex, Kiro, OpenCode, Gemini CLI, and more |
Installation
# Clone and build
git clone https://github.com/idugeni/tabryn.git
cd tabryn
npm install
npm run build
# Set up native messaging host
node dist/cli/index.js installLoad Chrome Extension
Open
chrome://extensionsEnable Developer mode
Click Load unpacked
Select the
extension/directory
That's it! Extension will auto-configure on first connection.
Add to MCP Client
claude mcp add tabryn -- node /path/to/tabryn/dist/mcp/index.jsAdd to .vscode/mcp.json:
{
"servers": {
"tabryn": {
"command": "node",
"args": ["/path/to/tabryn/dist/mcp/index.js"]
}
}
}Add to your MCP config:
{
"mcpServers": {
"tabryn": {
"command": "node",
"args": ["/path/to/tabryn/dist/mcp/index.js"]
}
}
}Verify
node dist/cli/index.js doctorArchitecture
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ AI Agent │────▶│ MCP Server │────▶│ Bridge │────▶│ Chrome │
│ │◀────│ │◀────│ │◀────│ Extension │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
stdio TCP Native Messaging DevTools APISupported Agents:
Claude Code ─┐
Codex CLI ───┤
Kiro ────────┤
OpenCode ────┤
OpenClaw ────┼──→ Tabryn ──→ Your Chrome
Hermes ──────┤
Gemini CLI ──┤
Custom Agent ┘Available Tools
Tool | Description |
| List all open Chrome tabs |
| Activate a specific tab |
| Open a new tab |
| Close a tab |
| Navigate to URL or go back/forward |
| Read page accessibility tree |
| Capture tab screenshot |
| Click at coordinates |
| Type text into focused element |
| Scroll the page |
| Set form element values |
| Execute JavaScript in page context |
| Read console messages |
| Read network requests |
| Reload the page |
| Wait for page condition |
Example: Development Workflow
┌──────────────────────────────────────────────────────────────────────────┐
│ Agent: Edit code → Run dev server → list_tabs → find localhost tab │
│ Agent: screenshot → inspect UI → read_console → find errors │
│ Agent: click → interact → reload → verify fix │
└──────────────────────────────────────────────────────────────────────────┘CLI Commands
Command | Description |
| Set up native messaging host and extension |
| Start the MCP server |
| Diagnose setup and connection issues |
Configuration
Environment Variables
Variable | Default | Description |
|
| TCP port for MCP server ↔ Bridge communication |
Security
Tabryn is designed with security as a first-class requirement:
No credential exposure — Cookies, passwords, and session tokens are never sent to agents
Permission boundaries — Users control which tabs are accessible
Input validation — All messages are validated before processing
Local-only communication — All traffic stays on localhost
See SECURITY.md for the full security model.
Architecture Decision Records
ADR-0001: Communication Protocol — Why Native Messaging + TCP
Contributing
See CONTRIBUTING.md for development setup and guidelines.
License
Built with ❤️ for the AI agent community