# Scrape Do — MCP server on mcp.ai > Connect your Scrape Do account and use 16 tools for web scraping straight from your AI agent. Connect with your own API key. Scrape.do is a web scraping API offering rotating residential, data-center, and mobile proxies with headless browser support and session management to bypass anti-bot protections (e.g., Cloudflare, Akamai) and extract data at scale in formats like JSON and HTML. By: mcp.ai · official Page: https://mcp.ai/scrape_do ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_scrape_do?ms=1787296080000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/scrape_do/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/scrape_do/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/scrape_do/skill.md Postman collection (v2.1): https://mcp.ai/scrape_do/postman.json ## Tools - scrape_do_cancel_async_job(token: string, job_id: string) — Tool to cancel an asynchronous scraping job. Use when you need to stop processing of pending tasks in a job. Completed tasks remain available. - scrape_do_create_async_job(Body?: string, Super?: boolean, Device?: string, Method?: string, Output?: string, Render?: object, GeoCode?: string, Headers?: object, Targets: string[], Timeout?: integer, SessionID?: string, SetCookies?: string, WebhookURL?: string, DisableRetry?: boolean, RetryTimeout?: integer, ForwardHeaders?: boolean, WebhookHeaders?: object, RegionalGeoCode?: string, DisableRedirection?: boolean, TransparentResponse?: boolean) — Tool to create an asynchronous scraping job with specified targets and options. Use when you need to scrape multiple URLs in parallel without waiting for results. Returns a job ID immediately for poll - scrape_do_get_account_info(token: string) — Retrieves account information and usage statistics from Scrape.do. This action makes a GET request to the Scrape.do info endpoint to fetch: - Subscription status - Concurrent request limits and usage - scrape_do_get_amazon_offers(asin: string, geocode: string, zipcode: string, super_mode?: boolean, include_html?: boolean) — Get all seller offers for any Amazon product. Retrieves every seller listing including pricing, shipping costs, seller information, and Buy Box status in structured JSON format. Use when you need to c - scrape_do_get_amazon_product(asin: string, geocode: string, zipcode: string, language?: string, super_mode?: boolean, include_html?: boolean) — Extract structured product data from Amazon product detail pages (PDP). Returns comprehensive product information including title, pricing, ratings, images, best seller rankings, and technical specifi - scrape_do_get_amazon_raw_html(url: string, super?: boolean, output?: string, geocode: string, timeout?: integer, zipcode: string, language?: string) — Tool to get raw HTML from any Amazon page with ZIP code geo-targeting. Use when you need complete unprocessed HTML source from Amazon URLs with location-based targeting. Ideal for scraping pages not c - scrape_do_get_async_account_info() — Tool to get account information for the Async API including concurrency limits and usage statistics. Use when you need to check available concurrency slots, active jobs, or remaining credits for Async - scrape_do_get_async_job(jobID: string) — Tool to retrieve details and status of a specific asynchronous scraping job. Use when you need to check the progress, status, or results of a previously created async job. Returns job metadata includi - scrape_do_get_async_task(token: string, job_id: string, task_id: string) — Tool to retrieve the result of a specific task within an asynchronous job. Returns the scraped content for that particular URL. Use when you need to check the status and result of a previously submitt - scrape_do_get_page(url: string, super?: boolean, width?: integer, device?: string, height?: integer, output?: string, render?: boolean, timeout?: integer, geo_code?: string, return_json?: boolean, set_cookies?: string, extra_headers?: boolean, retry_timeout?: integer, custom_headers?: boolean, block_resources?: boolean, disable_redirection?: boolean) — A tool to scrape web pages using scrape.do's API service. Makes a basic GET request to fetch webpage content while handling anti-bot protections and proxy rotation automatically. Does not execute Java - scrape_do_list_async_jobs(page?: integer, page_size?: integer) — Tool to list all asynchronous scraping jobs. Returns paginated list of jobs with their status and metadata. Use when you need to retrieve job history or monitor job statuses. Supports pagination with - scrape_do_proxy_mode(url: string, device?: string, render?: boolean, geo_code?: string, custom_headers?: boolean) — This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling - scrape_do_scrape_url_post(url: string, body?: string, super?: boolean, device?: string, render?: boolean, geoCode?: string, timeout?: integer, sessionId?: string, setCookies?: string, customHeaders?: boolean) — Tool to scrape web pages using POST method via scrape.do API. Use when you need to send POST requests to target websites with custom request body data. Supports all parameters from GET endpoint plus r - scrape_do_search_amazon(page?: integer, super?: boolean, geocode: string, keyword: string, zipcode: string, language?: string, include_html?: boolean) — Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flag - scrape_do_set_block_urls(urls: string[]) — This tool allows users to block specific URLs during the scraping process. It's particularly useful for blocking unwanted resources like analytics scripts, advertisements, or any other URLs that might - scrape_do_set_regional_geo_code(url: string, regional_geo_code: string) — This tool allows users to set a broader geographical targeting by specifying a region code instead of a specific country code. This is useful when you want to scrape content from an entire region rath ## Example prompts - "What can I do in Scrape Do?" - "Show me a summary of my Scrape Do account" ## Links Docs: https://mcp.ai/docs/mcps/scrape_do Website: https://mcp.ai/mcps/scrape_do