← Back to Discover

Lightpanda

Headless browser written in Zig for AI agents and automation, with a CDP server, a native MCP server and an agent mode that drives pages from plain-English tasks.

Browser automationMCP servers

What it does

Lightpanda is a headless browser written from the ground up in Zig rather than forked from Chromium or WebKit. Its README reports about 16 times less peak memory and about 9 times faster execution than headless Chrome for 100 pages, in its own benchmark on an AWS EC2 m5.large instance. From the command line it can fetch a page and dump it as HTML, Markdown or structured data, or start a CDP server that Puppeteer and Playwright clients connect to, with WebDriver BiDi also available. An agent mode takes plain-English tasks or slash commands and controls the browser by navigating, clicking, filling forms and extracting data. A session can be saved as a script and replayed later without a model. The agent works with providers including Anthropic, OpenAI, Gemini, Mistral, OpenRouter and local models through Ollama or llama.cpp. A native MCP server runs over stdio or over HTTP, where each connection gets its own browsing session. Binaries are offered for Linux and macOS and Docker images for amd64 and arm64. There is no native Windows build, so Windows users run it inside WSL. Telemetry is on by default and can be switched off with an environment variable, and the code is licensed AGPL-3.0.

Capabilities

  • Browser written in Zig, not based on Chromium or WebKit
  • CDP server for Puppeteer and Playwright clients, plus WebDriver BiDi
  • Command-line page dump as HTML, Markdown or structured data
  • Agent mode driven by plain-English tasks, with sessions saved as replayable scripts
  • Native MCP server over stdio or HTTP with separate browsing sessions
  • Optional robots.txt compliance, proxy support and network interception

When to use it

  • Giving an AI agent a browser tool while keeping memory use low
  • Running Puppeteer or Playwright scripts across many pages
  • Converting web pages to Markdown for a model to read
  • Prototyping a browsing task with a model, then replaying it as a script with no model at runtime