Brave Browser MCP Server
by SlaveOfGod1
README.md
# 🦁 Brave Browser MCP Server
A powerful **Model Context Protocol (MCP)** server that gives AI agents full control over your **Brave Browser**. Unlike standard automation, this server is optimized for **local LLMs** (like Qwen3.5 27B) to ensure low latency and high reliability.
---
## ⚡ Quick Setup
### 1. Install dependencies
```bash
pip install mcp[cli] playwright
playwright install chromium
```
> **Note:** Even though we use Brave, Playwright needs its driver components to control it.
### 2. Add to Claude Desktop (or your MCP Host)
Edit your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"brave-browser": {
"command": "python",
"args": ["C:/PATH/TO/MCP-Brave-Browser/server.py"]
}
}
}
```
---
## 🔧 Optimized Tools (27)
### Speed & Discovery (VITAL for Local Models)
| Tool | Description |
|------|-------------|
| `page_summary` | **Instant Orientation.** Returns Title, H1s, and Meta info. Use this first to save context. |
| `find_elements` | **Targeted Search.** Finds specific items by text/URL. Faster than reading a whole page. |
| `snapshot` | **Accessibility Tree.** Returns elements with `ref=N` IDs. |
### Navigation
| Tool | Description |
|------|-------------|
| `navigate` | Opens a URL. |
| `get_page_info` | Returns current URL and page title. |
| `tabs` | List, open, close, or switch tabs. |
### Page Interaction
| Tool | Description |
|------|-------------|
| `click` / `hover` | Interact via CSS selector or `ref=N` from snapshot. |
| `type_text` | Real-time character typing. |
| `fill_input` | Instant form filling. |
| `take_screenshot` | Visual verification (Timestamped in `/screenshots`). |
---
## 🚀 Performance Tips (Context & Compute)
If you are using a **local 4B-9B model**, full page snapshots can be slow. Use these strategies to make it lightning fast:
1. **Filter Noise**: Use `snapshot(interactive_only=True)`. This strips out `div`, `section`, and `nav` containers, returning only the interactive elements. It usually reduces context size by **70%**.
2. **Scope your Search**: Use `snapshot(selector="#main-content")` to only see a specific part of the page.
3. **Use Summaries First**: Instead of taking a snapshot immediately, call `page_summary()` to understand where you are.
4. **Targeted Discovery**: Use `find_elements(query="Login")` if you just need to find one specific button.
---
## ⚙️ Configuration
| Setting | Default | Override |
|---------|---------|----------|
| Brave path | `C:\Program Files\BraveSoftware\Brave-Browser\Application\brave.exe` | Set `BRAVE_EXECUTABLE_PATH` env var |
| Profile Path | `./brave_mcp_profile` | Managed automatically (Persistent sessions) |
---
## 📦 Dependencies
- `mcp[cli]` — FastMCP framework
- `playwright` — High-speed browser automation engine
---
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues