brightdata-gatekeeper
Manages the arXiv scraper collector, enabling detection of breakage, generation of heal briefs, and verification of proposed fixes against golden rows before approval.
Manages the Lobsters scraper collector, enabling detection of breakage, generation of heal briefs, and verification of proposed fixes against golden rows before approval.
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., "@brightdata-gatekeeperCheck mutant-recalls for breakage and heal it if needed."
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.
brightdata-gatekeeper
Evidence-based approval for Bright Data Scraper Studio self-healing.
Bright Data repairs broken scrapers. It does not decide whether a repair is correct. Gatekeeper does — it detects the break, writes the heal brief, then judges the proposed fix against rows recorded while the scraper was healthy, and rejects it if they disagree.
Dashboard | |
Mutation target | |
Walkthrough | |
Demo video | video/out/gatekeeper-demo.mp4 — 83s, generated from HTML, not screen-recorded |
The gap this fills
Bright Data's own CLI documentation states it plainly:
You are the detector. The CLI never decides on its own that a scraper is broken — you inspect the run output and decide. […] Vague prompts produce vague heals.
scraper heal rewrites a collector's template and stops at an approval gate. approve
commits it. --auto-approve skips the question. Nobody checks the answer.
Bright Data ships | Gatekeeper adds |
| Detector — catches breakage that still returns HTTP 200 |
| Brief generator — a typed field list carrying the diagnosis |
the gate, | Approver — judges the preview against golden rows |
run → validate → diagnose → brief → heal → verify → approve or reject → re-briefThe cycle is also reachable from nowhere else. Bright Data's Python SDK covers Scraper
Studio's trigger/poll/fetch but not heal or approve; its 69-tool MCP server has no
Scraper Studio tools at all. Gatekeeper ships an MCP server, so an agent can drive it.
Related MCP server: UI Debugger MCP
The result that matters
Against a live collector on a deliberately broken page, Bright Data's heal recovered four
fields correctly and silently dropped the fifth to null. units is declared optional, so
every schema, type and range check passed — zero broken findings:
--auto-approve would : APPROVE preview passes every field check
gatekeeper decided : REJECT 2/2 golden rows disagree
units: expected '118500', preview has 'null'--auto-approve would have committed a scraper that quietly stopped collecting unit
counts. The rejection reason went into the next brief, the retry matched golden on every
compared row, and the fix was verified on a fresh live run.
Quick start
uv sync --all-extras
npm install -g @brightdata/cli # Node >= 20
cp .env.example .env # add BRIGHTDATA_API_KEY
gatekeeper doctor # check the setup
gatekeeper spec add specs/mutant-recalls.json
gatekeeper status # survey every collector
gatekeeper check <collector_id> # detect
gatekeeper golden <collector_id> # record known-good rows
gatekeeper heal <collector_id> # run the loop
gatekeeper history <collector_id> # why a fix was committed or rejected
gatekeeper serve # dashboard on :8000As an MCP server, so an agent can drive the loop:
claude mcp add gatekeeper -- gatekeeper mcppreview_heal_brief shows the prompt that would be sent without spending an AI-Flow job.
Rules the loop obeys
Never trust an exit code. A run returning 200 with empty fields is the failure that matters.
Never heal a block.
blockedanddead_pagealarm but are not layout changes.Never approve without evidence. No golden rows means abstain, not approve.
Verify after committing. A preview is a promise; a live run is evidence.
Collectors
Four managed collectors, three of them real sites, none in Bright Data's 1,743 pre-built
scrapers — which gatekeeper coverage <url> checks rather than asserts.
Collector | Target | Rows | Notable |
| recalls.rycerz.es | 8 | Breaks on demand; five layouts, identical values |
| arxiv.org | 950 | Stable identity, so golden rows survive churn |
| news.ycombinator.com | 59 | Nested output, flattened via |
| lobste.rs | 125 | Arrived broken: 114 rows, every field absent |
Details, including the golden-bootstrap problem: docs/SITES.md.
Layout
src/gatekeeper/
detector/ rules, baselines, engine — decides a scraper broke
brief/ diagnosis → typed heal prompt
approver/ judges a preview against golden rows
brightdata/ bdata CLI wrapper, envelopes, coverage check
controller the closed loop
mcp agent-callable tools
api, static the dashboard
mutant/ the mutation target, deployed as a WorkerTests
$ pytest -q
138 passedNo network and no credits: the bdata CLI is stubbed at the subprocess boundary and the
loop runs against a scripted client, so the whole state machine — including
reject-and-reconverge — is verified offline.
Notes
Deployment, and how the dashboard is published without credentials: docs/DEPLOY.md. Things the live API taught us that the docs did not: docs/FINDINGS.md.
MIT.
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
- FlicenseAqualityDmaintenanceAutomated Playwright E2E test repair powered by a self-improving, governed MCP server that runs failing tests, collects failure artifacts, reasons about root causes, validates and applies fixes, and re-runs to verify.12
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to autonomously debug UIs by delegating high-level stories to a small agent that drives browsers or desktop apps and reports structured pass/fail findings with evidence.1492MIT
- AlicenseAqualityCmaintenanceEnables agents to resolve data incidents by preparing remediation, inspecting verification results, and staging for human approval, while integrating with DataHub for evidence.5Apache 2.0
- FlicenseNot gradedqualityDmaintenanceDetects brittle Playwright selectors and provides healing suggestions, action receipts, human approvals, and failure exports.
Related MCP Connectors
Browser-backed QA with evidence and fix-ready reports for coding agents.
Turn the web into structured, reliable, actionable enterprise data for AI Agents
Stealth scraping & search. Bypasses Cloudflare, DataDome & LinkedIn via Cyborg HITL approach.
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/rycerzes/brightdata-gatekeeper'
If you have feedback or need assistance with the MCP directory API, please join our Discord server