brightdata-mcp-full
Comprehensive Python MCP server wrapping Bright Data's REST API — 149 tools across 15 product groups, auto-generated from 19 OpenAPI specs.
Why this exists
Bright Data's official MCP server is excellent — 60+ tools focused on scraping and web access. But Bright Data's REST API is much larger: account management, proxy zones, IPs, billing, statistics, the LPM proxy manager, deep lookup, archive API, scraping shield, marketplace datasets, and more.
brightdata-mcp-full complements the official MCP by exposing everything else as a standalone, group-organized MCP server. Run them side by side:
// .mcp.json
{
"mcpServers": {
"brightdata": { "url": "https://mcp.brightdata.com/mcp?token=..." }, // official: scraping
"brightdata-full": { "command": "uv", "args": ["run", "python", "server.py"] } // this: everything else
}
}
Status
v0.1-alpha. Codegen pipeline merged, 149 tools generated, integration QA in progress (Round 5 of multi-agent build). See SPEC.md → "Reality Check" for the gap between the original spec estimate (350 tools) and the actual surface BD ships publicly (149 unique REST operations after dedup).
Tool groups
| Group | Tools | Source OpenAPI specs |
|---|---|---|
account_management |
70 | openapi, openapi-reseller |
marketplace_dataset |
25 | dca-api, datasets-rest-api |
scraper_studio |
13 | web-scraper-ide-rest-api |
deep_lookup |
9 | deep-lookup |
archive |
6 | web-archive-api |
misc |
6 | async-api-reference, filter-csv-json, dca-custom-inputs |
scraping_shield |
4 | scraping-shield-rest-api |
scrapers |
3 | scraper-rest-api, crawl-rest-api |
serp |
3 | serp-rest-api |
proxy |
3 | proxy-rest-api |
unlocker_rest |
3 | unlocker-rest-api |
browser_api |
2 | browser-api |
proxy_manager |
1 | proxy-manager |
video_downloader |
1 | video-downloader |
rest_api |
0 | (no spec mapped — endpoints absorbed into account_management) |
| Total | 149 | 19 specs |
Full per-tool catalog: docs/groups.md. Auto-generated, regenerable via uv run python scripts/generate_groups_doc.py > docs/groups.md.
What's covered, what's not
Covered (149 tools): every public REST operation BD ships in their English-language OpenAPI specs — account/zone/IP management, deep lookup, web archive, marketplace datasets, scraping shield, generic scrapers/SERP/proxy/unlocker REST endpoints, browser API session management, video downloader.
Not covered:
- Per-platform scrapers (Amazon, LinkedIn, Instagram, TikTok, Reddit, ...) — BD doesn't ship per-platform OpenAPI specs publicly. The generic
bd_scrapers_*(3 tools) cover the trigger/snapshot pattern; per-platform discovery happens via dataset IDs. - SERP engine variants (one tool per engine) — BD exposes a single generic
bd_serp_create_requestthat takes engine as a parameter; not 68 separate engines. - LPM (Local Proxy Manager) deep features — most LPM controls are CLI flags, not REST endpoints. The single
proxy_managertool covers what's exposed via REST. - Native proxy access (
brd-customer-...:zone-...:password@brd.superproxy.io:33335) — out of scope for an MCP wrapper. Use BD's proxy SDK or your HTTP client's proxy settings. - Browser API WebSocket (
wss://brd.superproxy.io:9222) — consumed by Playwright/Puppeteer directly. The MCP exposes only the REST management endpoints (bd_browser_api_*). - Scraping/AI tools already in BD's official MCP (
web_data_*,scraping_browser_*,search_engine, ...) — intentionally not duplicated. Run both servers side by side.
If BD ships new public OpenAPI specs, regenerate via uv run python scripts/regenerate.py to pick them up.
Design highlights
- Auto-generated from 19 OpenAPI specs —
uv run python scripts/regenerate.pyto refresh tools when BD's API changes - Group-based runtime selection via
GROUPS=env var (default:account_management) — keeps Claude's context lean - Write-gate via
BD_ENABLE_WRITES=true— read-only by default for safety; explicit opt-in for ops that create/delete/modify resources - Zero magic — every tool is plain Python with typed args and
bd_requestHTTP client; easy to read/audit intools/<group>/ - Stdio MCP in v1, hosted HTTP/SSE planned for v2
Quick start (alpha)
git clone https://github.com/artgas1/brightdata-mcp-full
cd brightdata-mcp-full
uv sync
export BRIGHT_DATA_API_TOKEN=your_token
uv run python server.py # stdio MCP server
Wire into Claude Code (or Claude Desktop / Cursor):
{
"mcpServers": {
"brightdata-full": {
"command": "uv",
"args": ["run", "--directory", "/path/to/brightdata-mcp-full", "python", "server.py"],
"env": {
"BRIGHT_DATA_API_TOKEN": "your-token-here",
"GROUPS": "account_management,deep_lookup",
"BD_ENABLE_WRITES": "false"
}
}
}
}
For more recipes see docs/examples.md. For auth/token setup: docs/auth.md. When something breaks: docs/troubleshooting.md.
Roadmap
- Spec approved
- Scaffolding (FastMCP, lib/client, lib/safety, 3 smoke tools) — Round 1
- Codegen pipeline + 149 tools auto-generated — Round 2
- Integration QA (live API smoke per group) — Round 3 (in progress)
- Docs polish (this PR) — Round 5
- v1.0 release on PyPI
- v1.1 — hand-wraps for popular per-platform scrapers (community-driven)
- v1.2 — hosted HTTP/SSE transport
- v2.0 — caching layer for read-only ops + audit log for writes
Contributing
Issues and PRs welcome. Please open a discussion before sinking time into a large change so we can align on shape.
If you want a tool that's missing because BD doesn't ship a public OpenAPI spec for it, file an issue with the endpoint URL and a sample curl — we can hand-wrap it under the appropriate group.
Disclaimer
This is an unofficial community wrapper. Not affiliated with or endorsed by Bright Data. Built to fill a gap — the official MCP focuses on scraping; this one covers everything else.
Bright Data is a trademark of Bright Data Ltd. Use a valid Bright Data API token from your account settings.
License
MIT — see LICENSE.
Metadata
Release files for brightdata-mcp-full 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| brightdata_mcp_full-0.1.1.tar.gz | 129.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| brightdata_mcp_full-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 295.7 kB
Release files / brightdata_mcp_full-0.1.1.tar.gz
| Download URL | brightdata_mcp_full-0.1.1.tar.gz |
|---|---|
| Size | 129.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
89d5f1f49297aa194a4888f2907c44858094db7081cb7581358e49b69ae30933
|
|
BLAKE2b-256 checksum How to use checksums |
e33280224ed48e0d1a53ea5b83581a62a1e960f119bc5305ac7de0197d4db079
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency logRelease files / brightdata_mcp_full-0.1.1-py3-none-any.whl
| Download URL | brightdata_mcp_full-0.1.1-py3-none-any.whl |
|---|---|
| Size | 166.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b36152a4e0bd56f8f74753a7b55573319cd9db8c2684d09ad6fd2a02e7c01714
|
|
BLAKE2b-256 checksum How to use checksums |
b9f292c8b302d19916f7e464af5e91e5fa625f09fbe0cc9fedb5efb8c4d4d8c7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 4, 2026.
Transparency log