Bright Data MCP

MCP serverSearch

This integration gives your AI the ability to search, extract, and navigate the web. Once added, your AI can look things up online and pull content from the pages it visits.

Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.

Add to setup to save this item as a reference. Ahel cannot run it, and signing in will not install it.

What your AI can do with it

  • Search the web for information
  • Extract content from web pages
  • Navigate websites to gather details

Getting started

  1. Save this item in Your setup as a reference.
  2. Read the source or reference documentation for its setup requirements. Saving it here does not connect it to your AI.
  3. Check this page for availability before trying to install it through Ahel.

From the project's README

As published by brightdata/brightdata-mcp in README.md.


Overview

The Bright Data MCP server gives AI agents real-time access to public web data. It exposes 32 tools covering:

  • Web search — Google, Bing, and Yandex results as structured data
  • Page scraping — any URL as Markdown or HTML, with bot detection, CAPTCHA solving, and proxy rotation handled automatically on every request
  • Structured data (Web Scraper API) — clean JSON from 1,200+ pre-built scrapers: Amazon, LinkedIn, Instagram, TikTok, YouTube, X, Reddit, Facebook, Crunchbase, Zillow, npm, PyPI and more, without parsing HTML. Six tools find and run any of them
  • Browser automation — navigate, click, type, screenshot, and read pages in a remote browser session
  • LLM response collection — send prompts to ChatGPT and Perplexity and get their answers back as structured data

Every request is routed through Bright Data's unblocking infrastructure, so pages that block ordinary HTTP clients (bot detection, CAPTCHAs, rate limits, geo-restrictions) return normally. No proxy setup, no headless browser maintenance, no retry logic to write.

Two deployment options: a hosted remote server (one URL, no installation) or a local instance via npx @brightdata/mcp.


Quick Start

Hosted server — no installation. Add this URL to your MCP client:

https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN_HERE

Get your API token from your Bright Data account settings. New accounts get 5,000 free requests per month.

Optional URL parameters:

ParameterDescriptionExample
groups=<ids>Enable specific tool groups...&groups=scrapers,browser
tools=<names>Enable specific tools only...&tools=search_engine,scrape_as_markdown
  1. Go to: Settings → Connectors → Add custom connector
  2. Name: Bright Data
  3. URL: https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN
  4. Click "Add"

Or run locally:

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "<your-api-token-here>"
      }
    }
  }
}
claude mcp add --transport http brightdata "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "brightdata": {
      "url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
    }
  }
}

Add to .vscode/mcp.json:

{
  "servers": {
    "brightdata": {
      "type": "http",
      "url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
    }
  }
}

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "brightdata": {
      "serverUrl": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
    }
  }
}

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "brightdata": {
      "httpUrl": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
    }
  }
}

Add to your Zed settings:

{
  "context_servers": {
    "brightdata": {
      "url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
    }
  }
}

Go to Settings > MCP Servers > Add MCP Server and add:

{
  "brightdata": {
    "url": "https://mcp.brightdata.com/mcp?token=YOUR_API_TOKEN"
  }
}

For any client that supports local MCP servers:

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "<your-api-token-here>"
      }
    }
  }
}

Pricing and Free Tier

Every account includes a recurring monthly free tier. No credit card or commitment required to start.

5,000 free requests per month, renewing on the 1st of each month. Unused requests don't roll over. For team accounts, the free tier is shared across all users in the account.

What's included free:

  • Fetch any webpage and extract as Markdown
  • Access to 60+ pre-built scrapers for popular domains
  • Web search (Google, Bing, Yandex)
  • Web unlocking (bot detection bypass, CAPTCHA solving, proxy rotation)
  • Browser automation
  • Geo-targeting

Beyond the free tier — pay as you go, no commitment:

Search, Scrape & ExtractBrowser Navigation
Pay as you go$1.50 / 1K results$8 / GB
  • When free requests run out, requests stop. No surprise charges — unless you have deposited funds
  • Adding a credit card is a verification step only; you are not charged unless your free tier is exhausted and you have funds deposited
  • Set a spend cap in the control panel so pay-as-you-go usage never exceeds your budget

Full pricing, volume plans and enterprise →


Use Cases

Real-time research

Answer questions using live web data instead of training data. Search, then read the sources.

TaskTools
Search the web for current informationsearch_engine, search_engine_batch
Read a specific page as clean Markdownscrape_as_markdown, scrape_batch
Find the most relevant sources for a research question, ranked by AI relevance scorediscover

Example prompts: "What's Tesla's current stock price?", "Get today's weather forecast for New York", "Find the most cited sources on EU AI regulation from the last 6 months".

E-commerce intelligence

Read product data as structured JSON: price, availability, rating, review count, seller, images.

TaskTools
Products, reviews and search results from Amazon, Walmart, eBay, Best Buy, Etsy, Home Depot, Zara and other storessearch_scrapers → get_scraper_details → run_scraper
Cross-retailer price viewthe same flow with the Google Shopping scraper

Example prompts: "Compare this laptop's price on Amazon vs Walmart vs Best Buy", "Get the rating and review count for ASIN B0D2Q9397Y", "Is this product in stock?".

Market and competitor analysis

Build competitor profiles from live data: funding, headcount, hiring, customer reviews, pricing pages.

TaskTools
Company funding, size, employees, job postings (Crunchbase, ZoomInfo, LinkedIn)search_scrapers → run_scraper
Customer sentiment (Google Maps, Facebook, app store reviews)search_scrapers → run_scraper
Competitor pricing pagesscrape_as_markdown, scrape_batch
Market discoverysearch_engine_batch, discover

Example prompt: "Analyze Notion as a competitor: pricing, funding, hiring focus, and what customers complain about".

AI agents with reliable web access

Replace built-in fetch/search tools that get blocked on protected sites. Every request goes through unblocking infrastructure, so agents don't fail on bot detection, CAPTCHAs, or geo-restrictions.

TaskTools
Drop-in replacement for built-in web searchsearch_engine
Drop-in replacement for built-in URL fetchscrape_as_markdown
Parallel data collection (10 at a time)search_engine_batch, scrape_batch
Interactive sites (login walls, infinite scroll, dynamic content)scraping_browser_* (14 tools)
Structured JSON from any page, no schema neededextract

Coding agents

Package registry data on demand — no scraping, no stale caches.

TaskTools
npm and PyPI package version, README, metadatarun_scraper with the npmjs or pypi scraper (find them with search_scrapers)
Read files from GitHub repositoriesrun_scraper with the GitHub repository scraper

Example prompts: "What's the latest version of express on npm?", "Get the README for the langchain-brightdata PyPI package".

GEO and brand visibility

Send prompts to major LLMs and get their answers back as structured data. Measure how AI assistants describe your brand, which sources they cite, and what they recommend — the feedback loop for Generative Engine Optimization.

TaskTools
ChatGPT answers with citations and recommendationschatgpt_ai_insights
Perplexity answers with sourcesperplexity_ai_insights

Example prompt: "Ask ChatGPT and Perplexity 'what is the best proxy provider' and compare how each one ranks us".

Social media monitoring

Structured data from every major platform: profiles, posts, comments, engagement metrics. Each platform has scrapers per data type (LinkedIn profiles, Instagram reels, TikTok comments, ...); find them with search_scrapers and run them with run_scraper.

PlatformExamples of scrapers
LinkedInperson profiles, company profiles, job listings, posts, people search
Instagramprofiles, posts, reels, comments
TikTokprofiles, posts, shop, comments
Facebookprofiles, posts, marketplace listings, company reviews, events
YouTubevideos, channels, comments
X (Twitter)posts, posts by profile
Redditposts, comments

Example prompt: "Get the last 10 posts from this TikTok profile and summarize the engagement".

Content creation and academic research

Gather source material from many pages at once, filtered by recency and relevance.

TaskTools
Collect multiple sources in one callscrape_batch (up to 10 URLs)
Find sources by topic with date filteringdiscover with start_date / end_date
News and finance datasearch_engine with news queries, run_scraper with the Yahoo Finance scraper

How It Compares

CapabilityBright Data MCPTypical web MCP servers
Total tools322–10
Platform-specific structured JSON extractors1,200+ pre-built scrapers across e-commerce, social, business, finance, travel, app stores, through 6 toolsRare; generic scraping only
Unblocking (bot detection bypass, CAPTCHA solving, proxy rotation)Built into every requestUsually none; blocked on protected sites
Search enginesGoogle, Bing, YandexUsually one
AI-relevance-ranked search with intentYes (discover)Not offered
Browser automation14 tools, remote browser, no local setupLimited or none
LLM response collection (ChatGPT, Perplexity)YesNot offered
Package registry data (npm, PyPI)YesNot offered
Batch operations10 searches or 10 scrapes per callUsually single-request only
Geo-targetingYesLimited or none
Free tier5,000 requests/month, browser automation included, no credit cardVaries; often rate-limited keyless access

Tool Selection: Groups

Tools are organized into groups so you only load what you need. Fewer tools means less context for your agent to process.

  • GROUPS enables tool bundles. Comma-separated: GROUPS="scrapers,browser" (local) or &groups=scrapers,browser (hosted URL)
  • TOOLS adds individual tools on top: TOOLS="extract,scrape_as_html"
  • Base tools are always enabled: search_engine, search_engine_batch, scrape_as_markdown, scrape_batch, discover
  • Group ID custom is reserved; use TOOLS for individual picks
Group IDContentsTool count
scrapersSearch and run any pre-built Web Scraper API scraper (Amazon, LinkedIn, TikTok, npm, ...)6
browserRemote browser automation14
geoChatGPT and Perplexity response collection2
advanced_scrapingBatch tools, HTML scraping, AI extraction, session stats5

Older group IDs (ecommerce, social, business, finance, research, app_stores, travel, code) still work and enable the scrapers tools; social and business also add search_dataset and list_dataset_fields. Old web_data_* names in TOOLS enable the scrapers tools too.

Configuration examples

Local server with browser automation and AI extraction:

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "<your-api-token-here>",
        "GROUPS": "browser,advanced_scraping",
        "TOOLS": "extract"
      }
    }
  }
}

Coding agent setup (Claude Code / Cursor / Windsurf) — npm, PyPI and GitHub data through the pre-built scrapers:

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "<your-api-token-here>",
        "GROUPS": "scrapers"
      }
    }
  }
}

Tools Reference (32 Tools)

Which tool to use

  • Known URL, need the content: scrape_as_markdown. Multiple URLs (up to 10): scrape_batch
  • Need to find information: search_engine. Multiple queries (up to 10): search_engine_batch
  • Deep research or RAG, need relevance-ranked sources: discover with an intent
  • Structured data from a known platform (Amazon, LinkedIn, TikTok, npm, PyPI, etc.): search_scrapers → get_scraper_details → run_scraper — returns clean JSON, faster and more reliable than scraping the same page
  • Structured JSON from a page no scraper covers: extract
  • Raw HTML: scrape_as_html
  • Page requires interaction (click, type, scroll, login): scraping_browser_* tools
  • How ChatGPT/Perplexity answer a prompt: chatgpt_ai_insights / perplexity_ai_insights

Notes on scraper runs:

  • Return structured JSON, billed per record returned
  • Records with an error field explain inputs that failed, e.g. a URL of the wrong type
  • Results can be large. Keep limit_per_input low for discover_by_* methods and run bulk collection in a subagent where your framework supports it, so records don't flood the main context window
  • If a run fails, scrape_as_markdown works on the same URL as a fallback
ToolDescriptionGroup
search_engineSearch Google, Bing, or Yandex. Google returns JSON (URL, title, description); Bing and Yandex return Markdown. Paginate with the cursor parameteralways enabled
search_engine_batchUp to 10 search queries in one callalways enabled
scrape_as_markdownAny URL as Markdown. Bot protection and CAPTCHA handled automaticallyalways enabled
scrape_batchUp to 10 URLs in one call; returns an array of URL/content pairs in Markdownalways enabled
discoverAI-relevance-ranked web search. Returns scored results (title, description, URL, relevance score). Supports intent-based ranking, geo-targeting, date filtering, keyword filteringalways enabled
scrape_as_htmlAny URL as raw HTMLadvanced_scraping
extractScrape a page and convert it to structured JSON using AI, with an optional custom extraction promptadvanced_scraping
session_statsTool usage counts for the current sessionadvanced_scraping

Search and run any of Bright Data's 1,200+ pre-built scrapers. The scraper list is loaded from docs.brightdata.com/scrapers.json and refreshed daily. Available on both the hosted and the local server. Enabled by default when no tools or groups are selected; otherwise add the scrapers group (&groups=scrapers on the hosted URL, GROUPS=scrapers locally).

Typical flow: search_scrapers → get_scraper_details → run_scraper. Runs are billed per record; discover_by_* methods collect up to limit_per_input records per input (default 10).

ToolDescriptionGroup
search_scrapersFind scrapers by site or data type (e.g. "amazon reviews", "linkedin.com"). Returns dataset ID, name, domain and collection methodsdefault / scrapers
get_scraper_detailsDescription, input fields, example input and main output fields for one scraper methoddefault / scrapers
run_scraperRun a scraper method. Waits up to 45 seconds; if still running, returns a snapshot_id to check laterdefault / scrapers
get_scraper_progressStatus of a run: starting, running, ready, failed or canceleddefault / scrapers
get_scraper_resultsRecords of a finished rundefault / scrapers
refresh_scrapersReload the scraper list now instead of waiting for the daily refreshdefault / scrapers

Remote browser session. Typical sequence: navigate → snapshot → interact by ref → extract or screenshot.

ToolDescription
scraping_browser_navigateOpen or reuse a browser session and navigate to a URL
scraping_browser_go_backNavigate back
scraping_browser_go_forwardNavigate forward
scraping_browser_snapshotARIA snapshot of the page listing interactive elements with refs. Required before ref-based actions
scraping_browser_click_refClick an element by ref from the latest snapshot
scraping_browser_type_refType into an element by ref; optionally press Enter to submit
scraping_browser_fill_formFill several form fields by ref in one call
scraping_browser_screenshotScreenshot of the current page; optional full_page
scraping_browser_get_textText content of the page body
scraping_browser_get_htmlHTML of the current page
scraping_browser_scrollScroll to the bottom of the page
scraping_browser_scroll_to_refScroll an element into view
scraping_browser_wait_for_refWait for an element to become visible, with optional timeout
scraping_browser_network_requestsNetwork requests since page load: method, URL, status

Refs come from the latest snapshot. If the page changes after a click or navigation, take a new snapshot before the next ref-based action. For static pages, scrape_as_markdown is faster and cheaper than a browser session.

ToolInputReturns
chatgpt_ai_insightsPromptChatGPT's answer as Markdown
perplexity_ai_insightsPromptPerplexity's answer as Markdown

Use for Generative Engine Optimization (tracking how LLMs describe your brand) and LLM-as-a-judge workflows.

Filter search over stored LinkedIn datasets; returns matching records at once, with no scraper run.

ToolDescriptionGroup
list_dataset_fieldsFilterable fields of a dataset (name, type, description). Call before search_datasetsocial, business
search_datasetRecords matching a filter, up to 10 per call, with a cursor for moresocial, business

Full tool reference in the docs →


Agent Skills

Ready-to-use skills that teach your agent how to use this MCP server correctly. The full collection lives at github.com/brightdata/skills — 21 skills covering MCP orchestration, competitive intelligence, price comparison, brand listening, SEO audits, scraper building, RAG pipelines, and more.

Three of the highest-impact skills:

SkillWhat it does
bright-data-mcpMakes Bright Data MCP the default for all web data operations, replacing WebFetch, WebSearch, and other built-in web tools that fail on bot detection
competitive-intelCompetitor snapshots, pricing comparison, review mining, hiring signals, content/SEO analysis, and market landscape maps from live web data
price-comparisonResolves a product across Amazon, Walmart, eBay, Best Buy, and Google Shopping and names the cheapest in-stock option

Browse all 21 skills →


Configuration

Basic setup (local)

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "your-token-here"
      }
    }
  }
}

Advanced configuration

{
  "mcpServers": {
    "Bright Data": {
      "command": "npx",
      "args": ["@brightdata/mcp"],
      "env": {
        "API_TOKEN": "your-token-here",
        "RATE_LIMIT": "100/1h",
        "WEB_UNLOCKER_ZONE": "custom",
        "BROWSER_ZONE": "custom_browser",
        "POLLING_TIMEOUT": "600"
      }
    }
  }
}

Environment variables

VariableDescriptionDefaultExample
API_TOKENYour Bright Data API token (required)-your-token-here
RATE_LIMITCustom rate limitingunlimited100/1h, 50/30m
WEB_UNLOCKER_ZONECustom Web Unlocker zone namemcp_unlockermy_custom_zone
BROWSER_ZONECustom Browser zone namemcp_browsermy_browser_zone
POLLING_TIMEOUTTimeout for discover polling (seconds). Each second = 1 polling attempt600300, 1200
CONTENT_GATEWhen page content returned by a data tool looks like instructions to change the MCP configuration, the server asks the user (via MCP elicitation) before returning it. Set to off to disableonoff
CONTENT_GATE_TIMEOUTSeconds to wait for the user's answer before withholding the content12060, 300
BASE_TIMEOUTRequest timeout for base tools in seconds (search and scrape)No limit60, 120
BASE_MAX_RETRIESMax retries for base tools on transient errors (0-3)01, 3
GROUPSComma-separated tool group IDs-scrapers,browser
TOOLSComma-separated individual tool names-extract,scrape_as_html

Content gate

Shortened here. Read the whole README on GitHub.

Signals

GitHub stars
3k
Forks
331
Last commit
Oct 2026
Weekly_downloads
9k weekly_downloads

What people say

Users report using Bright Data MCP to give agents access to sites that normally block scraping (Amazon, Reddit, X), though one user treats it as a stopgap rather than ideal. The recurring complaint is that it caused persistent 'Agent terminated due to error' failures in Antigravity that only stopped once it was disabled.

Praised for
scrapes sites that normally block scraping (Amazon, Reddit,
Complaints
caused 'Agent terminated due to error' crashes until disable

Summarized from 7 public posts. Opinions are theirs, not Ahel's.

Advanced
Delivery
brightdata-mcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-brightdata-brightdata-mcp
Source
github.com/brightdata/brightdata-mcp