Provides direct access to open tabs in Google Chrome, allowing reading tab content, listing all open tabs, and opening new tabs, with content optimized for AI consumption through readability processing and markdown conversion.
Offers experimental support for accessing open tabs in Safari, enabling reading tab content and listing open tabs, though with limitations due to Safari's lack of unique tab IDs.
@pokutuna/mcp-chrome-tabs
Model Context Protocol (MCP) server that provides direct access to your browser's open tabs content. No additional fetching or authentication required - simply access what you're already viewing.
Key Features
- Direct browser tab access - No web scraping needed, reads content from already open tabs
- Content optimized for AI - Automatic readability processing and markdown conversion to reduce token usage
- Active tab shortcut - Instant access to currently focused tab without specifying IDs
- MCP listChanged notifications - Follows MCP protocol to notify tab changes (support is limited in most clients)
Requirements
Important
macOS only - This MCP server uses AppleScript and only works on macOS.
- Node.js 20 or newer
- MCP Client such as Claude Desktop, Claude Code, or any MCP-compatible client
- macOS only (uses AppleScript for browser automation)
Getting Started
First, enable "Allow JavaScript from Apple Events" in Chrome:
- (en) View > Developer > Allow JavaScript from Apple Events
- (ja) 表示 > 開発 / 管理 > Apple Events からのJavaScript を許可
Standard config works in most MCP clients (e.g., .claude.json
, .mcp.json
):
Or for Claude Code:
Command Line Options
The server accepts optional command line arguments for configuration:
--application-name
- Application name to control (default: "Google Chrome")--exclude-hosts
- Comma-separated list of domains to exclude from tab listing and content access--check-interval
- Interval in milliseconds to check for tab changes and notify clients (default: 3000, set to 0 to disable)
Experimental Safari Support
Limited Safari support is available. Note that Safari lacks unique tab IDs, making it sensitive to tab order changes during execution:
MCP Features
Tools
List all open tabs in the user's browser with their titles, URLs, and tab references.
- Returns: Markdown formatted list of tabs with tab IDs for reference
Get readable content from a tab in the user's browser.
id
(optional): Tab reference fromlist_tabs
output (e.g.,ID:12345:67890
)- If
id
is omitted, uses the currently active tab - Returns: Clean, readable content extracted using Mozilla Readability
Open a URL in a new tab to present content or enable user interaction with webpages.
url
(required): URL to open in the browser
Resources
Resource representing the content of the currently active tab.
- URI:
tab://current
- MIME type:
text/markdown
- Content: Real-time content of the active browser tab
Resource template for accessing specific tabs.
- URI pattern:
tab://{windowId}/{tabId}
- MIME type:
text/markdown
- Content: Content of the specified tab
- Resources are dynamically generated based on currently open tabs
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
provides direct access to your browser's open tabs content. No additional fetching or authentication required - simply access what you're already viewing.
Related MCP Servers
- -securityFlicense-qualityFacilitates authentication with GitHub using OAuth protocol, allowing secure access and interaction with GitHub repositories and services.Last updated -4Python
- AsecurityAlicenseAqualityProvides functionality to fetch web content in various formats, including HTML, JSON, plain text, and Markdown.Last updated -4120,112515TypeScriptMIT License
- AsecurityFlicenseAqualityEnables interaction with the Twitch API, allowing users to retrieve comprehensive information about channels, streams, games, and more, with additional support for searching and accessing chat elements like emotes and badges.Last updated -1451TypeScript
- AsecurityFlicenseAqualityProvides functionality to fetch web content in various formats, including HTML, JSON, plain text, and Markdown.Last updated -4120,1122