Metadata-Version: 2.4
Name: chromium-sync-mcp
Version: 0.1.0
Summary: MCP server for accessing Chromium browser data (tabs, history, bookmarks) from Brave, Chrome, and Chromium
Project-URL: Homepage, https://github.com/jaidhyani/chromium-sync-mcp
Project-URL: Repository, https://github.com/jaidhyani/chromium-sync-mcp
Project-URL: Issues, https://github.com/jaidhyani/chromium-sync-mcp/issues
Author-email: Jai Dhyani <jai@dhyani.net>, "Claude Opus 4.5" <noreply@anthropic.com>
License-Expression: Apache-2.0
License-File: LICENSE
Keywords: bookmarks,brave,browser,chrome,chromium,claude,history,mcp,sync,tabs
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.11
Requires-Dist: mcp>=1.0.0
Requires-Dist: plyvel>=1.5.1
Provides-Extra: dev
Requires-Dist: pyright>=1.1.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.8.0; extra == 'dev'
Description-Content-Type: text/markdown

# chromium-sync-mcp

MCP server for accessing browser data (tabs, history, bookmarks) from Chromium-based browsers.

Supports **Brave**, **Chrome**, and **Chromium**.

## Installation

```bash
# Using uvx (recommended)
uvx chromium-sync-mcp

# Or install with pip
pip install chromium-sync-mcp
```

### System Requirements

Requires the LevelDB library:

```bash
# Ubuntu/Debian
sudo apt-get install libleveldb-dev

# macOS
brew install leveldb

# Fedora
sudo dnf install leveldb-devel
```

## Claude Code Configuration

Add to your Claude Code MCP settings:

```json
{
  "mcpServers": {
    "chromium-sync": {
      "command": "uvx",
      "args": ["chromium-sync-mcp"]
    }
  }
}
```

## Tools

| Tool | Description |
|------|-------------|
| `browser_tabs` | Get open tabs from all synced devices |
| `browser_history` | Search browsing history with optional filters |
| `browser_bookmarks` | Get bookmarks, optionally filtered by folder |
| `browser_search_bookmarks` | Search bookmarks by title or URL |
| `browser_select` | Select which browser to use (when multiple installed) |

## Configuration

### Auto-detection

The server automatically detects installed browsers in this order:
1. Brave
2. Chrome
3. Chromium

If multiple browsers are found, you'll be prompted to select one.

### Environment Variable

Override auto-detection by setting `CHROMIUM_PROFILE_PATH`:

```bash
export CHROMIUM_PROFILE_PATH=~/.config/google-chrome/Default
```

### Saved Preference

When prompted to select a browser, choose `save_default: true` to save your preference to `~/.config/chromium-sync/profile`.

## Supported Browsers

| Browser | Linux | macOS | Windows |
|---------|-------|-------|---------|
| Brave | ✓ | ✓ | ✓ |
| Chrome | ✓ | ✓ | ✓ |
| Chromium | ✓ | ✓ | ✓ |

## How It Works

This server reads directly from your browser's local profile files:

- **History**: SQLite database
- **Bookmarks**: JSON file
- **Synced Tabs**: LevelDB (contains tabs from all your synced devices)

No authentication or network requests required.

## License

Apache 2.0
