DLBrowser
OfficialProvides LangChain agents with reliable web browsing capabilities, including fetching, scraping, and structured data extraction, with automatic escalation through multiple backends to bypass blocks.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DLBrowserscrape this URL into clean markdown: https://example.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DLBrowser
Your AI agent is blind to the half of the web that fights back.
Cloudflare, captchas, and JavaScript walls block the tools agents use to browse — silently. DLBrowser is the one that gets through. One line. Self-healing. Metered to the credit.
npx dlbrowser connect --key dlb_xxxWires DLBrowser into Claude Code, Cursor, Windsurf, Cline & Codex in one command. Your agent gets 11 web tools that actually reach the page.
The 60-second try
pip install dlbrowser
dlbrowser fetch https://example.comEvery fetch tells you which backend got through and how long it took — because the engine picks the cheapest one that works and only escalates when a site fights back:
{ "success": true, "backend": "curl_cffi", "load_time": 0.03, "blocked": false }And every run is metered against a plan, in the open — no surprise invoice:
{ "plan": "scout", "remaining_daily": 497, "remaining_monthly": 2497,
"upgrade_url": "https://dekryptlabs.github.io/dlbrowser/pricing.html" }That's a real response from the live gateway. Start free — 2,500 credits, no card.
Related MCP server: ToolCenter MCP
Why your agent needs this
You wire web access into an agent. It works in the demo. Then it meets the real web:
One site loads with a 50ms HTTP request. The next is an empty React shell until JS runs.
Cloudflare and DataDome quietly serve your headless browser a challenge page.
Your agent's built-in fetch returns
""— not an error, an empty string — and keeps going.You have no idea which sites failed, which backend would've worked, or what any of it cost.
DLBrowser is the capability layer that fixes this. Not a scraper. Not a crawler. Acquisition infrastructure for AI agents — reliable, observable, billable.
The engine: start cheap, escalate only when blocked
curl_cffi → tls_client → playwright → nodriver (CDP) → firecrawl
~50ms ~200ms full JS max stealth last resort
HTTP-level, no browser │ browser-level, real Chromium
└── auto-escalates when a block is detected~70% of real fetches never need a browser. Starting with a 50ms request and climbing the ladder only on a detected block keeps you fast and cheap — while still getting through the sites that stop everything else. Five backends. Firecrawl has two. Crawl4AI has one.
What resets your expectations
🔁 Self-healing fallback | Five backends auto-escalate on block. Your agent stops getting an empty string. |
💸 Per-run cost telemetry | Every run logs backend, credits, and estimated cost to a queryable ledger. No competitor exposes this. Your CFO can finally answer "what does our web data cost?" |
🪙 Token-efficient | Returns clean markdown/extracted content, not raw HTML — ~4× fewer tokens into your agent's context on content pages (measured). Lower API cost, more window, better signal. |
🎯 No JS multipliers | 1 credit per page on any backend. Firecrawl & ScrapingBee charge 5–7× for JS rendering. |
🔒 Atomic metering | Reservation-based — 0% overshoot, even under concurrency. You're never billed past your quota. |
🧠 LLM extraction | Natural language → structured JSON. Runs against a local/free model — no cloud key required. |
📦 MIT, self-hostable | Full feature parity self-hosted. Your data never leaves your infra. The hosted gateway just saves you running proxies + captcha infra. |
🔌 MCP-native | 11 tools with use-first descriptions, so your agent reaches for DLBrowser over its flaky built-in browser. |
Fewer tokens, cleaner signal
Raw HTML pours tags, scripts, and boilerplate into your agent's context — you pay tokens
for noise, and the model burns attention parsing <div class> soup. DLBrowser returns
clean markdown or extracted content instead.
Real measurement through the live gateway — a Wikipedia article:
Mode | Tokens (approx) | vs raw HTML |
Raw HTML | ~57,000 | — |
Markdown | ~13,000 | ~77% fewer |
Article | ~42,000 | ~27% fewer |
~4× less context per fetch on a content page — lower API cost, more room in the window, and better signal for the model to reason over. Savings vary by page (a sparse link list saves little, and your agent picks the mode) — so measure your own:
import asyncio, tiktoken
from hermes_browser import fetch # pip install dlbrowser
enc = tiktoken.get_encoding("cl100k_base")
raw = asyncio.run(fetch(url, mode="html"))["content"]["html"]
md = asyncio.run(fetch(url, mode="markdown"))["content"]["markdown"]
print(len(enc.encode(raw)), "→", len(enc.encode(md)), "tokens")One line, every host
npx dlbrowser connect --key dlb_xxx
# detects and configures: claude-code · claude-desktop · cursor · windsurf · cline · codexOr point any MCP client at the free hosted demo gateway (try it with no local setup — some features are gated on the demo; self-host for the full engine):
claude mcp add dlbrowser --transport http \
--url https://api.dekryptlabs.com \
--header "Authorization: Bearer dlb_xxx"Your agent immediately has: fetch · scrape · smart_extract · screenshot ·
markdown · crawl · search · serp · status · account · topup.
Can I trust it? (architecture)
Agent / CLI / Extension / MCP client
│
┌────┴─────┐
│ Gateway │ Paywalled — 401 no key · 402 over quota · free: status/account
└────┬─────┘
┌────┴─────┐
│ Router │ Adaptive per-domain scoring: success · latency · cost · freshness
└────┬─────┘
┌────┴─────────────────────────────┐
│ curl_cffi → tls → playwright → │ self-healing cascade
│ nodriver → firecrawl │
└────┬─────────────────────────────┘
┌────┴─────┐
│ Ledger │ per-run backend · credits · cost · trace_id (OpenTelemetry)
└──────────┘The router learns per-domain — more usage, better routing. Everything above the gateway is MIT and self-hostable. Read the code before you trust it; that's the point of open source.
Can it beat Cloudflare?
On many real sites, with no browser at all. We tested 5 Cloudflare-protected sites from a datacenter IP with no residential proxy (worst case):
Site | Result | How |
nowsecure.nl (CF challenge test) | ✅ pass | TLS impersonation |
crunchbase.com | ✅ pass | curl_cffi, 0.3s, no browser |
nike.com | ✅ pass | curl_cffi, 1.2s, no browser |
g2.com | ❌ 403 | Cloudflare Enterprise — datacenter IP blocked by reputation |
zillow.com | ❌ 403 | Enterprise + captcha — needs residential IP |
3/5 passed on HTTP-level TLS impersonation alone. The two failures weren't fingerprint failures — they're IP-reputation blocks that need residential-proxy routing (supported, disabled in this test). No tool beats Cloudflare universally; DLBrowser's answer is layered escalation. Full methodology + "what beating Cloudflare actually means" → marketing/cloudflare.md.
We have not published broad head-to-head benchmarks vs Firecrawl/Crawl4AI yet — those are next, with the methodology published alongside. We don't print numbers we made up. Don't trust our table — run it on your own hardest sites:
pip install "dlbrowser[full]" && python3 -m playwright install chromium
dlbrowser fetch <a-url-that-blocks-your-current-tool> # see the backend that got throughPricing
Plan | Price | Credits | Daily cap | Backends | Captcha | Proxy | LLM | Keys |
Scout | Free | 2,500 one-time | 500 | curl_cffi | — | — | — | 1 |
Analyst | $29/mo | 100,000/mo | 5,000 | + tls_client | — | — | 50k | 3 |
Operator | $85/mo | 500,000/mo | 25,000 | + playwright | ✓ | — | 200k | 10 |
Command | $299/mo | 2,000,000/mo | 100,000 | all + nodriver | ✓ | ✓ | 1M | 50 |
Enterprise | from $999/mo | 10M–100M+/mo | — | all + dedicated | ✓ | ✓ | ∞ | ∞ |
1 credit = 1 page, any backend. Annual 20% off. Self-hosting is free forever. Full pricing → PRICING.md · hosted: dekryptlabs.github.io/dlbrowser/pricing.html
Will my company approve it?
Multi-tenant — organizations, teams, seats, roles
API keys — create, revoke, rotate, scope, expire (SHA-256 hashed)
Audit logs — immutable event ledger: who did what, when, at what cost
Webhooks — HMAC-SHA256 signed, with a dead-letter queue
SLA monitoring — scheduled page diffing with noise-tolerant change detection
Self-hosted — Docker one-liner, full feature parity, data stays in your network
Enterprise plans publish real prices (from $999/mo) — no "call us" black box. sales@dekryptlabs.com
When not to use DLBrowser
You need pre-built datasets → Bright Data / Apify
You need a visual scraping IDE → Octoparse
You need screenshot-as-a-service → Urlbox
DLBrowser is for teams running AI agents that need reliable, observable, cost-controlled web access at scale.
Docs
Resource | Link |
Getting Started | |
Integrations (LangChain / LlamaIndex) | |
Self-Hosted Deploy | |
Comparison vs Firecrawl / Crawl4AI |
💜 Sponsor DLBrowser
DLBrowser is MIT and free forever, and we keep a free hosted demo gateway running for everyone. Sponsoring funds new backends, published benchmarks, site-specific scrapers, and keeps the free tier free. If it saves your agents from getting blocked — or saves you tokens — please consider it.
Become a sponsor → · tiers from $10/mo to $1,000/mo. Full perks in SPONSORS.md. $25/mo and up puts your name (or logo, at $100+) in the banner below — seen by everyone who visits the repo, the PyPI page, and the npm page.
Our sponsors
Give your agent the whole web.
npx dlbrowser connect --key dlb_xxxBuilt by Dekrypt Labs · MIT License · sales@dekryptlabs.com
mcp-name: io.github.DekryptLabs/dlbrowser
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceMCP server giving AI agents real-time web search, page scraping, company intelligence, email discovery, local lead generation, and a persistent knowledge graph. Pay only for what you use, no subscriptions.Last updated28MIT
- AlicenseAqualityCmaintenanceA comprehensive MCP server providing 15 web tools including search, scraping, screenshots, SEO audits, and DNS/SSL checks through a single installation. It delivers clean, LLM-optimized outputs so AI agents can focus on reasoning rather than parsing raw HTML.Last updated1514MIT
- Alicense-qualityAmaintenanceUnlimited web access MCP server for AI agents, enabling search, fetch, and learning across multiple sources while bypassing anti-bot protections.Last updatedMIT
- Alicense-qualityDmaintenanceAn MCP server that gives AI tools a reliable way to fetch content from the web, handling anti-bot protection and JavaScript-rendered pages.Last updated836MIT
Related MCP Connectors
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.
A paid remote MCP for AI agent browser approval MCP, built to return verdicts, receipts, usage logs,
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/DekryptLabs/dlbrowser'
If you have feedback or need assistance with the MCP directory API, please join our Discord server