An open-source headless browser engine written in Rust, born from the idea of giving every agent its own dedicated browser. Until now, headless Chrome has been the default choice for AI agent automation and web scraping, but it consumes hundreds of megabytes per session, takes time to start, and carries state such as cookies and cache over into the next run. Obscura addresses all three at once by pairing its own rendering engine with V8 instead of depending on Chromium. In practice, its biggest selling point is Chrome DevTools Protocol (CDP) support: existing Playwright and Puppeteer code can connect to it almost as-is. It was released in April 2026 and has gathered more than 20,000 stars on GitHub (as of August 2026).
Key Features
- A Rust engine that runs without Chromium: Rendering is implemented from scratch, and JavaScript runs on V8. It ships as a single native binary, with no need for a huge bundled Chromium
- Light and fast: Per the figures published by the project, a session uses roughly 30 MB of memory (headless Chrome uses over 200 MB) and starts in under 50 milliseconds. Static HTML loads in about 51 ms, and JavaScript-heavy dynamic pages in about 84 ms
- CDP support, so Playwright and Puppeteer just work: It implements the Target, Page, Runtime, DOM, Network, Fetch, IO, Storage, and Input CDP domains, so migrating is a matter of pointing existing automation scripts at a different endpoint. Use from Selenium is mentioned as well
- Sessions that carry no state forward: Each session is fully isolated, leaving no cookies or local storage behind. Agents running in parallel never mix each other’s state
- Stealth mode: Fingerprint randomization, realistic user-agent data, and native function masking, plus blocking of 3,520 known tracker domains
- A CLI and an MCP server built in: Four entry points ─
obscura fetch(single-page retrieval and screenshots),obscura scrape(parallel retrieval across multiple URLs),obscura serve(CDP WebSocket server), andobscura mcp(MCP server). The MCP server runs over both stdio and HTTP and exposes more than 15 tools to AI agents, including navigation, clicking, typing, and JavaScript evaluation - Broad distribution: Binaries for Linux (x86_64 / ARM64), macOS (Apple Silicon / Intel), and Windows, plus AUR, NixOS, a Docker image (about 57 MB compressed), and building from source with Rust 1.75+
Pricing
| Plan | Price | What’s included |
|---|---|---|
| Open source (Apache-2.0) | $0 | Every feature, including the engine, CLI, MCP server, and stealth mode. No feature gating. Self-hostable with Docker |
| Obscura Cloud | Contact required | Managed hosting, residential proxies, and dedicated support. Waitlist-only as of August 2026 |
Pricing is current as of August 2026. The open-source edition is free and fully featured. Obscura Cloud has not launched, so no price has been published. Check the official site for the latest information.
Pros & Cons
✅ Pros
- Far smaller memory footprint and startup time than headless Chrome, letting a single server run many sessions concurrently
- CDP support means existing Playwright and Puppeteer code moves over with almost no rewriting
- Apache-2.0 open source with nothing held back, and it can be kept entirely inside your own infrastructure with Docker
- Fully isolated sessions remove any worry about state pollution when running AI agents in parallel
- The bundled CLI and MCP server let you connect an agent without writing a script
⚠️ Cons
- Because the rendering engine is a custom implementation, intricate CSS, some Web APIs, media playback, compositor effects, and platform font rendering can differ from Chromium
- It is still an evolving project and is not suited to work that requires pixel-level fidelity, such as visual regression testing
- The managed cloud edition is still at the waitlist stage, so self-hosting is the only option available right now
- Running it requires server and Docker knowledge; it is not as effortless as a no-code scraping service
Comparison with Similar Services
| Criteria | Obscura | Headless Chrome (Playwright / Puppeteer) | Browserbase | Browserless |
|---|---|---|---|---|
| Delivery | OSS engine (self-hosted), cloud edition in preparation | OSS libraries plus your own Chromium | Managed cloud | Cloud plus self-hosting |
| Engine | Custom Rust implementation (V8) | Chromium | Chromium-based | Chromium-based |
| Memory / startup | About 30 MB, under 50 ms | Over 200 MB, hundreds of ms | Depends on the runtime | Depends on the runtime |
| Reusing existing code | Nearly as-is via CDP | ─ | Reusable over a CDP connection | Reusable over a CDP connection |
| Rendering fidelity | Can differ from Chromium | The baseline | Equivalent to Chromium | Equivalent to Chromium |
| Price | Free (Apache-2.0) | Free (infrastructure costs only) | Paid | Paid |
Who Is It For
- Developers who want AI agents to operate real web pages but have hit a ceiling on headless Chrome’s memory usage
- Anyone scraping large numbers of URLs in parallel who wants to raise the number of sessions one server can handle
- Teams that want everything to stay on their own infrastructure ─ Apache-2.0 plus Docker avoids lock-in to an external service
- People who want to give MCP-capable clients such as Claude Desktop or Cursor hands to operate a browser
- Teams with existing Playwright or Puppeteer code who want to swap only the execution layer for something lighter
Summary
Obscura is a Rust engine that takes the deliberate stance of rebuilding the browser for AI agents and scraping, tackling memory, startup time, and state pollution in one go. Its CDP compatibility makes it easy to move over from existing Playwright and Puppeteer code, and the bundled CLI and MCP server keep the agent-side connection simple. On the other hand, its rendering is not identical to Chromium, so for work that demands display fidelity it is realistic to keep using Chromium alongside it. A good starting point is to pull the Docker image or a binary and point an existing script at it to see how it behaves.