Arche Browser

Arche Browser

An MCP server for comprehensive browser automation and full local PC control via shell commands and Python execution. It enables tasks like web navigation, file system management, and remote access through SSE with token authentication.

Category
Visit Server

README

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
shell() Execute any shell command Volume, reboot, programs, services, ANYTHING
python_exec() Execute Python code Camera, Excel, AI, complex logic, ANYTHING
screen_capture() 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-browser

Usage

Browser Only (Default)

arche-browser

Claude Code config:

{"mcpServers": {"browser": {"command": "arche-browser"}}}

Full PC Control

arche-browser --local

Claude Code config:

{"mcpServers": {"arche": {"command": "arche-browser", "args": ["--local"]}}}

PC Control Only (No Browser)

arche-browser --local --no-browser

Remote 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
shell(command) Execute shell command (bash/cmd/powershell)
python_exec(code) Execute Python code with full system access
screen_capture(path) Capture desktop screenshot

Convenience Tools

Tool Description
file_read(path) Read file content
file_write(path, content) Write file content
file_list(path, pattern) List directory contents
file_delete(path) Delete file or directory
file_copy(src, dst) Copy file or directory
file_move(src, dst) Move/rename file or directory
clipboard_get() Get clipboard content
clipboard_set(content) Set clipboard content
system_info() Get OS, CPU, memory, disk info
process_list() List running processes
process_kill(pid/name) 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
goto(url) Navigate to URL
get_url() Get current URL
get_title() Get page title
reload() Reload page
go_back() Go back in history
go_forward() Go forward in history

DOM & Input

Tool Description
get_text(selector) Get element text
get_html(selector) Get element HTML
click(selector) Click element
type_text(selector, text) Type into input
select_option(selector, value) Select dropdown
check_box(selector, checked) Check/uncheck
scroll_to(x, y) Scroll page

Screenshots & PDF

Tool Description
screenshot(path) Take screenshot
pdf(path) Generate PDF

Cookies & Storage

Tool Description
get_cookies() Get cookies
set_cookie(name, value) Set cookie
storage_get(key) Get localStorage
storage_set(key, value) Set localStorage

JavaScript

Tool Description
evaluate(script) 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 token

Architecture

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 client

Security

  • Token Authentication: Remote SSE servers require authentication by default
  • Explicit Opt-in: Local PC control requires --local flag
  • No 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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured