OpenTabs

OpenTabs

Open-source MCP server that gives AI agents access to 100+ web applications through the user's authenticated browser session. No API keys, no screenshots, no DOM scraping — talks directly to web app internal APIs via a Chrome extension. Supports Slack, Discord, GitHub, Jira, Notion, Reddit, X, and 100+ more services with ~2,000 tools. Works with Claude Code, Cursor, Windsurf, and any MCP client.

Category
访问服务器

README

OpenTabs

GitHub stars npm version License: MIT Node.js Platform PRs Welcome CI Docs

This is not another Playwright wrapper.

Every web app has internal APIs — the same endpoints its own frontend calls. OpenTabs reverse-engineered them and exposed them as MCP tools today. Your AI calls the same backend the web app calls — through your browser, using your existing session. No screenshots. No DOM scraping. No pixel-guessing.

<p align="center"> <img src="assets/demo-hero.gif" alt="Demo: AI checks stocks, orders food, and sends a Discord message — all through the browser" /> </p>

Watch the full video on YouTube

discord_send_message hits Discord's real backend — fast, deterministic, cheap on tokens. The knowledge gets packaged into a reusable plugin anyone can install.

How It Works

OpenTabs is two pieces:

  1. An MCP server that your AI talks to
  2. A Chrome extension that bridges the gap to your open tabs

Your AI calls a tool → the server routes it to the right tab → the plugin makes the API call using your session → the result flows back. That's the whole loop.

100+ plugins covering ~2,000 tools across Slack, Discord, GitHub, Jira, Notion, Figma, AWS, Stripe, Robinhood, DoorDash, Airbnb, and a lot more. Plus built-in browser tools (screenshots, clicking, typing, network capture, DOM inspection) that work on any tab without a plugin.

Works with Claude Code, Cursor, Windsurf, OpenCode, and any MCP client that supports Streamable HTTP.

Quick Start

You need Node.js 22+ and Chrome.

npm install -g @opentabs-dev/cli
opentabs start

First run creates ~/.opentabs/, generates an auth secret, and prints MCP config blocks you can paste straight into Claude Code or Cursor.

Load the Chrome extension:

  1. Open chrome://extensions/
  2. Turn on Developer mode
  3. Click Load unpacked → select ~/.opentabs/extension

Install a plugin:

opentabs plugin install <plugin-name>

Five minutes, start to finish.

<p align="center"> <img src="assets/demo-quick-start-install-uninstall.gif" alt="Demo: Install a plugin and uninstall another — full plugin lifecycle driven by AI" /> </p>

Watch the full video on YouTube

Build a Plugin

Point your AI at any website. It builds the plugin — analyzes the page, discovers the APIs, scaffolds the code, registers it. Most of the plugins in this repo were built by AI in minutes.

The MCP server ships with site analysis tools, the SDK handles the boilerplate, and a self-improving skill teaches AI agents the whole process. Every time an AI builds a plugin, it writes what it learned back into the skill — new auth patterns, API quirks, edge cases. The system gets better with every plugin built.

Publish yours and anyone can opentabs plugin install it. Keep it local for internal tools. The Plugin Development guide covers both paths.

Or build by hand:

opentabs plugin create my-app --domain .example.com
cd my-app && npm install
npm run build   # compiles, registers, notifies the running server

Security

I know you're the kind of person who sets DANGEROUSLY_SKIP_PERMISSIONS=1 the moment something asks for confirmation. I respect that. But your browser sessions are precious, so I wanted the defaults to be thoughtful — even for the fearless.

  • Everything starts off. Every plugin's tools are disabled by default. Not "ask for confirmation" — actually off. This includes the plugins I ship myself. What if my account gets compromised? What if a dependency gets hijacked? You shouldn't have to trust me blindly either.
  • AI-assisted code review. When you enable a plugin, the system offers to have your AI review the adapter source code first. It checks for data exfiltration, credential access, persistence mechanisms, and scope escalation. You see the findings, you decide.
  • Version-aware. When a plugin updates, permissions reset. New code, new review.
  • Three permission levels. Off (disabled), Ask (confirmation dialog before each call), or Auto (runs immediately). Set per-plugin or per-tool.
  • Runs locally. No cloud. No telemetry. Everything lives in ~/.opentabs/ on your machine.
  • Full audit log. Every tool call is logged — what ran, when, whether it succeeded.

The defaults are safe, the controls are in your hands, and the code is open source — read it.

<p align="center"> <img src="assets/demo-todoist-permissions.gif" alt="Demo: Permission dialog asking for approval before a tool call executes" /> </p>

Watch the full video on YouTube

FAQ

How is this different from browser automation (Playwright, Stagehand, Browser-Use)?

Browser automation simulates what a human would do — click, type, read the screen. Works on any site out of the box. The cost is speed, tokens, and the knowledge stays trapped in that one session.

OpenTabs plugins call the web app's internal APIs directly. A send-message tool isn't clicking a text box — it's making the same API call the frontend makes. Fast, cheap on tokens, and the knowledge is packaged into a reusable plugin. The downside is you need a plugin per site, and internal APIs can change. If a plugin breaks, open a PR.

What about Chrome's WebMCP?

Chrome's WebMCP is the right long-term direction — websites opt in and expose tools to AI agents natively. But adoption depends on every service choosing to participate, and that takes years.

OpenTabs is the proactive version. Instead of waiting, we reverse-engineer the APIs and expose them today. If WebMCP becomes widespread, plugins can evolve to use it — but you don't have to wait.

Why not just use official MCP servers?

If one works well for you, use it. I started building OpenTabs for apps that don't have MCP support — many had none when I began, and some probably never will. Along the way, I noticed: setting up separate API keys or OAuth flows for each service adds up. Public APIs sometimes have stricter rate limits or a smaller feature set. The web app is always the superset.

I see OpenTabs and official servers as complementary. Use whatever fits — or mix and match.

Architecture

Package What it does
MCP Server Plugin discovery, tool dispatch, audit log, permissions
Chrome Extension Adapter injection, tool relay, side panel UI (Manifest V3)
Plugin SDK OpenTabsPlugin base class, defineTool factory, SDK utilities
Plugin Tools Plugin developer CLI (opentabs-plugin build)
CLI User-facing CLI (opentabs start, opentabs plugin install, etc.)
Create Plugin Scaffolding CLI for new plugin projects

See Architecture docs for the full picture.

How This Was Built

OpenTabs was built entirely by AI agents. Zero hand-written application code.

I wrote structured PRDs — hundreds of them — and used Ralph, an autonomous agent loop, to execute them with Claude Code. Multiple workers ran in parallel, each claiming a PRD via optimistic locking with git push. Every PRD is open-sourced: opentabs-dev/opentabs-prds.

Contributing

I'd love your help. You need Node.js 22+ and Chrome.

git clone https://github.com/opentabs-dev/opentabs.git
cd opentabs
npm install
npm run build
npm run dev       # tsc watch + MCP server + extension

Before committing:

npm run check     # build + type-check + lint + knip + test

See the Development Setup guide for the full contributor workflow.

Docs

opentabs.dev/docs

This project wouldn't exist without Claude Code, OpenCode, Ralph, and RetroUI. Genuinely grateful for all of them.

Star History

<a href="https://star-history.com/#opentabs-dev/opentabs&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=opentabs-dev/opentabs&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=opentabs-dev/opentabs&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=opentabs-dev/opentabs&type=Date" /> </picture> </a>

Disclaimer

OpenTabs is an independent open-source project. It is not affiliated with, endorsed by, or sponsored by any of the third-party services it integrates with. All product names, logos, trademarks, and registered trademarks are the property of their respective owners. Use of these names in plugin identifiers is for identification purposes only and does not imply any association or endorsement.

This software interacts with third-party web applications using your existing authenticated browser sessions. You are responsible for ensuring your use of OpenTabs complies with the terms of service of any third-party platforms you connect to. The authors and contributors are not responsible for any unintended actions, data loss, account restrictions, or other consequences that may result from using this tool.

This software is provided "as is", without warranty of any kind. See the MIT License for the full terms.

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选