- CollectionBrowser & Web Execution
- Classificationagent-native
- LicenseApache-2.0
- MCPAvailable
- Agent SkillUnavailable
- InterfacesMCP · CLI · STDIO · http
What it does
Obscura is a from-scratch headless browser engine written in Rust that runs real JavaScript via V8 and speaks the Chrome DevTools Protocol, so it works as a drop-in replacement for headless Chrome with Puppeteer and Playwright. The project reports ~30 MB memory per instance versus 200+ MB for headless Chrome. Release builds include a native rendering engine (screenshots, screencast, PDF export without Chromium), and an optional stealth build adds anti-detection. A built-in MCP server keeps a live browser session and exposes snapshot/act tools with element references to agents.
Agent-facing interfaces
- Interaction pattern: MCP (stdio or HTTP) + Daemon (CDP) + CLI
- Catalog protocols: MCP, CLI, STDIO, http
- MCP: ✅ Available (built into the obscura binary)
- Agent Skill: ⚠️ No official Agent Skill bundle; agents use the built-in MCP server or CDP.
- Onboarding type:
mcp
How agents onboard
Interaction pattern: MCP (stdio or HTTP) + Daemon (CDP) + CLI
# Download a release binary or Docker image (see GitHub releases), then:
obscura mcp # stdio MCP for Claude Desktop / Cursor / Claude Code
obscura mcp --http --port 3000 # Streamable HTTP MCP at http://127.0.0.1:3000/mcp
obscura serve # CDP server at ws://127.0.0.1:9222 for Puppeteer/Playwright
obscura fetch https://example.com # one-shot fetch
See the full onboarding section in the dossier.
Protocol surface
| Interface | Detail |
|---|---|
| MCP | obscura mcp (stdio) or obscura mcp --http --port 3000 (/mcp) |
| CDP | obscura serve — ws://127.0.0.1:9222 |
| CLI | obscura fetch <url> with --eval, --screenshot, --output |
| Library | Rust crate via git dependency |