browser-use 0.2.2

A lightweight Rust library for browser automation via Chrome DevTools Protocol (CDP), featuring a built-in Model Context Protocol (MCP) server for AI-driven browser automation
Documentation

browser-use

中文文档

A lightweight Rust library for browser automation via Chrome DevTools Protocol (CDP).

✨ Highlights

  • Zero Node.js dependency - Pure Rust implementation directly controlling browsers via CDP
  • Lightweight & Fast - No heavy runtime, minimal overhead
  • MCP Integration - Built-in Model Context Protocol server for AI-driven automation
  • Simple API - Easy-to-use tools for common browser operations

Installation

Add to your Cargo.toml:

[dependencies]
browser-use = "0.1.0"

Quick Start

use browser_use::browser::BrowserSession;

// Launch browser and navigate
let session = BrowserSession::launch(Default::default())?;
session.navigate("https://example.com", None)?;

// Extract DOM with indexed interactive elements
let dom = session.extract_dom()?;

MCP Server

Run the built-in MCP server for AI-driven automation:

# Headless mode
cargo run --bin mcp-server

# Visible browser
cargo run --bin mcp-server -- --headed

Features

  • Navigate, click, input, screenshot, extract content
  • DOM extraction with indexed interactive elements
  • CSS selector or numeric index-based element targeting
  • Thread-safe browser session management

Requirements

  • Rust 1.70+
  • Chrome or Chromium installed

Acknowledgments

This project was inspired by and references agent-infra/mcp-server-browser.

License

MIT