The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Brightdata MCP listing page.
Web search, page scraping, structured data extraction, and browser automation for AI agents and LLMs over the Model Context Protocol.
Works with AI agents, coding agents, chat assistants, and any MCP-compatible client.
Quick Start • Pricing • Use Cases • Tools • Agent Skills • Docs • Support
Free tier: 5,000 requests per month. No credit card required. Renews monthly.
The Bright Data MCP server gives AI agents real-time access to public web data. It exposes 69 tools covering:
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.
Hosted server — no installation. Add this URL to your MCP client:
Get your API token from your Bright Data account settings. New accounts get 5,000 free requests per month.
Optional URL parameters:
| Parameter | Description | Example |
|---|---|---|
groups=<ids> | Enable specific tool groups | ...&groups=social,ecommerce |
tools=<names> | Enable specific tools only | ...&tools=search_engine,scrape_as_markdown |
Bright Datahttps://mcp.brightdata.com/mcp?token=YOUR_API_TOKENOr run locally:
Add to ~/.cursor/mcp.json:
Add to .vscode/mcp.json:
Add to ~/.codeium/windsurf/mcp_config.json:
Add to ~/.gemini/settings.json:
Add to your Zed settings:
Go to Settings > MCP Servers > Add MCP Server and add:
For any client that supports local MCP servers:
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:
Beyond the free tier — pay as you go, no commitment:
| Search, Scrape & Extract | Browser Navigation | |
|---|---|---|
| Pay as you go | $1.50 / 1K results | $8 / GB |
Full pricing, volume plans and enterprise →
Answer questions using live web data instead of training data. Search, then read the sources.
| Task | Tools |
|---|---|
| Search the web for current information | search_engine, search_engine_batch |
| Read a specific page as clean Markdown | scrape_as_markdown, scrape_batch |
| Find the most relevant sources for a research question, ranked by AI relevance score | discover |
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".
Read product data as structured JSON: price, availability, rating, review count, seller, images.
| Task | Tools |
|---|---|
| Amazon product details, reviews, search results | web_data_amazon_product, web_data_amazon_product_reviews, web_data_amazon_product_search |
| Walmart, eBay, Best Buy, Etsy, Home Depot, Zara products | web_data_walmart_product, web_data_ebay_product, web_data_bestbuy_products, web_data_etsy_products, web_data_homedepot_products, web_data_zara_products |
| Cross-retailer price view | web_data_google_shopping |
| Seller profiles | web_data_walmart_seller |
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?".
Build competitor profiles from live data: funding, headcount, hiring, customer reviews, pricing pages.
| Task | Tools |
|---|---|
| Company funding, investors, size | web_data_crunchbase_company, web_data_zoominfo_company_profile |
| Company pages, employees, job postings | web_data_linkedin_company_profile, web_data_linkedin_job_listings |
| Customer sentiment | web_data_google_maps_reviews, web_data_facebook_company_reviews, app store review tools |
| Competitor pricing pages | scrape_as_markdown, scrape_batch |
| Market discovery | search_engine_batch, discover |
Example prompt: "Analyze Notion as a competitor: pricing, funding, hiring focus, and what customers complain about".
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.
| Task | Tools |
|---|---|
| Drop-in replacement for built-in web search | search_engine |
| Drop-in replacement for built-in URL fetch | scrape_as_markdown |
| Parallel data collection (10 at a time) | search_engine_batch, scrape_batch |
| Interactive sites (login walls, infinite scroll, dynamic content) | scraping_browser_* (13 tools) |
| Structured JSON from any page, no schema needed | extract |
Package registry data on demand — no scraping, no stale caches.
| Task | Tools |
|---|---|
| npm package version, README, dependencies, metadata | web_data_npm_package |
| PyPI package version, README, dependencies, metadata | web_data_pypi_package |
| Read files from GitHub repositories | web_data_github_repository_file |
Example prompts: "What's the latest version of express on npm?", "Get the README for the langchain-brightdata PyPI package".
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.
| Task | Tools |
|---|---|
| ChatGPT answers with citations and recommendations | web_data_chatgpt_ai_insights |
| Grok answers | web_data_grok_ai_insights |
| Perplexity answers with sources | web_data_perplexity_ai_insights |
Example prompt: "Ask ChatGPT, Grok, and Perplexity 'what is the best proxy provider' and compare how each one ranks us".
Structured data from seven platforms: profiles, posts, comments, engagement metrics.
| Platform | Tools |
|---|---|
| person profiles, company profiles, job listings, posts, people search (5 tools) | |
| profiles, posts, reels, comments (4 tools) | |
| TikTok | profiles, posts, shop, comments (4 tools) |
| posts, marketplace listings, company reviews, events (4 tools) | |
| YouTube | videos, channel profiles, comments (3 tools) |
| X (Twitter) | posts, profile posts (2 tools) |
| posts (1 tool) |
Example prompt: "Get the last 10 posts from this TikTok profile and summarize the engagement".
Gather source material from many pages at once, filtered by recency and relevance.
| Task | Tools |
|---|---|
| Collect multiple sources in one call | scrape_batch (up to 10 URLs) |
| Find sources by topic with date filtering | discover with start_date / end_date |
| News and finance data | web_data_yahoo_finance_business, search_engine with news queries |
| Capability | Bright Data MCP | Typical web MCP servers |
|---|---|---|
| Total tools | 69 | 2–10 |
| Platform-specific structured JSON extractors | 45 tools across e-commerce, social, business, finance, travel, app stores | Rare; generic scraping only |
| Unblocking (bot detection bypass, CAPTCHA solving, proxy rotation) | Built into every request | Usually none; blocked on protected sites |
| Search engines | Google, Bing, Yandex | Usually one |
| AI-relevance-ranked search with intent | Yes (discover) | Not offered |
| Browser automation | 13 tools, remote browser, no local setup | Limited or none |
| LLM response collection (ChatGPT, Grok, Perplexity) | Yes | Not offered |
| Package registry data (npm, PyPI) | Yes | Not offered |
| Batch operations | 10 searches or 10 scrapes per call | Usually single-request only |
| Geo-targeting | Yes | Limited or none |
| Free tier | 5,000 requests/month, browser automation included, no credit card | Varies; often rate-limited keyless access |
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="ecommerce,browser" (local) or &groups=ecommerce,browser (hosted URL)TOOLS adds individual tools on top: TOOLS="extract,scrape_as_html"search_engine, search_engine_batch, scrape_as_markdown, scrape_batch, discovercustom is reserved; use TOOLS for individual picks| Group ID | Contents | Tool count |
|---|---|---|
ecommerce | Amazon, Walmart, eBay, Best Buy, Etsy, Home Depot, Zara, Google Shopping | 11 |
social | LinkedIn, Instagram, Facebook, TikTok, YouTube, X, Reddit | 23 |
browser | Remote browser automation | 13 |
business | Crunchbase, ZoomInfo, Google Maps reviews, Zillow | 4 |
finance | Yahoo Finance | 1 |
research | GitHub repository files | 1 |
app_stores | Google Play, Apple App Store | 2 |
travel | Booking.com | 1 |
geo | ChatGPT, Grok, Perplexity response collection | 3 |
code | npm, PyPI package data | 2 |
advanced_scraping | Batch tools, HTML scraping, AI extraction, session stats | 5 |
Local server with browser automation and AI extraction:
Coding agent setup (Claude Code / Cursor / Windsurf) — npm and PyPI package data:
scrape_as_markdown. Multiple URLs (up to 10): scrape_batchsearch_engine. Multiple queries (up to 10): search_engine_batchdiscover with an intentweb_data_* tool — returns clean JSON, faster and more reliable than scraping the same pageextractscrape_as_htmlscraping_browser_* toolsweb_data_npm_package / web_data_pypi_package — never scrape package registriesweb_data_chatgpt_ai_insights / web_data_grok_ai_insights / web_data_perplexity_ai_insightsNotes that apply to all web_data_* tools:
num_of_comments, days_limit) and run bulk collection in a subagent where your framework supports it, so records don't flood the main context windowweb_data_* call fails, scrape_as_markdown works on the same URL as a fallback| Tool | Description | Group |
|---|---|---|
search_engine | Search Google, Bing, or Yandex. Google returns JSON (URL, title, description); Bing and Yandex return Markdown. Paginate with the cursor parameter | always enabled |
search_engine_batch | Up to 10 search queries in one call | always enabled |
scrape_as_markdown | Any URL as Markdown. Bot protection and CAPTCHA handled automatically | always enabled |
scrape_batch | Up to 10 URLs in one call; returns an array of URL/content pairs in Markdown | always enabled |
discover | AI-relevance-ranked web search. Returns scored results (title, description, URL, relevance score). Supports intent-based ranking, geo-targeting, date filtering, keyword filtering | always enabled |
scrape_as_html | Any URL as raw HTML | advanced_scraping |
extract | Scrape a page and convert it to structured JSON using AI, with an optional custom extraction prompt | advanced_scraping |
session_stats | Tool usage counts for the current session | advanced_scraping |
| Tool | Input requirement | Returns |
|---|---|---|
web_data_amazon_product | Product URL containing /dp/ | Price, title, availability, rating, review count, ASIN, seller, images |
web_data_amazon_product_reviews | Product URL containing /dp/ | Review data |
web_data_amazon_product_search | Search keyword + Amazon domain URL | First page of search results |
web_data_walmart_product | Product URL containing /ip/ | Product data |
web_data_walmart_seller | Walmart seller URL | Seller data |
web_data_ebay_product | eBay product URL | Listing data |
web_data_homedepot_products | homedepot.com product URL | Product data |
web_data_zara_products | Zara product URL | Product data |
web_data_etsy_products | Etsy product URL | Listing data |
web_data_bestbuy_products | Best Buy product URL | Product data |
web_data_google_shopping | Google Shopping product URL | Multi-seller product data |
| Tool | Input requirement | Returns |
|---|---|---|
web_data_linkedin_person_profile | LinkedIn profile URL | Profile, experience, skills |
web_data_linkedin_company_profile | LinkedIn company URL | Company data |
web_data_linkedin_job_listings | LinkedIn jobs URL | Job listing data |
web_data_linkedin_posts | LinkedIn post URL | Post data |
web_data_linkedin_people_search | LinkedIn people search URL | Search results |
web_data_instagram_profiles | Instagram profile URL | Profile data |
web_data_instagram_posts | Instagram post URL | Post data |
web_data_instagram_reels | Instagram reel URL | Reel data |
web_data_instagram_comments | Instagram URL | Comments |
web_data_facebook_posts | Facebook post URL | Post data |
web_data_facebook_marketplace_listings | Marketplace listing URL | Listing data |
web_data_facebook_company_reviews | Facebook company URL + review count | Reviews |
web_data_facebook_events | Facebook event URL | Event data |
web_data_tiktok_profiles | TikTok profile URL | Profile data |
web_data_tiktok_posts | TikTok post URL | Post data |
web_data_tiktok_shop | TikTok Shop product URL | Product data |
web_data_tiktok_comments | TikTok video URL | Comments |
web_data_x_posts | X post URL | Post data |
web_data_x_profile_posts | X profile URL | Recent posts, optional date range filter |
web_data_youtube_videos | YouTube video URL | Video metadata |
web_data_youtube_profiles | YouTube channel URL | Channel data |
web_data_youtube_comments | YouTube video URL, optional num_of_comments (default 10) | Comments |
web_data_reddit_posts | Reddit post URL | Post data |
Remote browser session. Typical sequence: navigate → snapshot → interact by ref → extract or screenshot.
| Tool | Description |
|---|---|
scraping_browser_navigate | Open or reuse a browser session and navigate to a URL |
scraping_browser_go_back | Navigate back |
scraping_browser_go_forward | Navigate forward |
scraping_browser_snapshot | ARIA snapshot of the page listing interactive elements with refs. Required before ref-based actions |
scraping_browser_click_ref | Click an element by ref from the latest snapshot |
scraping_browser_type_ref | Type into an element by ref; optionally press Enter to submit |
scraping_browser_screenshot | Screenshot of the current page; optional full_page |
scraping_browser_get_text | Text content of the page body |
scraping_browser_get_html | HTML of the current page |
scraping_browser_scroll | Scroll to the bottom of the page |
scraping_browser_scroll_to_ref | Scroll an element into view |
scraping_browser_wait_for_ref | Wait for an element to become visible, with optional timeout |
scraping_browser_network_requests | Network 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.
| Tool | Input requirement | Returns |
|---|---|---|
web_data_crunchbase_company | Crunchbase company URL | Funding, investors, company data |
web_data_zoominfo_company_profile | ZoomInfo company URL | Company profile |
web_data_google_maps_reviews | Google Maps URL, optional days_limit (default 3) | Business reviews |
web_data_zillow_properties_listing | Zillow listing URL | Property listing data |
| Tool | Input | Returns |
|---|---|---|
web_data_chatgpt_ai_insights | Prompt | ChatGPT's answer: structured text, citations, recommendations, Markdown |
web_data_grok_ai_insights | Prompt | Grok's answer as structured Markdown |
web_data_perplexity_ai_insights | Prompt | Perplexity's answer with sources, as structured Markdown |
Use for Generative Engine Optimization (tracking how LLMs describe your brand) and LLM-as-a-judge workflows.
| Tool | Input | Returns |
|---|---|---|
web_data_npm_package | npm package name (e.g., @brightdata/sdk) | Latest version, README, dependencies, metadata |
web_data_pypi_package | PyPI package name (e.g., langchain-brightdata) | Latest version, README, dependencies, metadata |
| Tool | Input requirement | Returns | Group |
|---|---|---|---|
web_data_yahoo_finance_business | Yahoo Finance business URL | Company financial data | finance |
web_data_github_repository_file | GitHub file URL | File content and metadata | research |
web_data_google_play_store | Play Store app URL | App details | app_stores |
web_data_apple_app_store | App Store app URL | App details | app_stores |
web_data_booking_hotel_listings | Booking.com listing URL | Hotel listing data | travel |
Full tool reference in the docs →
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 are inlined below. Each follows the Claude Code skill format: copy the content inside a dropdown and paste it into Claude Code.
Makes Bright Data MCP the default for all web data operations, replacing WebFetch, WebSearch, and other built-in web tools that fail on bot detection.
Copy the content below and paste it into Claude Code. It will set up the MCP connection and skill for you.
Full skill with workflows and setup references: skills/bright-data-mcp
Competitor snapshots, pricing comparison, review mining, hiring signals, content/SEO analysis, and market landscape maps — from live web data.
Copy the content below and paste it into Claude Code. It will set up the MCP connection and skill for you.
Full skill with 6 modules, 8 report templates, and analysis frameworks: skills/competitive-intel
Resolves a product (name, ASIN, or URL) across Amazon, Walmart, eBay, Best Buy, and Google Shopping, normalizes prices and availability into one ranked table, and names the cheapest in-stock option.
Copy the content below and paste it into Claude Code. It will set up the MCP connection and skill for you.
Full skill with offer schema and ranking rules: skills/price-comparison
| Variable | Description | Default | Example |
|---|---|---|---|
API_TOKEN | Your Bright Data API token (required) | - | your-token-here |
RATE_LIMIT | Custom rate limiting | unlimited | 100/1h, 50/30m |
WEB_UNLOCKER_ZONE | Custom Web Unlocker zone name | mcp_unlocker | my_custom_zone |
BROWSER_ZONE | Custom Browser zone name | mcp_browser | my_browser_zone |
POLLING_TIMEOUT | Timeout for web_data_* tools polling (seconds). Each second = 1 polling attempt | 600 | 300, 1200 |
BASE_TIMEOUT | Request timeout for base tools in seconds (search and scrape) | No limit | 60, 120 |
BASE_MAX_RETRIES | Max retries for base tools on transient errors (0-3) | 0 | 1, 3 |
GROUPS | Comma-separated tool group IDs | - | ecommerce,browser |
TOOLS | Comma-separated individual tool names | - | extract,scrape_as_html |
| Resource | Link |
|---|---|
| API documentation | docs.brightdata.com/ai/mcp-server/overview |
| Full tools reference | docs.brightdata.com/ai/mcp-server/tools |
| Agent skills | github.com/brightdata/skills |
| Usage examples | examples |
| Changelog | CHANGELOG.md |
Install Node.js, or use the full path to node:
Increase the timeout in your client settings to 180s.
Verify your API token is valid and has the required permissions. Tokens are managed in account settings.
Check the URL format matches the tool's requirement (e.g., Amazon needs /dp/, Walmart needs /ip/). Verify the page is publicly accessible. scrape_as_markdown works on the same URL as a fallback.
Check your internet connection and firewall settings.
Please follow Bright Data's coding standards.
| Channel | Link |
|---|---|
| GitHub issues | github.com/brightdata-com/brightdata-mcp/issues |
| Documentation | docs.brightdata.com/ai/mcp-server/overview |
| support@brightdata.com |
MIT © Bright Data Ltd.