Skip to main content
Glama

Airbrowser

CI PyPI npm License Discord

Open-source browser automation API with anti-detection — Undetectable Chrome for AI agents, web scraping, and automation. REST API + MCP server + VNC debugging. Selenium/Playwright alternative that bypasses Cloudflare.

Quick Start

Cloud Hosted (no setup)

Use the managed cloud version - no installation required:

https://airbrowser.dev

Docker (one-liner)

docker run -d -p 18080:18080 --name airbrowser ghcr.io/ifokeev/airbrowser-mcp:latest

# With NVIDIA GPU (recommended for anti-detection)
docker run -d -p 18080:18080 --gpus all --device /dev/dri:/dev/dri --name airbrowser ghcr.io/ifokeev/airbrowser-mcp:latest

Portable Downloads

Download and run - no Docker knowledge required:

Platform

Download

Requirements

Linux

airbrowser-linux.tar.gz

uidmap package or Docker

macOS

airbrowser-mac.tar.gz

Colima, Docker Desktop, or Podman

Windows

airbrowser-windows.zip

Docker Desktop or Podman

# Linux/macOS
tar -xzf airbrowser-*.tar.gz && cd airbrowser-* && ./airbrowser

# Windows: Extract zip and double-click airbrowser.bat

From Source

git clone https://github.com/ifokeev/airbrowser-mcp.git
cd airbrowser-mcp
docker compose up --build

# With NVIDIA GPU
docker compose -f compose.gpu.yml up --build

Local Mode (no Docker) — Linux only

Run natively without a container — zero container fingerprint for maximum anti-detection stealth. Tested on Ubuntu/Debian.

git clone https://github.com/ifokeev/airbrowser-mcp.git
cd airbrowser-mcp
uv run python run_local.py         # auto-installs deps + system packages
uv run python run_local.py --vnc   # with VNC viewer at http://localhost:6080/vnc.html

Requires Chrome installed on the host. See python run_local.py --help for options.

Service

URL

Description

Dashboard

http://localhost:8000/dashboard

Browser pool management UI

Swagger Docs

http://localhost:8000/docs/

Interactive API documentation

REST API

http://localhost:8000/api/v1/

Browser automation endpoints

MCP Server

http://localhost:3099/mcp

Model Context Protocol for AI agents

VNC

vnc://localhost:5900

Remote desktop (with --vnc flag)

noVNC

http://localhost:6080/vnc.html

Web-based VNC viewer (with --vnc flag)


Open http://localhost:18080 - all services available:

Service

Path

Dashboard

/

API Docs

/docs/

REST API

/api/v1/

MCP Server

/mcp

VNC Viewer

/vnc/

Features

  • Undetected Chrome (SeleniumBase UC)

  • 100+ concurrent browsers

  • Persistent profiles & cookies

  • Tab management

  • Proxy per browser (DataImpulse recommended)

  • MCP for AI agents

  • AI vision tools (optional)

GPU passthrough enables hardware-accelerated WebGL rendering via Vulkan, making the browser fingerprint match a real desktop machine. Without it, Chrome falls back to software rendering (SwiftShader) which is easily detected by anti-bot systems.

Requirements: NVIDIA GPU + NVIDIA Container Toolkit

# Docker Compose (recommended)
docker compose -f compose.gpu.yml up

# Docker run
docker run -d -p 18080:18080 \
  --gpus all \
  --device /dev/dri:/dev/dri \
  -e NVIDIA_VISIBLE_DEVICES=all \
  -e NVIDIA_DRIVER_CAPABILITIES=all \
  ghcr.io/ifokeev/airbrowser-mcp:latest

# Portable launcher
./airbrowser --gpu

Without a GPU, Chrome uses --use-gl=swiftshader automatically. With GPU passthrough, it uses --use-gl=angle --use-angle=vulkan for real GPU rendering.

AI Vision (Optional)

Enable AI-powered vision tools (what_is_visible, detect_coordinates) with any OpenAI-compatible vision backend. Vision turns on only when VISION_API_BASE_URL, VISION_API_KEY, and VISION_MODEL are all set.

When smart targeting is enabled per request, detect_coordinates can validate a raw vision point, optionally snap to a nearby clickable target, and return both the original click_point and a resolved_click_point with an outcome_status that tells you whether the result was confirmed, corrected, or needs inspection before clicking. Pair that with gui_click or MCP-compatible gui_click_xy to re-check coordinate clicks and request post-click feedback.

# Docker run
docker run -d -p 18080:18080 \
  -e VISION_API_BASE_URL=https://your-openai-compatible-endpoint/v1 \
  -e VISION_API_KEY=your-api-key \
  -e VISION_MODEL=your-vision-model \
  ghcr.io/ifokeev/airbrowser-mcp:latest

# Docker compose
VISION_API_BASE_URL=https://your-openai-compatible-endpoint/v1 \
VISION_API_KEY=your-api-key \
VISION_MODEL=your-vision-model \
docker compose up

MCP Client Configuration

Add airbrowser to your AI coding assistant:

claude mcp add airbrowser --transport http http://localhost:18080/mcp

Go to Cursor SettingsMCPAdd new MCP Server:

{
  "mcpServers": {
    "airbrowser": {
      "url": "http://localhost:18080/mcp",
      "transport": "http"
    }
  }
}

Add to your MCP settings:

{
  "mcpServers": {
    "airbrowser": {
      "url": "http://localhost:18080/mcp",
      "transport": "http"
    }
  }
}

Follow Cline MCP guide with:

{
  "mcpServers": {
    "airbrowser": {
      "url": "http://localhost:18080/mcp",
      "transport": "http"
    }
  }
}

Follow the Windsurf MCP guide with the config above.

Test your setup

Navigate to https://example.com and take a screenshot

Your AI assistant should create a browser, navigate to the URL, and return a screenshot.

Generated Clients

Auto-generated from OpenAPI spec:

# Python
pip install airbrowser-client

# TypeScript
npm install airbrowser-client

Community

Join our Discord server for support, feature requests, and discussion.

Docs

License

Fair Source - Free for up to 10 users. Cannot be offered as a hosted service. Commercial license required for larger deployments.

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
4dRelease cycle
21Releases (12mo)

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ifokeev/airbrowser-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server