Tabryn
Connects AI agents to your Chrome browser via MCP, enabling real-time control of existing tabs, sessions, and application state for development workflows.
README
<div align="center">
Tabryn
The Browser Runtime for AI Agents
Your browser. Your session. Any agent.
<br/>
Installation • Features • Architecture • Tools • CLI • Contributing
</div>
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.
<br/>
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 |
<br/>
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 install
Load Chrome Extension
- Open
chrome://extensions - Enable Developer mode
- Click Load unpacked
- Select the
extension/directory
That's it! Extension will auto-configure on first connection.
Add to MCP Client
<details> <summary><strong>Claude Code</strong></summary>
claude mcp add tabryn -- node /path/to/tabryn/dist/mcp/index.js
</details>
<details> <summary><strong>VS Code / Cursor</strong></summary>
Add to .vscode/mcp.json:
{
"servers": {
"tabryn": {
"command": "node",
"args": ["/path/to/tabryn/dist/mcp/index.js"]
}
}
}
</details>
<details> <summary><strong>Other MCP Clients</strong></summary>
Add to your MCP config:
{
"mcpServers": {
"tabryn": {
"command": "node",
"args": ["/path/to/tabryn/dist/mcp/index.js"]
}
}
}
</details>
Verify
node dist/cli/index.js doctor
<br/>
Architecture
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ AI Agent │────▶│ MCP Server │────▶│ Bridge │────▶│ Chrome │
│ │◀────│ │◀────│ │◀────│ Extension │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
stdio TCP Native Messaging DevTools API
Supported Agents:
Claude Code ─┐
Codex CLI ───┤
Kiro ────────┤
OpenCode ────┤
OpenClaw ────┼──→ Tabryn ──→ Your Chrome
Hermes ──────┤
Gemini CLI ──┤
Custom Agent ┘
<br/>
Available Tools
| Tool | Description |
|---|---|
list_tabs |
List all open Chrome tabs |
select_tab |
Activate a specific tab |
create_tab |
Open a new tab |
close_tab |
Close a tab |
navigate |
Navigate to URL or go back/forward |
read_page |
Read page accessibility tree |
screenshot |
Capture tab screenshot |
click |
Click at coordinates |
type |
Type text into focused element |
scroll |
Scroll the page |
form_input |
Set form element values |
execute_js |
Execute JavaScript in page context |
read_console |
Read console messages |
read_network |
Read network requests |
reload |
Reload the page |
wait |
Wait for page condition |
<br/>
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 │
└──────────────────────────────────────────────────────────────────────────┘
<br/>
CLI Commands
| Command | Description |
|---|---|
tabryn install |
Set up native messaging host and extension |
tabryn mcp |
Start the MCP server |
tabryn doctor |
Diagnose setup and connection issues |
<br/>
Configuration
Environment Variables
| Variable | Default | Description |
|---|---|---|
TABRYN_PORT |
18766 |
TCP port for MCP server ↔ Bridge communication |
<br/>
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.
<br/>
Architecture Decision Records
- ADR-0001: Communication Protocol — Why Native Messaging + TCP
<br/>
Contributing
See CONTRIBUTING.md for development setup and guidelines.
<br/>
License
<br/>
<div align="center">
Built with ❤️ for the AI agent community
</div>
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.