ScrapingDog-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SCRAPINGDOG_API_KEY | Yes | Your ScrapingDog API key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| amazon_productA | Retrieves comprehensive product data from any Amazon product page using its ASIN. Supports 20+ Amazon domains globally with localization options. [Credits: 1 API credit per successful request when country=us. 5 API credits per request for any other country (per the country parameter's own credit note).] Notes: domain and country are independent: domain selects the Amazon TLD to scrape, country affects marketplace localization/pricing and credit cost. No pagination applicable (single product lookup). Returns: { title, location, search_filter, product_information: {Brand Name, UPC, ASIN, Customer Reviews:{ratings_count,stars}, ...}, parent_asin, description, is_prime_exclusive, aplus, main_image, images: [], product_category, average_rating, feature_bullets: [], total_reviews, ratings_distribution: [{rating, distribution}], customer_reviews: [{customer_name, rating, review_title, date, review_snippet}] } |
| amazon_searchA | Retrieves search result listings from Amazon for any query, including product titles, prices, ratings, review counts, sponsored status, and ASINs, plus pagination links. [Credits: 1 API credit per successful request when country=us (5 credits for other countries per the country parameter). premium=true costs an additional 25 credits per request.] Notes: Pagination is via the page parameter (starts at 1); the response also returns a pagination array of ready-to-use next-page Amazon URLs (informational, not directly usable as this API's own next-page param). Returns: { search_message, location, results: [{type, title, image, has_prime, is_best_seller, is_amazon_choice, limited_time_deal, deal_of_the_day, stars, total_reviews, optimized_url, sponsored, number_of_people_bought, asin, availability_quantity, price_string, price_symbol, price, extracted_price, currency, climate_pledge_friendly, absolute_position, organic_position, certification}], pagination: [urls] } |
| amazon_reviewsA | Scrapes customer reviews from any Amazon product page, with filtering by star rating, reviewer type, media type, format, and sort order. [Credits: 5 API credits per successful request.] Notes: Pagination via the page parameter (starts at 1). Single concurrency is recommended by ScrapingDog for best reliability on this endpoint. Either provide asin+domain+page, or provide url as a shortcut. Returns: { reviews (total count), rating, actual_reviews, customer_reviews: [{user, title, date, rating, review}] } |
| amazon_autocompleteA | Retrieves keyword suggestions from Amazon's autocomplete feature based on partial search terms. Useful for keyword research and search-driven features. [Credits: 5 API credits per successful request.] Notes: All search-related params (prefix, last_prefix, suffix, mid) and localization params (domain, language) are documented as Optional, though prefix is effectively required in practice to get meaningful suggestions. Returns: [ {type: "KEYWORD", keyword: "..."}, ... ] — flat array of suggestion objects. |
| amazon_offersA | Retrieves detailed offer data for a given ASIN — every active offer with pricing, availability, seller details, and delivery options. [Credits: Not explicitly stated on the documentation page.] Notes: No pagination applicable — returns all active offers for the ASIN in a single response (offers_count / total_offers reflect the returned set). Returns: { title, rating, reviews_total, image, asin, link, offers_count, total_offers, offers: [{price:{symbol,value,currency,raw}, minimum_order_quantity:{value}, maximum_order_quantity:{value}, condition:{is_new,title}, delivery:{fulfilled_by_amazon,date,comments,price:{...}}, seller:{name,link,id,rating,ratings_total,ratings_percentage_positive}, offer_id, is_prime, position, buybox_winner, offer_asin, is_pinned}] } |
| walmart_autocompleteA | Retrieves Walmart autocomplete search suggestions for any query, including a list of suggested search terms and category navigation data. [Credits: 5 API credits per successful request.] Notes: No domain/country localization parameters documented for this endpoint. No pagination applicable. Returns: { queries: [{displayName, url}], fns: [{title, image, url}] } — fns are suggested category/browse links related to the query. |
| walmart_productA | Scrapes any Walmart product page by URL, retrieving title, price, images, ratings, reviews, seller info, and more. [Credits: 5 API credits per successful request.] Notes: Uses a full product page URL rather than a product ID parameter. No domain/country localization parameters documented; localization is implicit in the walmart.com URL passed. No pagination applicable. Returns: { title, description, upc, item_id, product_type, price, currency, availability, delivery_date, images: [], seller:{seller_id,seller_name,display_name}, overall_rating, review_count, ratings_distribution: [{stars,count}], categories: [{name,url}], specifications: {brand,count,active_ingredient,...} } |
| walmart_searchA | Scrapes Walmart search result pages by passing any Walmart search URL, returning product titles, prices, ratings, review counts, availability, and seller info. [Credits: 5 API credits per successful request.] Notes: Pagination is handled by including page parameters in the passed Walmart search URL itself (e.g. &page=2) rather than via a separate API parameter — the docs only document the url parameter. No domain/country localization parameters documented. Returns: { search_results: [{title, totalItemCount, item: [{title, id, usItemId, type, thumbnail, canonicalUrl, rating, review_count, seller_name, availability_status, current_price, before_price, price_range_string, sponsored, shipping}]}] } |
| walmart_reviewsA | Scrapes Walmart product reviews by passing any Walmart reviews page URL, returning ratings distribution, individual reviews, and top positive/negative feedback. [Credits: 5 API credits per successful request.] Notes: No domain/country localization or explicit pagination parameters documented; pagination (if supported) would need to be embedded in the passed reviews URL. Returns: { product: { name, url, overall_rating, total_count, ratings: [{stars,count}], top_positive: {title,text,rating,review_submission_time,user_nickname,customer_type}, top_negative: {...same shape...}, reviews: [{position,title,text,rating,review_submission_time,user_nickname,customer_type}] } } |
| baidu_searchA | Scrape Baidu search engine results pages. Supports Baidu search operators (inurl:, site:, intitle:, etc.) and localization/pagination controls. [Credits: 5 API credits per successful request] Notes: Pagination is offset-based via pn (0, 10, 20, ...) combined with rn (page size, max 50, default 10). Localization is controlled via ct for Chinese script variant. Advanced filters (q5, q6, bs, oq, f, gpc) mimic Baidu's native search operators/URL parameters for finer targeting. Returns: { Baidu_data: [ { title, link, snippet, rank } ] } |
| ebay_searchA | Scrape eBay search result pages by passing any eBay search URL. Returns product titles, item IDs, prices, seller info, condition, and shipping details. [Credits: 5 API credits per successful request] Notes: No dedicated query/keyword parameter — instead pass a full, pre-built eBay search URL (including any eBay-native filters such as _nkw, category, price range, etc.) via the url parameter. eBay domain (e.g. ebay.com, ebay.co.uk) inside the url determines locale/country. Returns: { search_results: [ { position, itemId, title, seller: { name, feedback, positive_feedback_percent }, condition, is_sponsored, rating, reviews, buying_format, is_best_offer, price, extracted_price, original_price, extracted_original_price, discount, link, items_sold, extracted_items_sold, shipping, is_free_return } ] } |
| ebay_productA | Scrape any eBay product listing page by URL to retrieve title, item ID, pricing, seller details, images, specifications, shipping and return policies. [Credits: 5 API credits per successful request] Notes: Product identity/locale is embedded in the url (item ID path segment, e.g. /itm/, and eBay country domain, e.g. ebay.co.uk vs ebay.com). Returns: { product_results: { title, itemId, seller: { name, reviews, positive_feedback_percent, thumbnail }, likes, price, extracted_price, condition, is_buy_it_now, main_image, images: [ { link, variant } ], shipping_details: { shipping_cost, seller_location }, return_details: { full_return_text, accepts_returns }, payment_methods: [], specifications: [ { name, value } ], product: { rating, reviews, reviews_histogram } } } |
| flipkart_searchA | Scrape Flipkart search result pages by passing any Flipkart search URL. Returns product titles, URLs, prices, discounts, ratings, and product IDs. [Credits: 5 API credits per successful request] Notes: No dedicated query parameter — pass a full pre-built Flipkart search URL (with the q= query string and any native Flipkart filters) via url. Returns: { search_results: [ { title, url, price, previous_price, discount, rating, ratings_count, reviews_count, features: [], image, product_id } ] } |
| flipkart_productA | Scrape any Flipkart product page by URL to retrieve title, brand, pricing, specifications, images, customer ratings, reviews, payment options, and available offers. [Credits: 5 API credits per successful request] Notes: Product identity is embedded in the url (the /p/ path segment, e.g. itm909c8202e1864). Returns: { product_results: { title, brand, brand_url, description, price, previous_price, discount, delivery_date, payment_options: { emi_available, cod_available, net_banking }, seller: { name, rating, services: [] }, highlights: [], main_image, images: [], overall_rating, ratings_count, reviews_count, specifications: { : { : value } }, reviews: [ { rating, title, comment, reviewer, helpful_count } ] } } |
| myntra_searchA | Scrape Myntra search result pages by passing any Myntra search URL. Returns product IDs, names, brands, prices, discounts, ratings, and images. [Credits: 5 API credits per successful request] Notes: No dedicated query parameter — pass a full pre-built Myntra search URL (including rawQuery and any native Myntra filters) via url. Returns: { search_results: [ { productId, product, productName, brand, rating, ratingCount, mrp, price, discount, gender, primaryColour, category, sizes, landingPageUrl, searchImage, images: [ { view, src } ], inventoryInfo: [ { skuId, label, inventory, available } ], couponData: { couponDiscount, couponDescription: { couponCode, bestPrice } }, articleType: { typeName }, masterCategory: { typeName } } ] } |
| myntra_productA | Scrape any Myntra product page by URL to retrieve product name, brand, MRP, pricing, available sizes, color options, ratings, images, seller details, and available offers. [Credits: 5 API credits per successful request] Notes: Product identity is embedded in the url (the numeric ID path segment before /buy, e.g. 31076617). Returns: { product_results: { productId, name, brand, mrp, country_of_origin, material, fit, overall_rating, ratings_count, images: [], sizes: [ { label, mrp, discounted_price, discount_percent, available, seller, stock } ], offers: [ { type, description } ], product_details: [ { section, content } ], reviews: [ { rating, title, comment, reviewer, helpful_count } ] } } |
| bing_searchA | Retrieves organic search results from Bing with customizable parameters for geographic location, localization, pagination, and content filtering. [Credits: 5 API credits per request] Notes: Endpoint costs 5 API credits per request. lat/lon set a geographic starting point; mkt and cc are mutually exclusive localization options. Returns: { bing_data: [ { title, displayed_link, link, snippet, rank, images[] } ] } |
| bing_shoppingA | Retrieves shopping results from Bing with support for market targeting, country localization, pagination, and advanced filters. [Credits: 5 API credits per request] Notes: Endpoint costs 5 API credits per request. mkt and cc are mutually exclusive. Returns: { search_parameters: { q }, shopping_results: [ { link, external_link, title, thumbnails[], seller, price, extracted_price } ] } |
| duckduckgo_searchA | Retrieves organic search results from DuckDuckGo with support for region codes, date filters, and pagination via next page tokens. [Credits: Not specified in documentation] Notes: Documentation page does not state a per-request credit cost (unlike Bing Search/Shopping, Universal Search, and ChatGPT Scraper). Response text in the doc's example description referenced 'Google page' for the html param, likely a documentation copy-paste artifact — applies to the DuckDuckGo result page. Returns: { organic_results: [ { title, displayed_link, link, snippet, rank } ], next_page_token } |
| universal_searchB | Scrapes results from various search engines without worrying about proxy rotation and data parsing. Supports geographic targeting and language customization. [Credits: 20 API credits per successful request] Notes: Only 20 credits per successful request. Documentation does not name which specific search engine(s) are aggregated beyond 'various search engine results'. Returns: { organic_results: [ { title, displayed_link, snippet, date, missing[], link, extended_sitelinks: [ { title, link } ], rank } ] } |
| chatgpt_scraperA | Sends any prompt to ChatGPT and receives a structured JSON response including the full conversation with user and assistant roles. No browser automation required. [Credits: 30 API credits per successful request] Notes: Assistant content is returned as an array of structured content blocks (paragraph, numbered_list, etc.), not a single plain-text string. Returns: { conversation: [ { role: 'user'|'assistant', content: string | [ { type: 'paragraph', text } | { type: 'numbered_list', items[] } ] } ] } |
| accountA | Programmatically monitor Scrapingdog account usage: remaining API credits and active concurrent connections. [Credits: Not applicable (account status check; documentation does not state a credit cost)] Notes: Response field names in the documented sample do not perfectly match the field names referenced in the accompanying code examples (e.g., sample response uses requestLimit/requestUsed while the Python/JS examples read data['remainingApiCredits'] and data.concurrentRequests) — likely inconsistent/outdated documentation. Both sets of field names are captured in response_summary for completeness. Returns: Documented sample: { threadCount, requestLimit, requestUsed, validity, concurrency_limit, pack, pack_type, linkedin_concurrency_limit, linkedin_thread_count, email, username, apiKey }. Code examples instead reference: { remainingApiCredits, concurrentRequests }. |
| webhookA | Receives scraped data automatically at a user-configured endpoint instead of polling for results. Configure a webhook URL in the dashboard and Scrapingdog POSTs the scraped content directly to it once ready — ideal for async workflows and database pipelines. [Credits: Not specified in documentation] Notes: Calling this endpoint returns only a session id (sid) immediately — the actual scraped content is delivered asynchronously via HTTP POST to the webhook URL configured in the dashboard, not in the initial API response. Returns: Immediate response: { sid: '' }. Actual scraped payload is POSTed later to the configured webhook URL (shape not documented on this page). |
| google_ai_modeA | Searches Google with AI Mode enabled and returns structured results with reference sources and text blocks (paragraphs, headings, lists). [Credits: 10 API credits per successful request] Notes: |
| google_ai_overviewA | Fetches Google AI Overview results using the follow-up |
| google_maps_searchA | Returns Google Maps business listings for a search query or a specific place, including rating, reviews, address, phone, website, and operating hours. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: Each result item includes ready-made follow-up links: |
| google_maps_postsA | Retrieves posts and updates published on a Google Business Profile listing, such as promotions, announcements, and news, given a Maps data_id. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: data_id is obtained by first querying google_maps_search with the location name and reading the |
| google_maps_photosA | Retrieves photos for a Google Maps location, optionally filtered by category, given a Maps data_id. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: To filter by category, first call the endpoint without category_id to obtain the |
| google_maps_reviewsA | Retrieves customer reviews for a Google Maps location, with sorting and topic filtering, given a Maps data_id. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: topic_id values come from the |
| google_maps_placesA | Retrieves a complete business profile for a specific Google Maps location, including operating hours, service options, amenities, accessibility features, and payment methods. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: Two lookup modes: (1) type=place plus data_id, or (2) place_id alone. The docs list |
| google_trendsA | Retrieves Google Trends search interest data: interest over time, comparative regional breakdown, or interest by region, for up to 5 queries at once. [Credits: 5 API credits per request] Notes: Multi-query comparison (up to 5 comma-separated queries) is only supported for data_type=TIMESERIES and data_type=GEO_MAP; GEO_MAP_0 supports only a single query. region is only meaningful alongside GEO_MAP/GEO_MAP_0 data types. Returns: JSON with |
| google_trends_autocompleteB | Returns Google Trends autocomplete suggestions for a search query, including relevant topics/entities with categorization and a Trends exploration link. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: Each suggestion includes a Freebase-style topic |
| google_trends_trending_nowA | Retrieves currently trending searches on Google, filtered by location, time window, and language. [Credits: Not explicitly stated on this page (see general Scrapingdog credit pricing).] Notes: geo is listed as Required with a default of US, so it behaves like an optional parameter with a fallback in practice. Returns: JSON with |
| google_news_searchA | Retrieves news search results from Google News (classic search-style scrape), returning headlines, snippets, source names, and relative timestamps. [Credits: 5 API credits per request] Notes: Pagination via page (0-indexed). Results returned are relative-time stamped ('19 hours ago') rather than absolute dates - use google_news_v2 for absolute dates. No id/token concepts used by this endpoint. Returns: { search_information: { query_displayed, url }, news_results: [ { title, snippet, source, lastUpdated, url, favicon } ] } |
| google_news_v2A | Faster Google News endpoint (v2) that returns image URLs instead of base64 and actual ISO dates instead of relative durations. Supports browsing by topic, publication, or section tokens instead of a free-text query. [Credits: Not explicitly stated on this documentation page.] Notes: The docs reference a 'story_token' concept (used to restrict/sort story clusters via the so parameter, and excluded from combination with query/topic_token/publication_token) but do not provide a dedicated parameter entry or example for it - treat as undocumented/ambiguous and confirm with ScrapingDog support before relying on it. topic_token, publication_token, and query are mutually exclusive top-level ways to select content; section_token narrows a topic_token/publication_token further. No page/results pagination parameter is documented for this v2 endpoint. Returns: { news_results: [ { title, link, thumbnail, source, authors: [string], date (ISO 8601), rank } ] } |
| google_scholarA | Searches academic papers and scholarly content on Google Scholar, with support for citation lookups, author/source search helpers, year filters, and pagination. [Credits: 5 API credits per request] Notes: Article/result 'id' values from scholar_results (e.g. 7QAkDEkBjpYJ) feed the google_scholar_cite endpoint's query parameter. cluster_id (from inline_links.versions) and cites_id (from inline_links.cited_by) are the tokens used respectively with the cluster and cites parameters on this same endpoint. Pagination uses page (0-indexed); pagination.page_no in the response maps page numbers to result URLs. Returns: { related_searches: [ { title, link } ], scholar_results: [ { title, title_link, id, displayed_link, snippet, inline_links: { versions: { total, link, cluster_id }, cited_by: { total, link, cites_id }, related_pages_link }, resources: [ { title, type, link } ] } ], pagination: { current, page_no: { : url } } } |
| google_scholar_profilesA | Searches for academic researcher profiles on Google Scholar by author name, returning affiliation, citation counts, and research interests. [Credits: Not explicitly stated on this documentation page.] Notes: Cursor-based pagination via after_author/before_author tokens rather than page numbers (tokens are not shown in the sample response - they would need to be captured from a real API response's pagination metadata, not documented inline). Each profile's author_id is the value to feed into the google_scholar_author and google_scholar_author_citation endpoints. Returns: { profiles: [ { title, author_id, affiliations, cited_by (integer), interests: [ { title } ] } ] } |
| google_scholar_authorA | Retrieves comprehensive author information from a Google Scholar profile: name, affiliation, email, and publication/citation history. The same endpoint also exposes a co-author list mode via view_op=list_colleagues. [Credits: Not explicitly stated on this documentation page.] Notes: IMPORTANT AMBIGUITY: this endpoint's URL (/google_scholar/author) is identical to the one documented separately as 'google_scholar_author_citation'. The two documentation pages describe the same physical endpoint used in two modes: (1) default/no view_op -> full author profile + article list (this tool), and (2) view_op=view_citation + citation_id -> single citation detail with h-index/i10-index/citation graph (see google_scholar_author_citation). Consider merging these into one MCP tool with an optional view_op/citation_id argument, or keep separate tools that both call the same endpoint with different required params. Returns: { author: { name, affiliations, email }, articles: [ { title, citation_id, authors, publication, cited_by: { value }, year } ] } |
| google_scholar_author_citationA | Retrieves citation metrics (h-index, i10-index, yearly citation graph) and individual article citation detail for a Google Scholar author, using view_op=view_citation on the author endpoint. [Credits: Not explicitly stated on this documentation page.] Notes: SAME endpoint URL as google_scholar_author (https://api.scrapingdog.com/google_scholar/author) - see ambiguity note on that tool. citation_id format observed as ':' (e.g. LSsXyncAAAAJ:2osOgNQ5qMEC). Returns: { cited_by: { table: [ { citations: { all, since_2019 } }, { h_index: { all, since_2019 } }, { i10_index: { all, since_2019 } } ], graph: [ { year, citations } ] } } |
| google_scholar_citeA | Retrieves formatted academic citations (MLA, APA, Chicago, Harvard, Vancouver) plus export links (BibTeX, EndNote, RefMan, RefWorks) for a paper, using its Google Scholar organic result ID. [Credits: Not explicitly stated on this documentation page.] Notes: The 'query' parameter here is actually a result ID (e.g. FDc6HiktlqEJ), not free text - it is the id field returned by scholar_results items from the google_scholar endpoint. Returns: { citations: [ { title (format name: MLA/APA/Chicago/Harvard/Vancouver), snippet } ], links: [ { name (BibTeX/EndNote/RefMan/RefWorks), link } ] } |
| google_patentsA | Searches patent records across Google Patents with advanced filtering by inventor, assignee, date range, country, language, status, type, and litigation status. [Credits: 5 API credits per request] Notes: Pagination uses page (0-indexed) plus num for page size. patent_id values returned (e.g. patent/US7520532B2/en) are the format needed - note this differs slightly from the plain publication_number format (e.g. US7520532B2) expected by google_patent_details' patent_id parameter; strip the 'patent/' prefix and '/en' suffix when passing to google_patent_details. Returns: { organic_results: [ { position, patent_id, title, priority_date, filing_date, grant_date, inventor, assignee, publication_number } ] } |
| google_patent_detailsA | Retrieves detailed information about a specific patent, including title, PDF link, inventors, assignees, filing/priority/publication dates, and prior-art keywords. [Credits: 5 API credits per request] Notes: patent_id format is the plain publication_number (e.g. US11734097B1), not the 'patent/US.../en' path format returned by the google_patents search endpoint's organic_results.patent_id field. Returns: { title, type, pdf, publication_number, country, prior_art_keywords: [string], prior_art_date, application_number, inventors: [ { name, link, scrapingdog_link } ], assignees: [string], priority_date, filing_date, publication_date, worldwide_applications: {} } |
| google_searchA | Scrapes Google Search results (organic results, ads, AI overview, knowledge graph, local results, and every other SERP feature) for a given query, without needing to manage proxies or parsing. [Credits: 5 (standard search). 10 credits when advance_search=true OR mob_search=true.] Notes: Pagination: the 'page' request parameter is documented as 0-based sequential (0 = page 1, 1 = page 2, ...), but the response's scrapingdog_pagination.page_no map (see pagination doc) shows page values incrementing by 10 per page (page=10 for page 2, page=20 for page 3) — mirroring Google's native 'start' offset. Follow the URLs Scrapingdog returns in response.pagination.page_no / response.scrapingdog_pagination.page_no to fetch subsequent pages rather than hand-computing the page value. advance_search=true unlocks richer/advanced feature snippets (more SERP blocks populated) and doubles credit cost to 10; mob_search=true returns mobile-rendered results and also costs 10 credits; both can presumably be combined. location and uule are mutually exclusive (both control geo-targeting of the search origin). kgmid and si can override most other params (except page/results) to target Knowledge Graph entities/tabs directly. Response shape is dynamic: only the SERP feature blocks actually present on the rendered Google page for that query appear in the JSON (e.g. no ads block if Google didn't show ads). Returns: Top-level JSON containing whichever of the following blocks Google rendered for the query: search_information {time_taken, total_results, query_displayed, organic_results_state, url} — search metadata; organic_results[] {title, link, displayed_link, source, snippet, highlighted_keywords[], extended_sitelinks[]{title,link,snippet}, rank} — standard web listings; ai_overview {text_blocks[... |
| google_shoppingA | Scrapes Google Shopping search results including ads, shopping listings, and available price/filter facets. Each successful request costs 10 credits. [Credits: 10 credits per successful request] Notes: Pagination via |
| google_immersive_productA | Scrapes Google's immersive product popup view for a specific product, returning brand info, price range, and per-store listings with ratings and reviews. [Credits: Not specified in documentation] Notes: Seller pagination is manual: enable |
| google_imagesA | Retrieves Google Images search results including titles, thumbnails, source links, and original image dimensions. Each successful request costs 10 API credits. [Credits: 10 API credits per successful request] Notes: Time filtering: use either period_unit+period_value OR start_date/end_date, not both together with tbs's own date components (each overrides the corresponding tbs component). |
| google_videosA | Retrieves Google video search results with geographic localization, language preferences, and advanced filtering. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: Pagination via |
| google_shortsA | Retrieves Google Shorts (short video) search results with thumbnails, GIF previews, account names, and publication dates. [Credits: Not specified in documentation] Notes: Pagination is offset-based via |
| google_autocompleteB | Returns Google Search autocomplete suggestions for a query, based on geographic location and language, including relevance scores. [Credits: Not specified in documentation] Notes: No pagination parameters documented. Returns: { suggestions: [{value, relevance, type}] } |
| google_financeA | Retrieves Google Finance market data including stock price, price movement, and related market/news instruments across multiple markets and asset classes. [Credits: Not specified in documentation] Notes: The |
| google_lensA | Reverse image search via Google Lens, supporting product results, visual matches, and exact matches for a given image URL. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: Documented parameter type for product/visual_matches/exact_matches is String but values are boolean-like ('true'/'false'). Returns: { lens_results: [{position, title, source, link, thumbnail}] } |
| google_jobsA | Retrieves Google Jobs search results including job titles, company names, locations, salary/extensions, and apply links. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: Pagination uses |
| google_localA | Retrieves Google Local business listings including ratings, reviews, addresses, GPS coordinates, and business type. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: |
| google_hotelsA | Retrieves Google Hotels search results including property listings, pricing, ratings, amenities, and detailed property info (via property_token). Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: check_in_date/check_out_date use YYYY-MM-DD. Several hotel-only filters (brands, hotel_class, free_cancellation, special_offers, eco_certified) are not supported when vacation_rentals=true; conversely bedrooms/bathrooms only apply when vacation_rentals=true. Pagination via next_page_token; use property_token for a detail lookup on a single property. Returns: { ads: [{title, source, price, reviews, overall_rating, amenities: [], hotel_class, free_cancellation}] } (sample truncated in docs; likely also includes a properties/hotels results array alongside ads) |
| google_flightsA | Retrieves Google Flights results for one-way, round-trip, and multi-city searches, with sorting/filtering and booking token support. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: Two-step flow for full itineraries: first request returns flights plus a |
| google_ads_transparencyA | Pulls ad data from the Google Ads Transparency Center, looked up by advertiser ID or keyword/domain, filterable by platform, region, date range, and creative format. Costs 5 API credits per request. [Credits: 5 API credits per request] Notes: Provide either |
| linkedin_person_profileA | Scrape publicly available LinkedIn person profiles by their profile ID (the slug from the profile URL). Returns full profile data such as experience, education, and about sections. [Credits: 50-100 credits per successful request] Notes: id is the LinkedIn profile slug (public identifier), not a numeric ID. type=profile is required to differentiate this from the company/school profile mode on the same endpoint. Using premium=true (private/hard-to-reach profiles) increases the credit cost toward the top of the 50-100 credit range. webhook=true trades immediate response for a delayed (2-3 min) but higher success-rate scrape. Returns: No example response is published in the Scrapingdog documentation for this endpoint. Based on the documented purpose (full LinkedIn person profile data), the JSON response is expected to be an object containing profile fields such as name/fullName, headline, location, about/summary, current position/company, experience (array), education (array), skills, and possibly profile/cover images -- exact field names are not confirmed by the docs. |
| linkedin_company_profileA | Scrape publicly available LinkedIn company (or school) profiles by their company/school ID. Uses the same endpoint as the person profile scraper, differentiated via the type parameter. [Credits: 10 credits per successful request] Notes: Shares the /profile endpoint with the Person Profile Scraper; the type value ('company' or 'school') determines which entity is scraped. No premium/webhook params are documented for this variant. Returns: No example response is published in the Scrapingdog documentation for this endpoint. Expected to be an object with company/school profile fields such as name, description/about, industry, website, headquarters/location, company size, specialties, and follower count -- exact field names are not confirmed by the docs. |
| linkedin_postA | Scrape publicly available LinkedIn posts by their post ID, returning the post's content and engagement data. [Credits: 5 credits per successful request] Notes: id is the numeric LinkedIn post/activity ID extracted from the post's share URL. Returns: No example response is published in the Scrapingdog documentation for this endpoint. Expected to be an object with post fields such as author info, post text/content, posted date, and engagement metrics (likes, comments, shares) -- exact field names are not confirmed by the docs. |
| linkedin_jobs_searchA | Search and scrape LinkedIn job listings by keyword, location, job type, experience level, and work model. [Credits: 5 credits per successful request] Notes: Shares the /jobs endpoint with the Job Overview API; presence of 'field' (without job_id) triggers search mode. geoid defaults to a global search (92000000); location is a separate free-text alternative/supplement to geoid. Pagination is via the page parameter (values > 0). Returns: No example response is published in the Scrapingdog documentation for this endpoint. Expected to be an array/object of job listing results with fields such as job title, company name, location, job URL/ID, posting date, and possibly a total results count -- exact field names are not confirmed by the docs. |
| linkedin_job_overviewA | Retrieve detailed information about a specific LinkedIn job posting using its job ID, such as full description, requirements, and company details. [Credits: 5 credits per successful request] Notes: Shares the /jobs endpoint with the Jobs Search API; presence of job_id (instead of field) triggers job-overview (detail) mode. job_id is typically obtained from a prior linkedin_jobs_search call or from a LinkedIn job posting URL. Returns: No example response is published in the Scrapingdog documentation for this endpoint. Expected to be an object with detailed job fields such as title, company, location, full description, employment type, experience level, applicant count, and posting date -- exact field names are not confirmed by the docs. |
| yelp_scraperA | Extract business listings from Yelp by keyword and location, with support for category filters, sorting, attribute filters, and pagination. [Credits: 4 credits per successful request] Notes: Pagination uses the 'start' offset param in increments of 10 (matches Yelp's own pagination scheme); response includes a pagination.next URL. yelp_domain allows targeting international Yelp TLDs. Returns: Object with: filters { category[]: {text,value}, price[]: {text,value}, distance[]: {text,value} }, inline_ads[], sponsored_ads[]: {title,url,rating,review_count,price,categories[],neighborhood}, organic_results[]: {title,url,rating,review_count,price,categories[],neighborhood,thumbnail}, pagination: {next}. |
| indeed_scraperA | Extract job listings from any Indeed search results URL, returning structured JSON with job titles, companies, locations, descriptions, and salaries. [Credits: 1 credit per successful request] Notes: Input is a complete Indeed search-results URL rather than discrete keyword/location params; build it via Indeed's own search UI/filters first. The last array element in the response is a summary object with totalJobs and the searched jobTitle rather than an individual listing. Returns: Array of job objects: {jobTitle, jobLink, companyName, companyLocation, jobDescription, Salary, jobMetaData[] (e.g. 'Full-time','8 hour shift'), jobPosting (relative date string)}, plus a trailing summary object {totalJobs, jobTitle}. |
| zillow_scraperA | Extract real estate listings from any Zillow search page in real time, returning structured property data. [Credits: 2 credits per successful request] Notes: Input is a complete Zillow search-results URL rather than discrete keyword/location params; build it via Zillow's own search UI/filters first (e.g., for_sale, for_rent, sold pages). Returns: Object: { zillow_listings[]: {zpid, id, rawHomeStatusCd, marketingStatusSimplifiedCd, imgSrc, hasImage, detailUrl, statusType, statusText, countryCurrency, price, unformattedPrice, address, addressStreet, addressCity, addressState, addressZipcode, isUndisclosedAddress, beds, baths, latLong:{latitude,longitude}, zestimate, rentZestimate} }. |
| x_profileA | Scrapes comprehensive profile data for any X (Twitter) user, including follower counts, engagement metrics, bio, profile picture, and account metadata. [Credits: 5 API credits per successful request] Notes: profileId accepts a plain handle/username (no @ shown in examples), e.g. elonmusk. Returns: { id, rest_id, name, handle, url, description, location, profile_picture, followers_count, following_count, likes_count, statuses_count, media_count, listed_count, is_blue_verified, verified, pinned_tweet_ids[], translator_type, labels[] } |
| x_postA | Extracts detailed data for any X (Twitter) post, including engagement metrics (views, retweets, quotes, likes, bookmarks), full post content, timestamp, and complete author profile information. [Credits: 5 API credits per successful request] Notes: tweetId is the numeric status ID segment from the tweet permalink. Returns: { tweet_id, post_url, tweet, created_at, views, retweets, quotes, likes, bookmarks, profile_name, profile_handle, profile_url, profile_picture, description, location, followers_count, following_count, likes_count, statuses_count, is_blue_verified } |
| tiktok_adsA | Searches and extracts ad listings from TikTok's Ad Library by keyword or advertiser ID, with filtering by country, date range, and sort order. [Credits: 5 API credits per successful request] Notes: query_type=1 (default) pairs with |
| tiktok_profileA | Scrapes comprehensive profile data for any TikTok user including follower counts, engagement metrics, bio, avatar URLs, and account metadata. [Credits: 5 API credits per successful request] Notes: username is the TikTok handle without the @ symbol. Returns: { id, username, nickname, sec_uid, bio, profile_url, verified, private_account, followers, following, likes, video_count, region, language, avatar, avatar_medium, avatar_large, created_at, is_commerce_account, commerce_category, is_organization, duet_setting, stitch_setting, comment_setting, download_setting } |
| tiktok_postA | Extracts detailed data for any TikTok post including play counts, likes, comments, shares, video quality details, music info, and full author stats. [Credits: 5 API credits per successful request] Notes: Identify the post either via the (username + post_id) pair or via the single |
| youtube_searchA | Scrapes YouTube search results for any query, returning structured video/channel/shorts data including titles, links, channel info, view counts, durations, thumbnails, and pagination tokens. [Credits: 5 API credits per successful request] Notes: Shares the single /youtube endpoint with all other YouTube tools; presence of |
| youtube_transcriptsA | Extracts the complete transcript (captions) from any YouTube video as an array of text segments with start time and duration. [Credits: 1 API credit per successful request] Notes: Shares the single /youtube endpoint with all other YouTube tools; presence of |
| youtube_channelA | Scrapes comprehensive YouTube channel data including about info, subscriber counts, video sections, and YouTube Shorts. [Credits: 5 API credits per successful request] Notes: Shares the single /youtube endpoint with all other YouTube tools; presence of |
| youtube_commentsA | Scrapes comments from any YouTube video, returning comment text, likes, reply counts, author details, and pagination tokens for fetching additional pages. [Credits: 5 API credits per successful request] Notes: Shares the single /youtube endpoint with all other YouTube tools; combination of |
| youtube_videoA | Scrapes detailed metadata for any YouTube video including title, views, likes, description, keywords, channel info, key moments, and chapters. [Credits: 5 API credits per successful request] Notes: Shares the single /youtube endpoint with all other YouTube tools; uses |
| scrapeA | Scrapes any public webpage. Pass your API key and target URL; Scrapingdog handles rotating proxies, CAPTCHA bypass, and optional JavaScript rendering automatically. Returns the raw HTML of the target page. [Credits: 1 credit (dynamic=false, no premium). 5 credits with JS rendering (dynamic=true, the default). 10 credits with premium=true (residential proxies). 25 credits when premium=true and dynamic=true are combined. 10 credits when stealth_mode=true.] Notes: All feature parameters above (dynamic, premium, country, session_number, stealth_mode, custom_headers, wait) are documented on separate sub-pages of the Web Scraping API doc but apply to this single GET /scrape endpoint — they are not separate tools/endpoints. Custom headers: attach real HTTP headers to your request to Scrapingdog (not as a query param value) and also set custom_headers=true; Scrapingdog relays them to the target site. Geotargeting (country) combines with premium for non-US residential exit nodes. Sessions (session_number) keep the same proxy IP for up to 60s of inactivity, useful for multi-step flows (e.g. login then scrape). Stealth Mode (stealth_mode=true) is the CAPTCHA/Cloudflare-bypass mechanism — there is no separate 'captcha' parameter documented. No markdown-output parameter or ai_query parameter was found documented on any of the fetched pages for this endpoint (unlike some other Scrapingdog APIs) — response is raw HTML only. Returns: Raw HTML of the target page (Content-Type text/html), returned as the response body exactly as fetched/rendered by Scrapingdog's proxy/browser infrastructure. |
| scrape_postA | Sends a POST request (with custom headers and/or form/body data) through Scrapingdog to an external URL or form, e.g. for submitting forms or hitting POST-only APIs/endpoints while still benefiting from Scrapingdog's proxy and rendering infrastructure. Returns the target site's response body. [Credits: Same credit structure as the GET /scrape endpoint (1 base credit; more if dynamic/premium/stealth_mode are combined) — the docs do not state a different cost for POST specifically.] Notes: Mechanics: api_key and url stay as query-string parameters on the https://api.scrapingdog.com/scrape endpoint exactly like the GET variant; only the HTTP method changes to POST and the request body you send is what gets relayed as the POST body to the target url. Documented example uses application/x-www-form-urlencoded body (foo=bar) via curl -d / requests.post(data=...) / axios.post(body, ...). Custom headers can be combined with this (see custom_headers feature) for authenticated POST submissions. All other /scrape query parameters (dynamic, premium, country, session_number, stealth_mode, custom_headers, wait) are presumably still available since it is the same endpoint, though the POST-specific doc page only demonstrates api_key + url + body. Returns: The target site's raw response body (typically HTML) as returned after Scrapingdog submits the POST request on your behalf. |
| screenshotA | Captures a screenshot of any webpage. Control viewport size, output image format/quality, full-page vs. viewport-only capture, and when the browser considers the page 'loaded' before capturing. Returns binary image data. [Credits: 5 credits per successful request.] Notes: Distinct endpoint from /scrape (https://api.scrapingdog.com/screenshot). This is the only one of the fetched pages that ships a full, structured 'API Parameters' reference table in the docs (Scrapingdog Parameters / Query Parameters / Full Page / Viewport / Wait Until / Format sections) — all other /scrape sub-pages only describe their one feature parameter in prose plus a code example. No explicit country/proxy/session parameters are documented for the screenshot endpoint itself. Returns: Binary image data in the requested format (default PNG; Content-Type image/png, image/jpeg, or image/webp). Typically saved directly to a file (e.g. screenshot.png) rather than parsed as text. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- 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/alessandrobenigni/ScrapingDog-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server