Mcp Browser Automation
MCP browser automation server. Exposes browser control tools to external AI systems via Model Context Protocol. Open-source & secure.
Overview
What is Algonius Browser?
The ### Algonius Browser is an open-source browser automation server designed to expose browser control tools to external AI systems via the Model Context Protocol (MCP). This innovative tool allows developers to integrate browser functionalities into their applications, enabling seamless automation and control of web interactions.
Features of Algonius Browser
- Open Source: Algonius Browser is fully open-source, allowing developers to access, modify, and contribute to its codebase.
- MCP Integration: It utilizes the Model Context Protocol to facilitate communication between AI systems and browser control tools.
- Secure: The browser is designed with security in mind, ensuring that automation tasks are performed safely and efficiently.
- User-Friendly Interface: The browser provides a straightforward interface for developers to implement automation tasks without extensive setup.
- Community Support: Being an open-source project, it has a growing community of contributors and users who provide support and enhancements.
How to Use Algonius Browser
- Installation: Begin by cloning the repository from GitHub and following the installation instructions provided in the documentation.
- Setup: Configure the browser settings according to your requirements. This may include setting up the Model Context Protocol for communication with AI systems.
- Automation Tasks: Utilize the provided APIs to create automation scripts that can control browser actions such as navigation, form submission, and data extraction.
- Testing: Run your automation scripts in a controlled environment to ensure they function as expected before deploying them in a production setting.
- Contribute: If you have improvements or features to add, consider contributing to the project by submitting pull requests on GitHub.
Frequently Asked Questions
Q1: Is Algonius Browser free to use?
A1: Yes, Algonius Browser is open-source and free to use under the Apache-2.0 license.
Q2: Can I integrate Algonius Browser with existing AI systems?
A2: Absolutely! The browser is designed to work with external AI systems via the Model Context Protocol, making integration straightforward.
Q3: Where can I find the documentation for Algonius Browser?
A3: Documentation is available in the repository on GitHub, which includes installation instructions, API references, and usage examples.
Q4: How can I report issues or request features?
A4: You can report issues or request features by opening an issue in the GitHub repository. The community actively monitors and responds to feedback.
Q5: Is there a community for Algonius Browser users?
A5: Yes, there is an active community of users and contributors on GitHub, where you can ask questions, share experiences, and collaborate on projects.
Details
🌐 Overview
Algonius Browser is an open-source MCP (Model Context Protocol) server that provides browser automation capabilities to external AI systems. It exposes a comprehensive set of browser control tools through the MCP protocol, enabling AI assistants and other tools to navigate websites, interact with DOM elements, and extract web content programmatically.
🎯 Key Features
- MCP Protocol Integration: Standard interface for AI systems to control browser automation
- Chrome Extension: Background service worker that handles browser interactions
- Native Messaging: Go-based MCP host that bridges Chrome extension with external tools
- Comprehensive Tool Set: 5 browser automation tools + 2 MCP resources
- Type Safety: Full TypeScript implementation with structured error handling
- Testing Suite: Comprehensive integration tests for all functionality
🛠️ Available MCP Tools
Navigation & Tabs
navigate_to
: Navigate to URLs with configurable timeout handlingmanage_tabs
: Create, close, and switch between browser tabs
DOM Interaction
get_dom_extra_elements
: Advanced DOM element extraction with pagination and filteringclick_element
: Click DOM elements using CSS selectors or text matchingset_value
: Set values in input fields, textareas, and form elementsscroll_page
: Scroll pages up or down with customizable distances
📋 Available MCP Resources
Browser State Resources
-
browser://current/state
: Complete current browser state in AI-friendly Markdown format- Active tab information
- All browser tabs with URLs, titles, and status
- Real-time state updates via resource notifications
-
browser://dom/state
: Current DOM state overview in Markdown format- Page metadata (URL, title, scroll position)
- First 20 interactive elements
- Total element count with "more available" indicators
- Simplified DOM structure
- Auto-updates when page changes
🚀 Quick Start
1. Install Chrome Extension
From Chrome Web Store (Recommended):
<a href="https://chromewebstore.google.com/detail/algonius-browser-mcp/fmcmnpejjhphnfdaegmdmahkgaccghem" target="_blank"> <img src="https://github.com/user-attachments/assets/4c2c0b5e-8f63-4a8b-9a5e-2d7e8f3c9b1a" alt="Available in the Chrome Web Store" width="248" height="75"> </a>- Click the "Add to Chrome" button on the Chrome Web Store page
- Confirm the installation when prompted
- The extension will be automatically installed and ready to use
From Source (Development):
### Clone and build
git clone https://github.com/algonius/algonius-browser.git
cd algonius-browser
pnpm install
pnpm build
### Load in Chrome
### 1. Open chrome://extensions/
### 2. Enable "Developer mode"
### 3. Click "Load unpacked"
### 4. Select the 'dist' folder
⚠️ Important: The Chrome extension requires the MCP Host backend service to function properly. Please continue with step 2 to complete the installation.
2. Install MCP Host
One-Click Installation (Recommended):
Linux/macOS:
curl -fsSL https://raw.githubusercontent.com/algonius/algonius-browser/master/install-mcp-host.sh | bash
Windows (PowerShell):
iwr -useb https://raw.githubusercontent.com/algonius/algonius-browser/master/install-mcp-host.ps1 | iex
Manual Installation:
### Download latest release
wget https://github.com/algonius/algonius-browser/releases/latest/download/mcp-host-linux-x86_64.tar.gz
### Extract and install
tar -xzf mcp-host-linux-x86_64.tar.gz
cd mcp-host-linux-x86_64
./install.sh
3. Verify Installation
### Test the MCP host installation
mcp-host-go --version
### The MCP host will be automatically started when needed by the Chrome extension
### You should see the extension icon in your Chrome toolbar
✅ Success: Both components are now installed! The Chrome extension will automatically communicate with the MCP Host when browser automation is requested.
🔧 Integration Examples
Using with AI Assistants
Once installed, AI systems can use the browser automation tools and resources through the MCP protocol:
Tool Usage:
{
"method": "tools/call",
"params": {
"name": "navigate_to",
"arguments": {
"url": "https://example.com",
"timeout": 30000
}
}
}
Resource Access:
{
"method": "resources/read",
"params": {
"uri": "browser://current/state"
}
}
Common Workflows
Web Scraping:
navigate_to
→ Navigate to target site- Read
browser://dom/state
→ Get page overview get_dom_extra_elements
→ Get specific elements with paginationclick_element
→ Interact with elements- Read
browser://dom/state
→ Extract updated content
Form Automation:
navigate_to
→ Go to form page- Read
browser://dom/state
→ Identify form elements set_value
→ Fill form fieldsclick_element
→ Submit form- Read
browser://current/state
→ Verify completion
Multi-Tab Management:
- Read
browser://current/state
→ Check current tabs manage_tabs
→ Create/switch tabsnavigate_to
→ Load content in each tab- Read
browser://current/state
→ Monitor all tab states
Page Navigation with Scrolling:
navigate_to
→ Go to target page- Read
browser://dom/state
→ Get initial page state scroll_page
→ Scroll to load more contentget_dom_extra_elements
→ Extract newly loaded elements
🏗️ Architecture
External AI System
↓ (MCP Protocol)
MCP Host (Go)
↓ (Native Messaging)
Chrome Extension
↓ (Chrome APIs)
Browser Tabs
Components
- MCP Host: Go-based native messaging host that implements MCP protocol
- Chrome Extension: Background service worker with tool handlers
- Content Scripts: DOM interaction and data extraction utilities
- Integration Tests: Comprehensive test suite for all tools
🧪 Development
Build from Source
Prerequisites:
- Node.js 22.12.0+
- pnpm 9.15.1+
- Go 1.21+ (for MCP host)
Build Extension:
pnpm install
pnpm build
Build MCP Host:
cd mcp-host-go
make build
Run Tests:
### Extension tests
pnpm test
### MCP host tests
cd mcp-host-go
make test
Development Mode
### Extension development
pnpm dev
### MCP host development
cd mcp-host-go
make dev
📊 Supported Platforms
MCP Host:
- Linux x86_64
- macOS Intel (x86_64) and Apple Silicon (arm64)
- Windows x86_64
Chrome Extension:
- Chrome/Chromium 88+
- Microsoft Edge 88+
📚 Documentation
Detailed documentation available in the docs/
directory:
🤝 Contributing
We welcome contributions! Check out our CONTRIBUTING.md for guidelines.
Ways to contribute:
- Report bugs and feature requests
- Submit pull requests for improvements
- Add integration tests
- Improve documentation
- Share usage examples
🔒 Security
For security vulnerabilities, please create a GitHub Security Advisory rather than opening a public issue.
💬 Community
- Discord - Chat with developers and users
- GitHub Discussions - Share ideas and ask questions
📄 License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
👏 Acknowledgments
Built with these excellent open-source projects:
Made with ❤️ by the Algonius Browser Team
Give us a star 🌟 if this project helps you build better browser automation!
Server Config
{
"mcpServers": {
"algonius-browser": {
"command": "start",
"autoApprove": [
"click_element",
"get_dom_extra_elements",
"manage_tabs",
"scroll_page",
"type_value",
"navigate_to"
],
"disabled": false,
"timeout": 3600,
"url": "http://127.0.0.1:9333/sse",
"type": "sse"
}
}
}