Arche Browser
Arche Browser
MCP Server for Browser Automation and Full Local PC Control.
Control a real Chrome browser AND your entire computer from Claude Code or any MCP client.
Features
Full Browser Control: Navigation, clicks, typing, screenshots, and more
Full PC Control: Shell commands, Python execution, file system, clipboard, processes
Real Browser: Uses your actual Chrome with cookies, extensions, login sessions
Remote Access: Control browser/PC on any machine via SSE transport
Token Authentication: Secure remote access with auto-generated tokens
Minimal Design: Just a few powerful primitives that can do anything
Design Philosophy
Inspired by Eric Gamma's principles: Simple, Flexible, Powerful
Instead of hundreds of specific tools, Arche provides a few powerful primitives:
Primitive | What it does | What you can achieve |
| Execute any shell command | Volume, reboot, programs, services, ANYTHING |
| Execute Python code | Camera, Excel, AI, complex logic, ANYTHING |
| Desktop screenshot | Visual feedback for AI |
With just shell and python_exec, AI can literally control EVERYTHING on your computer.
Installation
# From PyPI
pip install arche-browser
# From GitHub
pip install git+https://github.com/GizAI/arche-browser.git
# One-liner (no install)
uvx arche-browserUsage
Browser Only (Default)
arche-browserClaude Code config:
{"mcpServers": {"browser": {"command": "arche-browser"}}}Full PC Control
arche-browser --localClaude Code config:
{"mcpServers": {"arche": {"command": "arche-browser", "args": ["--local"]}}}PC Control Only (No Browser)
arche-browser --local --no-browserRemote Access (SSE)
On the machine with Chrome:
arche-browser --sse --port 8080 --local
# Output:
# [*] Auth: ENABLED
# [*] Token: abc123...
# [*] Connect URL: http://localhost:8080/sse?token=abc123...On Claude Code:
{"mcpServers": {"remote": {"url": "http://YOUR_IP:8080/sse?token=YOUR_TOKEN"}}}Local Control Tools
Core Primitives
Tool | Description |
| Execute shell command (bash/cmd/powershell) |
| Execute Python code with full system access |
| Capture desktop screenshot |
Convenience Tools
Tool | Description |
| Read file content |
| Write file content |
| List directory contents |
| Delete file or directory |
| Copy file or directory |
| Move/rename file or directory |
| Get clipboard content |
| Set clipboard content |
| Get OS, CPU, memory, disk info |
| List running processes |
| Kill a process |
What You Can Do
# Volume control (Windows)
shell("powershell (Get-AudioDevice -Playback).SetMute($false)")
# Take a photo with webcam
python_exec("""
import cv2
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
cv2.imwrite("photo.jpg", frame)
cap.release()
""")
# Create Excel spreadsheet
python_exec("""
import openpyxl
wb = openpyxl.Workbook()
ws = wb.active
ws['A1'] = 'Sales Report'
ws['A2'] = 1000
wb.save('report.xlsx')
""")
# System maintenance
shell("cleanmgr /d C:") # Windows disk cleanup
shell("sudo apt autoremove") # Linux cleanup
# Reboot computer
shell("shutdown /r /t 60") # Windows
shell("sudo reboot") # Linux
# Kill a program
process_kill(name="notepad.exe")Browser Tools
Navigation
Tool | Description |
| Navigate to URL |
| Get current URL |
| Get page title |
| Reload page |
| Go back in history |
| Go forward in history |
DOM & Input
Tool | Description |
| Get element text |
| Get element HTML |
| Click element |
| Type into input |
| Select dropdown |
| Check/uncheck |
| Scroll page |
Screenshots & PDF
Tool | Description |
| Take screenshot |
| Generate PDF |
Cookies & Storage
Tool | Description |
| Get cookies |
| Set cookie |
| Get localStorage |
| Set localStorage |
JavaScript
Tool | Description |
| Execute JS |
CLI Options
arche-browser [OPTIONS]
Mode:
--local Enable full local PC control
--no-browser Disable browser tools (requires --local)
Transport:
--sse Run as SSE server for remote access
--port PORT SSE server port (default: 8080)
Browser:
--headless Run Chrome in headless mode
Authentication:
--no-auth Disable token authentication
--token TOKEN Use specific auth token
--show-token Show current auth token
--reset-token Generate new auth tokenArchitecture
arche_browser/
├── __init__.py # Package exports
├── __main__.py # CLI entry point
├── chrome.py # Chrome process management
├── browser.py # Full CDP browser automation
├── server.py # MCP server with all tools
├── auth.py # Token authentication
├── local.py # Local PC control primitives
└── sites/
└── chatgpt.py # ChatGPT-specific clientSecurity
Token Authentication: Remote SSE servers require authentication by default
Explicit Opt-in: Local PC control requires
--localflagNo Sandbox: Local control has NO restrictions - use responsibly
Requirements
Python 3.10+
Chrome, Chromium, or Edge browser (for browser tools)
MCP client (Claude Code, etc.)
License
MIT