Skip to main content
Glama

🐢 ScrapingDog MCP Server

The complete Model Context Protocol server for ScrapingDog β€” all 77 API endpoints as AI-ready tools.

Give Claude (or any MCP client) the power to scrape any webpage, search Google, pull Amazon product data, read LinkedIn profiles, fetch YouTube transcripts, track Google Trends, and much more β€” through one API key.

MIT License Node >= 18 MCP

Built by extracting the entire official documentation (~90 pages at scrapingdog.com/documentation) into machine-readable specs, then verifying endpoints against the live API β€” including fixing endpoints the official docs get wrong (see Deviations).


⚑ Quick start

1. Get an API key β€” free 200-credit trial, no credit card: api.scrapingdog.com/register

2. Install (pick your client):

claude mcp add --scope user scrapingdog -e SCRAPINGDOG_API_KEY=YOUR_KEY -- npx -y github:alessandrobenigni/ScrapingDog-MCP

Claude Desktop

Add to claude_desktop_config.json (Settings β†’ Developer β†’ Edit Config):

{
  "mcpServers": {
    "scrapingdog": {
      "command": "npx",
      "args": ["-y", "github:alessandrobenigni/ScrapingDog-MCP"],
      "env": { "SCRAPINGDOG_API_KEY": "YOUR_KEY" }
    }
  }
}

Cursor / Windsurf / any MCP client

Same JSON shape as above in the client's MCP config (.cursor/mcp.json, ~/.codeium/windsurf/mcp_config.json, …).

From a local clone (fastest startup, easiest to hack on)

git clone https://github.com/alessandrobenigni/ScrapingDog-MCP.git
cd ScrapingDog-MCP
npm install
claude mcp add --scope user scrapingdog -e SCRAPINGDOG_API_KEY=YOUR_KEY -- node "$(pwd)/src/index.js"

3. Use it β€” just ask your AI naturally:

"Search Google for 'best espresso machine 2026' and summarize the top results" "Scrape this product page and extract the price" "Get the transcript of this YouTube video" "What's trending on Google Trends for 'AI agents' in the US this year?" "Pull the LinkedIn company profile for Anthropic" "How many ScrapingDog credits do I have left?" (β†’ account tool)

That's it. No proxy management, no CAPTCHAs, no blocked requests.


Related MCP server: crawl4ai-mcp-server

🧰 The 77 tools

Every tool maps 1:1 to a ScrapingDog endpoint, with every documented parameter typed and described. Credit costs are per successful request and are shown in each tool's description.

🌐 Web Scraping

Tool

What it does

Credits

scrape

Scrape any URL β†’ raw HTML. JS rendering (dynamic), premium residential proxies (premium), geotargeting (country), sticky sessions (session_number), Cloudflare/CAPTCHA bypass (stealth_mode), custom header forwarding

1–25

scrape_post

Forward a POST body (forms, POST-only APIs) through the proxy layer

1+

screenshot

Screenshot any page (viewport or full-page, png/jpg/webp) β†’ returned as an actual image

5

πŸ” Google Search & AI

Tool

What it does

Credits

google_search

Full SERP as JSON: organic results, ads, AI Overviews, knowledge graph, local pack, top stories, related questions/searches, inline images/videos/shopping, discussions, immersive products, pagination

5

google_ai_mode

Google's AI Mode answers

10

google_ai_overview

Standalone AI Overview extraction

5

google_autocomplete

Query suggestions

β€”

google_lens

Visual search by image URL

β€”

Tool

What it does

google_maps_search / google_maps_places / google_maps_reviews / google_maps_photos / google_maps_posts

Complete Maps data: place search, place details, paginated reviews, photos, business posts

google_trends / google_trends_autocomplete / google_trends_trending_now

Interest over time, entity lookup, real-time trending topics

google_news_search / google_news_v2

News SERP + the newer topic-token News API

πŸŽ“ Google Scholar & Patents

google_scholar Β· google_scholar_profiles Β· google_scholar_author Β· google_scholar_author_citation Β· google_scholar_cite Β· google_patents Β· google_patent_details

Tip: google_patents returns patent_id as patent/US11734097B1/en; pass just the publication number (US11734097B1) to google_patent_details.

πŸ›οΈ Google Shopping & verticals

google_shopping Β· google_immersive_product Β· google_images Β· google_videos Β· google_shorts Β· google_finance Β· google_jobs Β· google_local Β· google_hotels Β· google_flights Β· google_ads_transparency

Multi-step flows are documented in the tool descriptions β€” e.g. Flights chains departure_token β†’ booking_token; Shopping filters chain via shoprs.

πŸ”Ž Other search engines

bing_search Β· bing_shopping Β· duckduckgo_search Β· baidu_search Β· universal_search (20 credits, engine-agnostic)

πŸ“¦ Amazon

Tool

Credits

amazon_product (by ASIN)

1 (US) / 5 (other countries)

amazon_search

1 (US) / 5 (other) / +25 premium

amazon_reviews Β· amazon_offers Β· amazon_autocomplete

5 / 5 / β€”

πŸ›’ Walmart, eBay, Flipkart, Myntra

walmart_product Β· walmart_search Β· walmart_reviews Β· walmart_autocomplete Β· ebay_search Β· ebay_product Β· flipkart_search Β· flipkart_product Β· myntra_search Β· myntra_product

Walmart/eBay/Flipkart/Myntra tools take the full target-site URL (locale lives in the domain, e.g. ebay.co.uk).

πŸ’Ό LinkedIn, Jobs & Local

Tool

What it does

Credits

linkedin_person_profile

Full person profile by public ID

50–100

linkedin_company_profile

Company/school profile

10

linkedin_post

Post data

5

linkedin_jobs_search / linkedin_job_overview

Job search + job details

5

yelp_scraper / indeed_scraper / zillow_scraper

Local businesses, job listings, real estate

4 / 1 / 2

πŸ“± Social & Video

x_profile Β· x_post Β· tiktok_profile Β· tiktok_post Β· tiktok_ads Β· youtube_search Β· youtube_video Β· youtube_channel Β· youtube_comments Β· youtube_transcripts (only 1 credit!)

πŸ€– AI & Utilities

Tool

What it does

Credits

chatgpt_scraper

Send a prompt to ChatGPT, get the structured conversation back

30

account

Remaining credits, concurrency, plan info β€” costs nothing, check it anytime

0

webhook

Fire-and-forget async scraping: returns a sid immediately, result POSTs to your dashboard-configured webhook

β€”


πŸ—οΈ How it works

specs/*.json  ──►  src/index.js  ──►  77 MCP tools over stdio
(source of truth)   (generic engine)
  • specs/*.json β€” nine category files holding every endpoint: exact URL, method, credit cost, every documented parameter (name/type/required/default/description), quirks, and response structure. Extracted from the full official docs on 2026-07-10.

  • src/index.js β€” a single ~200-line engine. At startup it loads the specs and registers one tool per endpoint. To fix or extend an API, edit a JSON file β€” zero code changes.

  • docs/*.md β€” distilled human-readable API reference per category (param tables, response shapes, gotchas).

  • test/smoke.js β€” end-to-end test: boots the server over stdio as a real MCP client and makes live API calls.

Built-in robustness

Concern

Handling

Your API key

Injected server-side from SCRAPINGDOG_API_KEY β€” never exposed as a tool parameter, never visible to the model

Rate limits / transient errors

Automatic retry (3 attempts, backoff) on 429 / 5xx

Slow scrapes

90s client timeout (ScrapingDog's own limit is 60s)

Giant HTML pages

Capped at 400k chars with a clear truncation notice

Screenshots

Returned as real MCP image content (base64 png/jpg/webp), not text

API errors

Mapped to actionable hints (401 β†’ bad key, 403 β†’ plan doesn't include this API, 410 β†’ target returned nothing, …)


πŸ§ͺ Verify your install

SCRAPINGDOG_API_KEY=YOUR_KEY npm test          # macOS/Linux
$env:SCRAPINGDOG_API_KEY="YOUR_KEY"; npm test  # Windows PowerShell

Boots the server, lists all 77 tools, and makes 4 live calls (account, google_search, scrape, youtube_transcripts). Uses ~7 credits.


⚠️ Deviations from the official docs

Found and fixed by testing against the live API (2026-07-10):

  1. YouTube endpoints β€” the docs list https://api.scrapingdog.com/youtube for all five YouTube APIs. That URL returns the ScrapingDog web app, not data. The real endpoints (used by this server) are /youtube/search, /youtube/video, /youtube/channel, /youtube/comments, /youtube/transcripts.

  2. youtube_video parameter β€” docs say video_id; the live API rejects it and requires v.

  3. Datacenter proxy mode (http://scrapingdog:APIKEY@proxy.scrapingdog.com:8081) is a passthrough HTTP proxy, not a REST endpoint β€” documented in docs/engines-utilities.md but intentionally not exposed as a tool.

  4. Where the docs omit a credit cost or response sample (a handful of endpoints), the tool description says so explicitly rather than guessing.


πŸ’³ Credits, limits & error codes

  • Free plan: 200 credits/month. Every tool description states its cost; account is free and shows your balance.

  • Cost-saving tip: scrape defaults to JS rendering (5 credits). Pass dynamic: false for static pages β†’ 1 credit.

  • Requests time out server-side after 60 seconds; concurrency is limited per plan tier (excess β†’ 429, which this server retries automatically).

Code

Meaning

200

Success

202

Accepted, queued

400

Bad request β€” check parameters

401

Invalid or missing API key

403

Your plan doesn't include this API

404

Resource not found

410

Target URL returned no content

429

Rate limit β€” auto-retried


πŸ”§ Troubleshooting

Symptom

Fix

Server exits immediately: SCRAPINGDOG_API_KEY ... not set

Pass the key via -e (Claude Code) or the env block (JSON configs)

401 Unauthorized on every call

Key is wrong/expired β€” check your dashboard

403 Forbidden on one specific tool

That API isn't in your plan tier

npx install is slow on first launch

It's cloning + installing once; subsequent launches use the cache. Or use the local-clone install

Tool returns truncated HTML

Expected on huge pages (400k-char cap) β€” scrape a more specific URL or use a structured tool instead of raw scrape

Windows: server won't start from a path with spaces

Quote the path in your config: "args": ["C:\\path with spaces\\src\\index.js"]


πŸ—ΊοΈ Repo map

β”œβ”€β”€ src/index.js        # the server (spec-driven engine)
β”œβ”€β”€ specs/              # machine-readable endpoint specs β€” the source of truth
β”‚   β”œβ”€β”€ web-scraping.json
β”‚   β”œβ”€β”€ google-search.json
β”‚   β”œβ”€β”€ google-ai-maps-trends.json
β”‚   β”œβ”€β”€ google-news-scholar-patents.json
β”‚   β”œβ”€β”€ google-shopping-other.json
β”‚   β”œβ”€β”€ engines-utilities.json
β”‚   β”œβ”€β”€ amazon-walmart.json
β”‚   β”œβ”€β”€ ecommerce.json
β”‚   β”œβ”€β”€ profiles-jobs-local.json
β”‚   └── social-youtube.json
β”œβ”€β”€ docs/               # human-readable API reference per category
β”œβ”€β”€ test/smoke.js       # live end-to-end test
└── .env.example

🀝 Contributing

ScrapingDog ships new APIs regularly. Adding one is trivial:

  1. Add an endpoint object to the matching specs/*.json (or a new spec file) β€” tool_name, endpoint, params, credits, description, response_summary.

  2. Restart the server. The tool exists.

  3. Run npm test, open a PR.

πŸ“„ License

MIT Β© Alessandro Benigni

Not affiliated with ScrapingDog β€” an independent MCP integration. ScrapingDog is a product of its respective owners. Use responsibly and in accordance with the terms of service of the sites you scrape.

Available Tools

77 tools
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 }.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full disclosure burden. It transparently notes that response field names are inconsistent between sample and code examples, and captures both in 'response_summary'. Also clarifies that credits are not applicable. This reveals important behavioral quirks beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is verbose and not front-loaded. It starts with purpose but then dives into detailed notes about documentation inconsistencies, which could be summarized more briefly. Every sentence does not earn its place; extraneous details clutter the message.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately details return fields (though inconsistently). For a simple status-check tool with zero parameters, it covers essential aspects, but the lengthy digression on documentation conflicts may confuse rather than clarify.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so the baseline is 4. The description does not need to add parameter details. It instead provides useful information about the response structure, adding value beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool monitors Scrapingdog account usage, specifically remaining API credits and active concurrent connections. This verb+resource combination is unique among sibling tools (primarily scrapers), leaving no ambiguity about its purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives. However, among siblings with different scraping functions, the context strongly implies it's for account status checks. Still, lacking when-not or alternative recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
midNoMerchant ID for identifying a specific seller to scope suggestions.
domainNoTLD extension of the Amazon domain. Examples: com, in, de, fr. See Amazon Supported TLDs doc for the full list.
prefixNoThe partial search term that Amazon uses to generate keyword suggestions (e.g. spoon, iph).
suffixNoAssists with search query completion and predictions.
languageNoLanguage code for suggestions (e.g. en, es, fr, de). (default: en)
last_prefixNoIndicates previously typed characters. For example, if the user typed 'i' then 'phone', set last_prefix=i.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses credit cost and clarifies parameter behavior (prefix effectively required), but does not mention read-only nature or rate limits. Overall, it provides useful behavioral context beyond basic purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with purpose. It includes necessary details about credits and return format without unnecessary verbosity. A slight amount of extra text could be trimmed, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there is no output schema, the description explains the return format (flat array of suggestion objects). All parameters are covered both in schema and description, and the effective requirement for prefix is noted. Fairly complete for a tool of this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining that prefix is effectively required, describing the return format, and providing context for parameters like last_prefix and suffix. This goes beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves keyword suggestions from Amazon's autocomplete feature based on partial search terms. It uses specific verbs and resources, and is distinct from sibling tools like amazon_search and google_autocomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it's useful for keyword research and search-driven features, and notes that prefix is effectively required. It implies when to use but does not explicitly state when not to use or name alternatives, though context from sibling tools makes it clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYesThe Amazon Standard Identification Number (ASIN) of the product whose offers you want to retrieve. Example: B0BZXDFGSJ.
domainYesThe Amazon domain to scrape. Pass the TLD only β€” e.g. com, co.uk, de, co.jp. See Amazon Supported TLDs doc for the full list.
countryYesISO country code for targeting a particular country. Affects price, delivery estimates, and offer availability. See Amazon Supported Countries doc for the full list. (default: us)
postal_codeNoZIP / postal code for hyper-local delivery filtering. When set, the API returns shipping dates and fees specific to that location.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description carries full burden. Discloses no pagination and returns all active offers, also provides return structure. However, lacks disclosure of whether tool is read-only, auth needs, rate limits, or other behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is relatively concise, front-loading purpose. Includes helpful notes on credits and pagination with return structure example. A few extra details could be trimmed but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given absence of output schema, description compensates by providing detailed return structure. Covers key aspects like no pagination and credit note. Adequate for a single-resource tool with 4 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline 3. Description does not add much beyond schema for parameters; it mentions 'for a given ASIN' but schema already describes asin. No additional semantic enrichment for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Retrieves detailed offer data for a given ASIN' combined with resource 'ASIN' and includes key aspects like pricing, availability, seller details, delivery. Clearly distinguishes from sibling tools like amazon_product (product details) and amazon_reviews (reviews).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage when needing offer data for a specific ASIN, mentions no pagination and returns all active offers, but does not explicitly state when to use vs alternatives or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYesAmazon product ID (ASIN), found in the product URL (e.g. B00AP877FS).
domainYesTLD extension of the Amazon domain to scrape. Examples: com, in, de, fr, co.uk. See Amazon Supported TLDs doc for the full list.
countryYesISO country code for targeting a specific Amazon marketplace. Costs 5 credits per request except USA which costs 1 credit. See Amazon Supported Countries doc for the full list. (default: us)
languageNoStandard ISO 639-1 language code (e.g. en, de, fr) to specify the language for product data.
postal_codeNoTo get data from a particular postal code.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses credit costs (1 vs 5 credits), explains domain/country independence, notes no pagination, and outlines return fields. Missing details like error handling or rate limits but adequate for a read tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a main purpose sentence, then notes on credits and domain/country, and a return structure summary. It is informative without being overly verbose, though slightly long due to the return format details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, no annotations, and no output schema, the description provides significant context: return structure (partial), credit costs, domain/country semantics, and no pagination. It could be more complete with error handling but covers the essentials for a product lookup.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline is 3. The description adds value by explaining the domain/country interaction and credit cost implications, which go beyond the schema descriptions. This extra context justifies a score of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves comprehensive product data from any Amazon product page using its ASIN. This specific verb+resource+identifier distinguishes it from sibling tools like amazon_offers, amazon_reviews, and amazon_search which focus on specific subsets of data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use this tool (single product lookup) and explains the relationship between domain and country parameters. However, it does not explicitly contrast with sibling tools or state when not to use it, leaving room for improvement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoAlternative to passing asin, domain, and page separately β€” pass the full Amazon reviews URL directly.
asinYesAmazon product ID (ASIN) of the product whose reviews you want to scrape.
pageYesThe page number of reviews to retrieve. Starts at 1.
domainYesTLD extension of the Amazon domain. Examples: com, in, de, fr. See Amazon Supported TLDs doc for the full list.
sort_byNoSort order for reviews. Values: helpful (default), recent. (default: helpful)
media_typeNoFilter by media type. Values: all_contents (default), media_reviews_only. (default: all_contents)
format_typeNoFilter by format. Values: all_formats (default), current_format. (default: all_formats)
reviewer_typeNoFilter by reviewer type. Values: all_reviews (default), avp_only_reviews (verified purchases only). (default: all_reviews)
filter_by_starNoFilter reviews by star rating. Values: all_stars (default), five_star, four_star, three_star, two_star, one_star, positive, critical. (default: all_stars)

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description takes responsibility for behavioral disclosure. It mentions credit cost (5 API credits per request), pagination, concurrency recommendation, and return format. Missing details on error handling or input validation, but overall adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficient: 4-5 sentences, front-loaded with purpose, followed by important notes. No redundant or irrelevant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 9 parameters and no output schema, the description provides a return format example, which adds completeness. It covers key aspects like pagination, concurrency, and input alternatives but lacks details on potential errors or limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the description adds minimal value beyond what is in the schema. It groups parameters (asin+domain+page) and notes the url shortcut, but does not elaborate on each parameter's meaning. Baseline score is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it scrapes customer reviews from Amazon product pages, with explicit filtering options. It distinguishes itself from sibling tools that target other platforms (e.g., google_maps_reviews, walmart_reviews) by specifying Amazon.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage guidance: pagination via page parameter (starts at 1), single concurrency recommendation, and alternative ways to provide input (asin+domain+page vs url). However, it does not explicitly differentiate from other review scraping tools or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoCountry from which search results are returned, using 2-character ISO 3166-1 format (e.g., 'us', 'de', 'gb').
mktNoMarket from which results are returned, formatted as <language code>-<country code> (e.g., en-US), case-insensitive. See Bing Market Codes reference. Cannot be used together with cc.
queryYesThe search query. Any term normally used in a Bing Shopping search.
efirstNoControls the offset of the shopping results. For example, efirst=10 starts the results from the 10th shopping result.
filtersNoAdvanced filters such as date range filters (e.g., ex1:"ez5_18169_18230") or specific display filters (e.g., ufn:, sid:, catguid:, segment:, entitysegment:). Create exact filter values by running a Bing search and copying the filters query parameter from the URL.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the transparency burden. It reveals the credit cost, mutual exclusivity constraint, and return structure (JSON snippet). It does not mention idempotency or side effects, but as a read tool, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence plus a note on credits and mutual exclusivity, plus a return snippet. It is fairly concise, though the return snippet could be more structured. No fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, the description provides a return structure example. It covers credit usage and mutual exclusivity. It omits rate limits and error handling, but for a search tool, this is reasonably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are documented there. The description adds minor value: notes mutual exclusivity (not in schema) and efirst offset behavior. Most parameter meaning is already in schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Retrieves shopping results from Bing', specifying the resource and action. It lists features like market targeting, pagination, and filters, distinguishing it from sibling shopping tools (e.g., google_shopping, walmart_search).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions mutual exclusivity of mkt/cc, pagination via efirst, and filters, providing clear usage context. However, it lacks explicit guidance on when to choose this tool over alternatives like google_shopping or ebay_search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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[] } ] } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoSet to true to return the full HTML of the ChatGPT page instead of parsed JSON. (default: false)
promptYesThe prompt to send to ChatGPT (e.g., 'What is web scraping?'). The API returns the full conversation with user and assistant roles in structured JSON.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that no browser automation is required, the credit cost, and details of the return format (structured content blocks). However, it does not mention potential rate limits, error handling, or any required authentication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with no wasted words. It is front-loaded with the core action, then provides key details (credits, return format) in a clear, well-structured manner.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no output schema, the description adequately explains the return value. It covers credits and behavioral notes. It is mostly complete for a simple 2-parameter tool, though it could mention error scenarios or timeouts.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by explaining the return format and that the prompt is the input, providing context beyond the schema descriptions. It clarifies the structure of the response, aiding interpretation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool sends a prompt to ChatGPT and returns a structured JSON conversation. The verb 'sends' and resource 'ChatGPT' are specific, and the description distinguishes from sibling tools that cover other platforms.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when you want a ChatGPT conversation, but does not explicitly state when to use this tool vs alternatives, nor does it mention when not to use it. The sibling context helps, but the description itself lacks guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } } }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the eBay product listing page to scrape (e.g., https://www.ebay.co.uk/itm/305209925234).
htmlNoReturn the full HTML of the eBay page instead of parsed JSON. (default: false)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses the output format (parsed JSON or HTML), mentions credit cost, and describes the return structure in detail. However, it omits potential error states or rate limiting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and includes important notes. It is moderately concise; the return schema section is lengthy but useful. Minor redundancy (credits noted twice). Still efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a detailed return structure. Parameters are fully described. It covers credits and URL structure. Missing guidance on error handling or edge cases, but adequate for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the URL structure (product identity embedded) but largely restates schema descriptions for the html parameter. Infomation adds minimal extra meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scrapes an eBay product listing page by URL to retrieve specific fields. It uses a specific verb ('scrape') and resource ('eBay product listing page'), and is easily distinguishable from siblings like ebay_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for scraping known product pages but does not explicitly state when to use this vs alternatives (e.g., ebay_search). It provides a note about URL structure but no when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] } }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the Flipkart product page to scrape (e.g., https://www.flipkart.com/product/p/itm909c8202e1864).
htmlNoReturn the full HTML of the Flipkart page instead of parsed JSON. (default: false)

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description carries full burden. It mentions credit consumption and notes about URL identity, but does not disclose rate limits, error handling, or behavior for invalid URLs. Some transparency but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is relatively concise with organized sections (credits, notes, returns). Could be slightly more concise, but this is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations or output schema, description provides a detailed return structure and credit info. Lacks error behavior and prerequisites, but is largely complete for a scraping tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (both parameters described). Description adds value by explaining credit cost and return format, enhancing understanding beyond the schema. Baseline 3, plus extra context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description explicitly states it scrapes Flipkart product pages via URL and lists the data retrieved (title, brand, pricing, etc.). It clearly distinguishes from sibling tools like flipkart_search (which searches) and other product scrapers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description provides credit cost and notes about URL structure, but does not explicitly state when to use this tool versus alternatives (e.g., flipkart_search for search, or amazon_product for Amazon). No exclusion criteria or context for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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: uule and location are mutually exclusive geo-targeting mechanisms. country further localizes the search alongside location/uule. Returns: JSON with shopping_results (array), inline_images (array), text_blocks (array of typed blocks: paragraph {type, snippet, links[]}, heading {type, text, level}, list {type, items[]}), references (array of {title, link, snippet, source, index}), and local_results (array).

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoIf true, returns the full HTML of the Google page instead of/alongside structured JSON. (default: false)
safeNoAdult content filter. Allowed values: `active` (filter on) or `off` (filter disabled). (default: off)
uuleNoEncoded parameter specifying the geographic location/locale for tailored results (e.g. w+CAIQIFJlbGF5IFN0YXRlcw==). Cannot be used together with `location`.
queryYesThe query you want to search in Google AI Mode.
countryNoTwo-letter country code for the Google search (e.g. us, uk, fr). See Google Country Parameter documentation for full list. (default: us)
locationNoSpecifies the origin location of the search. Cannot be used together with `uule`.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description details the return format including specific fields (shopping_results, inline_images, text_blocks, references, local_results) and notes the credit cost per request. It also explains the mutual exclusivity of geo-targeting parameters. However, it does not mention authentication requirements or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence followed by structured notes on parameter constraints and return format. It is front-loaded with the core purpose and credits. The return format details are extensive but necessary for a tool returning structured data. Could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema and annotations, the description provides a thorough explanation of the return structure and key parameter interactions. It covers credit costs and mutual exclusivity. However, it does not explain what 'AI Mode' entails or how it differs from other Google search tools, which would enhance completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% parameter description coverage, so the baseline is 3. The description adds value by explaining the mutual exclusivity of uule and location, and that country further localizes the search alongside these parameters. This additional context improves understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool searches Google with AI Mode enabled and returns structured results with reference sources and text blocks. It distinctly identifies the action and resource, differentiating from siblings like 'google_search' which likely returns standard search results.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions credit cost and mutual exclusivity of parameters (uule and location), but does not provide explicit guidance on when to use this tool versus alternatives (e.g., standard Google Search or AI Overview). The context of when to prefer AI Mode over other Google tools is implied but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

google_ai_overviewA

Fetches Google AI Overview results using the follow-up url returned inside a Google Search API response, for cases where Google requires a separate request to load the AI Overview content. [Credits: 5 API credits per successful request] Notes: This endpoint is only used when the primary Google Search API response indicates AI Overview content requires a secondary fetch (i.e., it returns a url for it rather than inline content). The url value is single-use and time-limited to 2 minutes from issuance. Returns: JSON with ai_overview object containing text_blocks (array of typed blocks: paragraph {type, snippet, snippet_highlighted_words}, list {type, list: [{snippet}]}) and references (array of {title, link, snippet, source, index}).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe AI Overview fetch URL returned by the Google Search API response's ai_overview field. Expires after 2 minutes.

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses cost, single-use and time-limited nature, and return format. No annotations provided, so description carries full burden. Missing failure modes for expired URLs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences plus concise notes on credits and output. Front-loaded with purpose, minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given single parameter and no output schema, description details when, why, how, cost, limitations, and expected JSON structure. Very complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage with a description. Description adds context about the URL source and expiration, enhancing understanding beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it fetches Google AI Overview using a follow-up URL from Google Search API. Distinguishes from sibling tools like google_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (only when primary response indicates secondary fetch), notes URL is single-use and time-limited (2 minutes), and provides credit cost.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesGoogle Search query. Example: query=pizza
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description discloses key behaviors: returns suggestions with relevance scores, based on country and language, and notes no pagination. However, it lacks explicit mention of read-only nature, rate limits, or error handling. Since no annotations are present, this is acceptable but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but includes filler ('Credits: Not specified in documentation') that adds no value. Could be tightened by removing that line.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description specifies the return format with fields. It covers the core functionality well, though it omits details like field descriptions ('type' unclarified) and possible empty results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers all parameters with descriptions, and the description reinforces their purpose (query, country, language). No additional semantics beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns Google Search autocomplete suggestions for a query, including relevance scores. It differentiates from generic search tools but does not explicitly distinguish from sibling autocomplete tools like google_trends_autocomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like google_search or other autocomplete tools. No prerequisites or exclusions mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 query value must be a Google Finance ticker:exchange pair (e.g. TICKER:EXCHANGE). Returns: { summary: {title, stock, exchange, price, price_movement: {percentage, value, movement}}, market: {: [{stock, name, price, price_movement: {percentage, value, movement}}]} }

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn the response as raw HTML instead of JSON. (default: false)
queryYesThe stock/ticker to search for, in Google Finance format, e.g. NIFTY_50:INDEXNSE.
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides the return structure and input format, disclosing behavioral traits. However, it lacks information on error handling or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and is mostly concise, though the credits line is superfluous and could be removed for better conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and lack of output schema, the description adequately covers input format and return structure, but could be improved by noting error behavior or response format limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by reinforcing the query format and defining the return structure, but does not significantly enhance parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Google Finance market data including stock price, price movement, and related market/news instruments. This distinguishes it from sibling tools like google_search which are more general.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly indicates usage for financial data retrieval and specifies the query format requirement, but does not explicitly contrast with alternatives or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 departure_token per option; re-request with departure_token to get return/next-segment flights, then use a resulting booking_token to fetch booking options (which ignores dates/filters). return_date required only for type=1; return_times only usable for type=1. exclude_airlines/include_airlines are mutually exclusive, as are departure_token/booking_token. Returns: { best_flights: [{flights: [{departure_airport: {id, name, time}, arrival_airport: {id, name, time}, duration, airplane, travel_class, flight_number, airline, legroom}], total_duration, price, type}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
bagsNoNumber of carry-on bags. (default: 0)
htmlNoReturn the full HTML of the Google page. (default: false)
typeNoFlight type. Allowed values: 1 (Round trip, default), 2 (One way), 3 (Multi-city). (default: 1)
stopsNoMaximum number of stops. Allowed values: 0 (Any, default), 1 (Nonstop only), 2 (Up to 1 stop), 3 (Up to 2 stops). (default: 0)
adultsNoNumber of adult passengers. (default: 1)
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
sort_byNoSort order. Allowed values: 1 (Top flights, default), 2 (Price), 3 (Departure time), 4 (Arrival time), 5 (Duration), 6 (Emissions). (default: 1)
childrenNoNumber of child passengers. (default: 0)
currencyNoCurrency for returned prices. (default: USD)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
emissionsNoFilter by emission level. Allowed value: 1 (show only flights with lower emissions).
max_priceNoMaximum ticket price allowed. No limit by default.
arrival_idYesArrival point: 3-letter uppercase airport code or a location kgmid beginning with '/m/'. Multiple points comma-separated.
return_dateNoReturn travel date, format YYYY-MM-DD, e.g. 2026-03-06. Required when type=1 (Round trip).
departure_idYesDeparture point: 3-letter uppercase airport code (e.g. JFK, LHR) or a location kgmid beginning with '/m/' (e.g. /m/02_286 for San Francisco). Multiple points comma-separated.
max_durationNoMaximum total flight duration in minutes, e.g. 960 = up to 16 hours.
return_timesNoPreferred time range for the return flight; each number represents the start of an hour. Only used when type=1 (Round trip).
travel_classNoTravel class. Allowed values: 1 (Economy, default), 2 (Premium economy), 3 (Business), 4 (First class). (default: 1)
booking_tokenNoRetrieves booking options for a selected flight. Cannot be used with departure_token. When used, date-based parameters and all Advanced Filters parameters are ignored.
exclude_connsNoExclude specific connecting airports, comma-separated for multiple.
outbound_dateNoOutbound travel date, format YYYY-MM-DD, e.g. 2026-03-05.
infants_on_lapNoNumber of infants traveling on an adult's lap. (default: 0)
outbound_timesNoPreferred time range for the outbound flight; each number represents the start of an hour.
departure_tokenNoSelects a departure flight to fetch the next set of results (return flights for round trip, or next segment for multi-city). Cannot be used with booking_token.
infants_in_seatNoNumber of infants traveling in their own seat. (default: 0)
multi_city_jsonNoJSON string containing an array of flight segment objects, used to provide details for multi-city trips.
exclude_airlinesNoExclude specific airlines, each a 2-character IATA code. Cannot be used together with include_airlines.
include_airlinesNoInclude only specific airlines, each a 2-character IATA code. Cannot be used together with exclude_airlines.
layover_durationNoPreferred layover duration range in minutes, e.g. '75,240' for 1h15m to 4h.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the cost (5 API credits per request), the two-step flow (multi-step process), mutual exclusions, and parameter interactions (e.g., booking_token ignores dates/filters). It also describes the return format. This gives good insight into the tool's behavior, though it could mention error handling or rate limits beyond credits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is informative but somewhat verbose and contains redundancy (credits mentioned twice: 'Costs 5 API credits per request. [Credits: 5 API credits per request]'). The structure is front-loaded with purpose but then mixes parameter notes and return format. Could be more concise by removing repetition and organizing flow better.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (29 parameters, multi-step flow), the description covers the essential two-step process, mutual exclusions, and a sample return format. It lacks detailed explanation of multi-city JSON structure and full enumeration of type values (only mentions round trip constraints). Still, it provides substantial context, and no output schema is present, so the return format description helps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so each parameter is already documented. The description adds value by explaining interactions (e.g., return_date required only for type=1, mutual exclusions) and the multi-step flow involving departure_token and booking_token. This context helps understand parameter usage beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Google Flights results for one-way, round-trip, and multi-city searches, with sorting/filtering and booking token support. It specifies the resource (Google Flights) and action (retrieves), and distinguishes it from sibling tools like google_hotels or general google_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use the tool, including a two-step flow for full itineraries, parameter requirements (e.g., return_date required for type=1), mutual exclusions (exclude/include airlines, departure_token/booking_token), and the return format. However, it does not explicitly state when NOT to use the tool or alternatives, but the sibling list makes it obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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)

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn the full HTML of the Google page. (default: false)
queryYesSearch query, anything you would normally type into a standard Google Hotels search.
adultsNoNumber of adults. (default: 2)
brandsNoBrand ID(s) to focus the search on. Single: '33'; multiple: '33,67,101'. Not supported for Vacation Rentals.
ratingNoMinimum rating filter. Allowed values: 7 (3.5+), 8 (4.0+), 9 (4.5+).
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
sort_byNoSort order. Default is Relevance. Allowed values: 3 (lowest price), 8 (highest rating), 13 (most reviews).
bedroomsNoMinimum number of bedrooms. Vacation Rentals only. (default: false)
childrenNoNumber of children. (default: 0)
currencyNoCurrency for returned prices. (default: USD)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
amenitiesNoOnly include listings with the selected amenities; see the Google Hotels / Vacation Rentals Amenities reference pages for allowed values.
bathroomsNoMinimum number of bathrooms. Vacation Rentals only. (default: false)
max_priceNoMaximum price in the results range.
min_priceNoMinimum price in the results range.
hotel_classNoFilter to specific star ratings. Allowed values: 2, 3, 4, 5. Not supported for Vacation Rentals.
check_in_dateYesCheck-in date, format YYYY-MM-DD, e.g. 2025-08-15.
children_agesNoAges of children, valid range 1-17. Single child: '5'; multiple: '5,8,10'.
eco_certifiedNoOnly include eco-certified listings. Not supported for Vacation Rentals.
check_out_dateYesCheck-out date, format YYYY-MM-DD, e.g. 2025-08-16.
property_tokenNoRetrieves detailed property information (name, address, phone number, prices, nearby places, etc.) for a specific property.
property_typesNoProperty type(s) to include; see the Google Hotels / Vacation Rentals Property Types reference pages for allowed values.
special_offersNoOnly include listings with special offers. Not available for Vacation Rentals.
next_page_tokenNoToken to fetch the next page of results.
vacation_rentalsNoSearch Vacation Rentals instead of Hotels. (default: false)
free_cancellationNoOnly include listings offering free cancellation. Not available for Vacation Rentals.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavioral traits: credit cost (5 API credits), date format (YYYY-MM-DD), filter mutual exclusivity between hotels and vacation rentals, pagination via next_page_token, and detail lookup via property_token. Example return structure is also included.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient paragraph front-loaded with purpose, then credit cost, then parameter constraints, then pagination, then return structure. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 26 parameters, 3 required, no output schema, the description covers core flows (search and detail lookup), filter constraints, pagination, and sample output. Could be enhanced with rate limit info, but overall adequate for agent understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions. The description adds context beyond schema: mutual exclusivity of certain filters, credit cost, pagination mechanism, and property_token usage. This justifies a score above the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool retrieves Google Hotels search results including property listings, pricing, ratings, amenities, and detailed property info via property_token. The verb 'retrieves' and specific resource 'Google Hotels search results' make the purpose unambiguous and distinguishable from siblings like google_search or google_flights.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description provides usage guidelines like credit cost, date format, and filter compatibility notes (e.g., hotels filters not supported for vacation rentals). It explains pagination and property token usage. However, it does not explicitly contrast with alternative tools like google_search for general hotel queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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). chips values are discovered from a prior response's suggested_searches array. Returns: { images_results: [{title, image, source, original, link, original_height, original_width, original_size, rank}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
crNoRestrict search to specific countries, formatted country{2-letter uppercase code}, pipe-separated for multiple, e.g. countryFR|countryDE.
lrNoLimit search to one or multiple languages, formatted lang_{language code}.
tbsNoAdvanced parameter ('to be searched') to filter search results.
htmlNoReturn the full HTML of the Google Images page. (default: false)
nfprNoSet 1 to exclude auto-corrected/misspelled-query results, 0 to include them. (default: 0)
pageNoPage number of Google search results. 0 = first page, 1 = second page, etc. (default: 0)
safeNoAdult content filter. Allowed values: active, off. (default: off)
uuleNoEncoded geographic location/locale to tailor results, e.g. w+CAIQIFJlbGF5IFN0YXRlcw==.
chipsNoFilters results using a Google-suggested search term (e.g. 'red apple'). Suggested chips appear under suggested_searches in the response when ijn=0; each includes a chip value and a scrapingdog_link.
imgarNoImage aspect ratio filter. Allowed values: s (Square), t (Tall), w (Wide), xw (Panoramic).
imgszNoImage size filter. Allowed values: l (Large), m (Medium), i (Icon), qsvga (>400x300), vga (>640x480), svga (>800x600), xga (>1024x768), 2mp, 4mp, 6mp, 8mp, 10mp, 12mp, 15mp, 20mp, 40mp, 70mp (Larger than N megapixels).
queryYesGoogle Search query. Example: query=pizza
domainNoGoogle domain for local results, e.g. google.co.in for India, google.co.uk for the UK. (default: google.com)
filterNoEnables/disables the 'Similar Results' and 'Omitted Results' filters. 1 (default) activates filters, 0 turns them off.
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
end_dateNoEnd date for the image search date range. Format YYYYMMDD, e.g. 20241231. Cannot be used with period_unit/period_value. If start_date is blank, includes all dates before end_date. Overrides cdr/cd_max in tbs.
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
licensesNoLicense filter. Allowed values: f (Free to use/share), fc (Free to use/share, even commercially), fm (Free to use/share/modify), fmc (Free to use/share/modify, even commercially), cl (Creative Commons), ol (Commercial and other licenses). Overrides the sur component of tbs.
image_typeNoImage type filter. Allowed values: face, photo, clipart, lineart, animated. Overrides the itp component of tbs.
start_dateNoStart date for the image search date range. Format YYYYMMDD, e.g. 20241201. Cannot be used with period_unit/period_value. If end_date is blank, range extends to today. Overrides cdr/cd_min in tbs.
image_colorNoImage color filter. Allowed values: bw, trans, red, orange, yellow, green, teal, blue, purple, pink, white, gray, black, brown. Overrides ic/isc components of tbs.
period_unitNoTime unit for retrieving recent images. Allowed values: s (Second), n (Minute), h (Hour), d (Day), w (Week), m (Month), y (Year). Cannot be used with start_date/end_date; takes precedence over the qdr component of tbs.
period_valueNoDuration used with period_unit, e.g. 15 seconds, 42 hours, 178 days. Valid range 1 to 2,147,483,647. (default: 1)

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the cost (10 credits), return structure, and important parameter interactions (mutual exclusivity of date parameters, chips from suggested_searches). It does not cover rate limits or authentication, but given the complexity, it provides substantial behavioral insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is informative and front-loaded with purpose, but it contains a slight redundancy (credit mentioned twice). It is structured with clear notes, but could be more concise. Overall, it earns its place without being overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (23 parameters, no output schema, no annotations), the description covers key behavioral aspects: cost, return format, and parameter constraints. It does not detail every edge case, but it provides sufficient contextual completeness for an agent to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents all parameters. The description adds meaningful semantic guidance beyond the schema, such as the chips discovery mechanism and the constraints on time filtering parameters. This extra context helps an agent use the parameters correctly, elevating it above the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Google Images search results including specific fields like titles, thumbnails, source links, and dimensions. It distinguishes from sibling tools such as google_search, google_videos, and google_lens, which handle different media or search types. The verb 'retrieves' is specific and actionable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions cost (10 API credits per request) and provides notes on time filtering and chips usage. However, it does not explicitly contrast with siblings or state when to use this tool vs. alternatives like google_search or google_lens. While some guidance is implied, it lacks explicit when-to-use/when-not-to-use direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 stores=true and increment sori by the cumulative count of sellers already returned across previous calls. Returns: { title, brand, reviews, rating, price_range, stores: [{name, link, price, ratings, reviews}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
soriNoUsed with `stores` to fetch the next page of seller results. Its value depends on how many sellers were returned in prior responses; e.g. if the last two responses each returned 5 sellers, set sori=10 to continue.
storesNoEnables pagination to fetch more sellers. Pass true to enable. Must be used together with `sori`. (default: false)
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
page_tokenYesToken required to display additional product details in Google's immersive popup. Typically obtained from a google_shopping response's scrapingdog_immersive_product_link.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry burden. Discloses return structure and pagination behavior but does not mention rate limits, authentication, or side effects (though read-only assumed).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two substantive sentences plus return format. Front-loaded with purpose. Extraneous credit note but overall concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Completeness is high given 5 parameters and pagination complexity. Covers pagination, parameter usage, return structure. No output schema, so return format is helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all 5 parameters. Description adds context: explains sori and stores collaboration, and source of page_token. Also gives return format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it scrapes Google's immersive product popup view for a specific product, returning brand info, price range, and per-store listings. Distinguishes from sibling google_shopping by focusing on popup view.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit pagination guidance: enable `stores=true` and increment `sori` by cumulative sellers. Notes that page_token comes from google_shopping. Lacks explicit alternatives or when-not-to-use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 next_page_token, obtained from a prior response. Returns: { jobs_results: [{title, company_name, location, via, extensions: [], apply_links: [{title, link}]}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
udsNoOpaque Google-provided string used as an additional search result filter.
lradNoSearch job results within a particular radius.
uuleNoEncoded geographic location/locale to tailor results.
chipsNoExtra query filters found at the top of the Google Jobs search page.
ltypeNoFilter results by work-from-home listings.
queryYesGoogle Search query, e.g. 'jobs in london'.
domainNoGoogle domain for local results, e.g. google.co.in for India. (default: google.com)
countryNoCountry name in ISO 3166 Alpha-2 format. (default: us)
languageNoLanguage of the requested results. (default: en_us)
next_page_tokenNoToken used to fetch the subsequent page of results.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It effectively discloses the cost (5 API credits), pagination behavior (next_page_token), and the return format. This goes beyond the schema by adding behavioral context. It does not contradict any annotations (none provided). However, it could mention error conditions or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is mostly concise with two sentences and a return type example. However, it includes a redundant phrase '[Credits: 5 API credits per request]' that repeats the earlier statement, slightly reducing efficiency. Still, it is well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 10 parameters, no output schema, and no annotations, the description provides adequate context: cost, pagination, and return structure. It lacks explanation of error handling, rate limits, or parameter interactions. It is complete enough for basic use but has gaps for a 10-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds minimal extra meaning beyond the schema; it clarifies that query should be like 'jobs in london' and that next_page_token comes from a prior response. Most parameters remain as described in the schema, so no significant additional semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves Google Jobs search results with specific fields (job titles, company names, etc.), distinguishing it from general search tools like google_search. However, it does not explicitly differentiate from other job-specific tools in the sibling list (e.g., linkedin_jobs_search, indeed_scraper), so it loses a point for lack of explicit differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides guidance on pagination using next_page_token and mentions the cost (5 credits), which helps in usage. However, it does not specify when to use this tool versus alternatives, nor does it mention prerequisites or limitations. The guidance is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe Google Lens URL to scrape, typically in the form https://lens.google.com/uploadbyurl?url={image_url}.
queryNoAdditional search query to execute alongside the reverse image search, same as a standard Google search. Example: query=pizza
countryNoISO 3166-1 country code for Google Lens results. (default: us)
productNoSet true to retrieve product results from Google Lens. (default: false)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
exact_matchesNoSet true to retrieve exact match results from Google Lens. (default: false)
visual_matchesNoSet true to retrieve visual match results from Google Lens. (default: false)

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses cost (5 API credits), parameter type nuance (string but boolean-like), and returns structure. With no annotations, this is valuable behavioral context. Lacks mention of idempotency or rate limits, but sufficient for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise and front-loaded with the main action and credits. Could be more structured (e.g., bullet points), but no wasted sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters with 100% schema coverage and no output schema, the description provides meaningful extra context (credits, type warning, return format) to support agent decision-making. Complete enough for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds clarity on boolean-like parameter values and the URL format for the required parameter. This goes beyond the schema descriptions, aiding correct usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it performs reverse image search via Google Lens, supporting product, visual, and exact matches. It differentiates itself from sibling tools like google_search and google_images by specifying the Lens endpoint and result types.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives, such as when to choose Lens over generic image or web search. No explicit when-not-to-use scenarios mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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: location and uule are mutually exclusive. Returns: { local_results: [{title, rating, reviews, price, description, address, type, place_id, gps_coordinates: {lat, lng}}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
tbsNoAdvanced parameter ('to be searched') to filter search results.
pageNoPage number of Google search results. 0 = first page, 1 = second page, etc. (default: 0)
uuleNoEncoded geographic location/locale to tailor results, e.g. w+CAIQIFJlbWF5IFN0YXRlcw==. Cannot be used together with `location`.
queryYesGoogle Search query, e.g. query=coffee+in+manhattan.
domainNoGoogle domain for local results, e.g. google.co.in for India, google.co.uk for the UK. (default: google.com)
countryNoISO country code from which to seek Google search results. (default: us)
ludocidNoGoogle My Business listing ID (CID), also known as the Google Place ID, to scrape.
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
locationNoLocation from which to scrape local results, e.g. 'Manhattan, New York'. Cannot be used together with `uule`.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses credit cost and mutual exclusivity but lacks details on authentication, rate limits, error handling, or pagination beyond the 'page' parameter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear first sentence stating purpose, followed by credits and notes. The structure is good, though the credits line is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 9 parameters and no output schema, the description provides a reasonable return structure and constraints. However, it misses potential error scenarios and pagination behavior beyond the 'page' parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents parameters. The description adds critical mutual exclusivity note and return format, which goes beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves Google Local business listings with specific fields like ratings, reviews, addresses, etc. It distinguishes from siblings like google_search (web search) but does not explicitly differentiate from similar tools like google_maps_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions cost (5 credits) and the mutual exclusivity of 'location' and 'uule', providing some constraints. However, it does not provide when to use this tool versus alternatives like google_maps_search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 categories array and their id values, then re-call with category_id set. Pagination is cursor-based via next_page_token; the response also returns a ready-made scrapingdog_pagination.next URL for convenience. Returns: JSON with categories array of {name, id}, photos array of {thumbnail, image}, and scrapingdog_pagination {next (full next-page URL), next_page_token}.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_idYesThe Google Maps data ID for the location, obtained from the google_maps_search endpoint (or its returned photos_link).
languageNoLanguage of the results (e.g. en, es, fr, de). See Google Language Page documentation for full list. (default: en)
category_idNoUnique identifier of a photo category, obtained from the `categories` array returned by a prior call to this same endpoint (e.g. "Food & drink", "Interior").
next_page_tokenNoToken used to fetch the next page of photo results.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It describes retrieval behavior, optional filtering, pagination mechanism, and return format. No mention of side effects or authentication, but for a read-only tool, it's sufficiently transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with main purpose upfront, then notes and return format. The credit note is minor but not excessive. Every sentence provides value; could be slightly shorter but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a good summary of return structure and pagination. Covers category filter workflow. Lacks error handling or limits, but is fairly complete for a photo retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds substantial meaning: explains how to obtain and use category_id, notes data_id origin from search endpoint, and describes next_page_token usage. This goes well beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves photos for a Google Maps location using a data_id, with optional category filtering. It distinguishes from sibling tools like google_maps_search and google_maps_reviews, though it doesn't explicitly name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit instructions for category filtering (two-step process) and pagination (cursor-based with ready-made URL). Mentions data_id source from google_maps_search. Lacks explicit when-not-to-use or alternatives, but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 type and data_id as Required, but place_id is documented as independently usable without the other optional parameters, effectively making it an alternative required-parameter path. Returns: JSON object (single place) with title, rating, reviews (count), gps_coordinates {latitude, longitude}, type[], address, phone, website, operating_hours (per weekday), service_options {dine_in, takeout, delivery}, amenities {wifi, restroom, seating}, accessibility {wheelchair_accessible_entrance, wheelchair_accessible_seating}, payment_options {credit_cards, debit_cards, nfc_mobile_payments}.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesMust be set to `place` (type=place). Not required when using place_id instead.
countryNoISO country code for the results. See Google Country Parameter documentation for full list. (default: us)
data_idYesThe Google Maps data ID for the location, obtained from the google_maps_search endpoint. Required unless place_id is used instead.
place_idNoUniquely identifies a place on Google Maps; obtainable via the google_maps_search endpoint. Can be used independently without any other optional parameters (i.e., in place of type+data_id).

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the return format and fields, but lacks information on error handling, rate limits, authentication, or what happens if no place is found. The credit note is vague.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections and front-loaded purpose. The credit note is slightly extraneous, but overall it's efficient and provides necessary detail in a readable format.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the number of parameters (4), no output schema, and no annotations, the description is comprehensive. It explains the input parameters' relationships, describes the output fields in detail, and covers the core functionality adequately for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, baseline is 3. The description adds value by explaining the alternative required-parameter paths (type+data_id vs place_id) and clarifying that place_id can be used independently, which goes beyond the schema's field descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a complete business profile for a specific Google Maps location, with explicit details on what fields are included. This distinguishes it from sibling tools like google_maps_search (which returns lists) and other specific data tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains two lookup modes (type+data_id vs place_id) and clarifies the parameter requirements. While it doesn't explicitly say when to use this versus alternatives, the context and sibling tool names imply it's for individual place details after a search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 data_id (or posts_link) field of the desired result. Pagination is cursor-based via next_page_token. Returns: JSON with location_details {title, logo}, post_data array of {description, date, image, link}, and next_page_token (string, present when more pages are available).

ParametersJSON Schema
NameRequiredDescriptionDefault
data_idYesThe Google Maps data ID for the location, obtained from the google_maps_search endpoint (or its returned posts_link).
next_page_tokenNoToken used to fetch the next page of post results, taken from the previous response's next_page_token field.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the read-only nature (retrieves posts), mentions pagination behavior, and specifies the return structure. No contradictions exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear purpose statement, notes on prerequisites, pagination, and return format. The credits note is slightly extraneous but not detracting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description fully explains the return JSON structure (location_details, post_data, next_page_token). It covers data source and pagination, making it complete for a paginated list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by explaining that data_id comes from google_maps_search and next_page_token from previous responses, which is beyond the schema's basic descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Retrieves' and the resource 'posts and updates published on a Google Business Profile listing', and distinguishes it from sibling tools like google_maps_reviews or google_maps_photos by specifying it's for posts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains how to obtain the required data_id via google_maps_search and that pagination is cursor-based. It provides clear context but does not explicitly state when not to use this tool or list alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 topics array in a previous response (each topic has a keyword, mentions count, and id). The results param has an exception: on an unfiltered first page (no next_page_token and no topic_id) it is ignored and 8 results are returned. Pagination is cursor-based via next_page_token; response includes a ready-made pagination.next URL. Returns: JSON with locationDetails {title, address, rating, total_reviews}, topics array of {keyword, mentions, id}, reviews_results array of {rating, date, snippet, user {name, reviews, thumbnail}, images[]}, and pagination {next_page_token, next (full next-page URL)}.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_idYesThe Google Maps data ID for the location, obtained from the google_maps_search endpoint (or its returned reviews_link).
resultsNoMaximum number of results to return. Valid range: 1-20. Cannot be used on the first page without also supplying next_page_token or topic_id β€” in that case the response will contain 8 results regardless. (default: 10)
sort_byNoSort order for reviews. Allowed values: `qualityScore` (most relevant, default), `newestFirst` (most recent), `ratingHigh` (highest rated), `ratingLow` (lowest rated). (default: qualityScore)
languageNoLanguage of the results (e.g. en, es, fr, de). See Google Language Page documentation for full list. (default: en)
topic_idNoID of a review topic to filter by, taken from the `topics` array returned in a prior response of this endpoint.
next_page_tokenNoToken used to fetch the next page of review results.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully bears the burden of disclosing behavior. It explains pagination (cursor-based via next_page_token), the exception for results param on first page, and the detailed return structure including locationDetails, topics, reviews_results, and pagination.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is somewhat lengthy but well-structured, front-loading the main purpose and then detailing nuances. Every sentence adds value, though a slight trim could improve conciseness without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters and no output schema, the description provides a thorough explanation of inputs, behavior, and return fields. It covers edge cases, pagination, and the structure of the response, making it fully self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds significant meaning beyond the schema: it explains the origin of topic_id, the edge case for results on first page, and the meaning of next_page_token. This helps the agent understand parameter usage beyond syntax.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves customer reviews for a Google Maps location given a data_id. It uses specific verb 'retrieves' and resource 'customer reviews', distinguishing it from sibling tools like google_maps_search or google_maps_photos.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that data_id comes from google_maps_search and topic_id from a prior response, providing context for usage. It does not explicitly list when not to use or direct alternatives, but the purpose is clear among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
soNoSorting method: 0 = Relevance (default), 1 = Date. Can only be used with story_token. (default: 0)
queryNoA standard Google News search query; supports operators like site: or when:. Cannot be used together with publication_token, story_token, or topic_token.
countryNoTwo-letter country code for the Google search, e.g. us, uk, fr. See Google Country Parameter docs. (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)
topic_tokenNoGoogle News topic token to get results for a particular topic (e.g. World, Business, Technology). Cannot be used with query, story_token, or publication_token.
section_tokenNoGoogle News section token to access a subsection of a specific topic (e.g. Business -> Economy). Can only be used together with topic_token or publication_token.
publication_tokenNoGoogle News publication token to get results from a specific publisher (e.g. CNN, BBC, The Guardian). Cannot be used with query, story_token, or topic_token.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavior: it returns a specific result structure, notes undocumented 'story_token' concept, warns about ambiguity, and states lack of pagination parameter. This level of transparency is exemplary for a potentially complex endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with key information front-loaded (improvements, search modes). However, it includes a superfluous [Credits] line and the Notes section is verbose, slightly hindering conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers return format, parameter constraints, undocumented features, and differences from v1. It lacks explicit mention of error handling or rate limits, but given the tool's complexity, it is largely complete and helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, but the description adds value by explaining token concepts, mutual exclusivity, and the undocumented story_token. It provides high-level context beyond the schema, justifying a score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it's a faster v2 endpoint for Google News, highlighting key improvements (image URLs, ISO dates). It distinguishes from v1 and explains the different search modes (topic, publication, section tokens vs free-text query), making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use this tool (v2 for faster results, image URLs, ISO dates) and explains mutual exclusivity among parameters. However, it does not explicitly compare to sibling google_news_search or state when to prefer v1, leaving some ambiguity for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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: {} }

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn the full HTML of the Google page instead of parsed JSON. (default: false)
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)
patent_idYesThe patent ID, e.g. US11734097B1 (plain publication-number style, not the 'patent/<id>/en' format returned by google_patents' organic_results).

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It discloses API credit cost (5 credits per request) and the return structure. However, it does not mention error handling, rate limits, or what happens if patent_id is invalid. The credit cost is helpful but incomplete for full behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is efficient at 5-6 sentences, front-loading the core purpose and key fields. Uses notes for critical format clarification and cost info. Could be slightly tighter but is well-structured and avoids verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has three parameters, no output schema, and no annotations, the description covers what the tool does, what it returns, and the crucial format constraint. It does not explain the html or language parameters beyond the schema, but those are standard. Overall adequate for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with parameter descriptions already clarifying the patent_id format. The description's format note is redundant with the schema. The description adds minimal extra meaning beyond listing return fields, which is not directly parameter semantics. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves detailed information about a specific patent, listing key fields like title, PDF link, inventors, dates, and prior-art keywords. It is specific and distinguishes from sibling tools like google_patents which is a search endpoint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on the required patent_id format, including an example and warning about the format returned by the sibling google_patents search. Implies this tool should be used after obtaining a patent ID from search results. Could be more explicit about when to use vs. other patent-related tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
numNoNumber of results to scrape, between 1 and 100. (default: 10)
dupsNoDeduplication method: default is by Family. Available value: language (deduplicate by Publication).
pageNoPage number of results. 0 = first page, 1 = second page, etc. (default: 0)
sortNoSorting method. Default is Relevance. Allowed: new (Newest), old (Oldest). For patents, sorting is by filing date; for scholar results, by publication date.
typeNoFilter by patent type. Allowed: PATENT (Patent), DESIGN (Design).
afterNoMinimum date for results, format type:YYYYMMDD where type is priority, filing, or publication. Example: publication:20230101.
queryYesSearch query. Multiple search terms can be separated with a semicolon (;). Example single term: (Coffee) OR (Tea). Example multi-term: (Coffee) OR (Tea);(A47J). See 'About Google Patents' for advanced syntax.
beforeNoMaximum date for results, format type:YYYYMMDD where type is priority, filing, or publication. Example: priority:20221231.
statusNoFilter by patent status. Allowed: GRANT (Grant), APPLICATION (Application).
countryNoFilter by country code(s). Separate multiple codes with a comma. Example: WO,US.
patentsNoWhether to include Google Patents results. (default: true)
scholarNoWhether to include Google Scholar results. (default: false)
assigneeNoFilter by assignee(s). Separate multiple assignees with a comma.
inventorNoFilter by inventor(s). Separate multiple inventors with a comma.
languageNoFilter by language(s), comma-separated. Supported: ENGLISH, GERMAN, CHINESE, FRENCH, SPANISH, ARABIC, JAPANESE, KOREAN, PORTUGUESE, RUSSIAN, ITALIAN, DUTCH, SWEDISH, FINNISH, NORWEGIAN, DANISH.
clusteredNoHow results should be grouped. Available option: true (Classification).
litigationNoFilter by litigation status. Allowed: YES (Has Related Litigation), NO (No Known Litigation).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses credits, pagination behavior, patent_id format, and return structure. It does not mention rate limits or error handling, but provides sufficient behavioral details for an AI agent to use the tool correctly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: main purpose in first sentence, credits, then key behavioral notes, return format. Every sentence adds value without redundancy. It is front-loaded with essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 17 parameters, no output schema, the description covers return structure and key behavioral notes. It explains how to use results with a sibling tool, but could mention more about error states or edge cases for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds significant value by explaining date format (type:YYYYMMDD), semicolon usage for multiple query terms, and the patent_id format conversion, which are not fully covered in the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches patent records across Google Patents with advanced filtering, specifying the verb (Searches) and resource (patent records). It differentiates from sibling tool google_patent_details by noting the patent_id format difference and how to pass parameters to that tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on pagination, date format, and how to use results with google_patent_details, but does not explicitly state when to use this tool versus alternatives like google_scholar or other search tools. The context is clear but lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } } }

ParametersJSON Schema
NameRequiredDescriptionDefault
lrNoLimit search to one or multiple languages, used as lang_{language_code}. See Google LR Language Page.
htmlNoRender the response as raw HTML instead of parsed JSON. (default: false)
pageNoPage number of Google Scholar searches. 0 = first page, 1 = second page, etc. (default: 0)
safeNoAdult content filter. Allowed values: active, off. (default: off)
as_rrNoWhether to show only review articles: 1 = enable filter, 0 = show all results. (default: 0)
citesNoUnique article ID to run a 'Cited By' search - returns documents citing the given article. Combine with query to search within citing articles.
queryYesSearch query; supports helpers like author: or source:. Becomes optional if the cites parameter is supplied (combining cites+query refines to citing articles matching the query). Cannot be used together with cluster.
as_sdtNoActs as filter or search type. As filter (article search): 0 = excludes patents (default), 7 = includes patents. As search type: 4 = case law (US courts, all state/federal); can append court codes e.g. as_sdt=4,33,192 (4 must be first, comma-separated).
as_visNoWhether citations are included in results: 1 = exclude citations, 0 = include citations. (default: 0)
as_yhiNoEnding year for results, e.g. as_yhi=2018 excludes results after 2018. Can combine with as_ylo.
as_yloNoStarting year for results, e.g. as_ylo=2018 excludes results before 2018. Can combine with as_yhi.
filterNoEnables (1) or disables (0) the 'Similar Results' and 'Omitted Results' filters. (default: 1)
scisbdNoWhether to include only abstract results (1) or all results (0).
clusterNoUnique ID for an article to fetch all available versions of it. Cannot be used simultaneously with query and cites.
resultsNoNumber of results per page.
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It details credit cost (5 API credits per request), pagination behavior, and return structure (including related_searches, scholar_results, pagination). It does not explicitly state read-only nature, but the context implies it. It is transparent about input-output relations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with a one-sentence overview, then adds credits, usage notes, and return format. It is relatively dense but well-organized, avoiding unnecessary repetition. The return schema is provided in lieu of an output schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 16 parameters and no output schema, the description provides a complete return object definition and explains inter-parameter dependencies. It covers pagination and language filters adequately, making the tool usable without external references.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by clarifying relationships: query becomes optional if cites is provided, cluster cannot be used with query and cites, and IDs from results tie to parameters. This goes beyond individual schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it 'Searches academic papers and scholarly content on Google Scholar' and lists specific capabilities (citation lookups, author/source helpers, year filters, pagination). This distinguishes it from siblings like google_scholar_author (author details) and google_scholar_cite (citation output).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit notes on how to use IDs from results for other endpoints (e.g., 'id' values feed google_scholar_cite, cluster_id and cites_id are used with cluster and cites parameters). It also explains pagination (0-indexed) and provides return schema. However, it lacks direct comparison with all sibling tools, though the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoSort articles: title (by article title) or pubdate (by publication date).
resultsNoNumber of results (articles) per page.
view_opNoAccess a specific section of the author page: view_citation (requires citation_id, returns a single citation's detail) or list_colleagues (returns all co-authors).
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)
author_idYesAuthor ID of the person to get data for (obtainable from google_scholar_profiles results as profiles[].author_id).
citation_idNoID of an individual article's citation; required only when view_op=view_citation. Obtainable from this endpoint's articles[].citation_id.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It explains the two modes (default profile vs list_colleagues) and the ambiguity with the sibling endpoint, and provides a return structure. It could mention authentication or rate limits but is still clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured well with a clear main purpose followed by notes. The ambiguity note is lengthy but important. Front-loaded with core functionality. Could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema, the description provides a complete return structure and covers all parameters and modes. It addresses the sibling tool relationship and potential confusion, making it fully informative for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so each parameter is described. The description adds context beyond schema by explaining the behavioral differences of view_op values and the relationship between author_id and citation_id. However, it repeats some schema info.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves comprehensive author information (name, affiliation, email, publication/citation history) and also exposes a co-author list mode. It explicitly distinguishes from the sibling tool 'google_scholar_author_citation' by explaining the ambiguity and the two modes of the same endpoint.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool versus the citation tool, including the note about potential merging. It also mentions how to obtain the author_id from the profiles tool and prerequisites for using citation_id.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] } }

ParametersJSON Schema
NameRequiredDescriptionDefault
view_opYesSection of the page to access: view_citation (display citation detail; requires citation_id) or list_colleagues (view all co-authors).
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)
author_idYesAuthor ID of the person to get data for.
citation_idYesID for fetching an individual article's citation detail. Mandatory when view_op=view_citation. Obtainable from google_scholar_author's articles[].citation_id.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must fully disclose behavior. It does so by describing the read-only retrieval operation, the return structure, and the required parameters. It could mention rate limits or authentication, but for a simple data retrieval tool, it's sufficiently transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is multi-sentence but each sentence adds necessary information: purpose, endpoint note, citation_id format, and output structure. It is front-loaded with the core action. Slightly verbose but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a detailed breakdown of the return structure. It covers all required parameters and their interrelation. Missing error handling or edge cases, but sufficient for typical use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions, but the description adds significant value by explaining the citation_id format (author_id:opaque_token) and its source (from google_scholar_author's articles). This extra context helps the agent use the parameters correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves citation metrics (h-index, i10-index, yearly graph) and article citation details, using view_op=view_citation on the author endpoint. This distinguishes it from siblings like google_scholar_author (profile retrieval) and google_scholar_cite (citation format).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that citation_id is required and obtainable from google_scholar_author, and points to an ambiguity note about the shared endpoint. While it doesn't explicitly list when not to use, it provides enough context to avoid confusion with similar tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesID of an individual Google Scholar organic search result, obtained from the id field of google_scholar's scholar_results.
languageNoLanguage of the results, e.g. en, es, fr, de. See Google Language Page. (default: en)

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that the tool requires a specific ID, returns citations and links, and mentions credits not stated. It does not mention auth or rate limits, but as a read-only citation retrieval, this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose, followed by notes and return structure. It is slightly long but every sentence provides value. Could be slightly more concise but overall well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description includes a clear return structure. It provides all necessary information to use the tool correctly, including parameter clarification, return format, and context from sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters described. The description adds critical value by clarifying that 'query' is actually a result ID and referencing the id field from google_scholar results, and it explains the 'language' parameter default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves formatted academic citations (MLA, APA, etc.) and export links using a Google Scholar result ID. This uniquely identifies its function and distinguishes it from sibling tools like google_scholar (search) and google_scholar_author (author info).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It specifies when to use (to get citations for a paper given its result ID) and clarifies that the 'query' parameter is a result ID, not free text. However, it does not explicitly mention when not to use or provide alternatives, though the sibling context implies its narrow use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] } ] }

ParametersJSON Schema
NameRequiredDescriptionDefault
mauthorsYesThe author name to search for. Supports query helpers like label: in the search string.
after_authorNoPagination token to fetch the next set of results. Takes precedence over before_author.
before_authorNoPagination token to fetch the previous page of results.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It explains cursor-based pagination, token precedence, credit mention, and the linkage to other tools. Could further disclose rate limits or limitations but is sufficient for basic transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is informative but slightly verbose with bracketed notes. Every sentence adds value, though the structure could be streamlined by integrating the pagination note into the main flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 3 parameters, no output schema, and no nested objects, the description provides a clear return structure and pagination details. It is complete enough for an AI agent to understand usage, though an explicit return format table would improve it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds meaning by noting that 'mauthors' supports query helpers like 'label:', and that 'after_author' takes precedence over 'before_author'. The pagination token retrieval note adds value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies a clear verb ('searches') and resource ('academic researcher profiles on Google Scholar by author name'), and distinguishes from sibling tools like google_scholar_author and google_scholar_author_citation by noting that its author_id is used as input to those endpoints.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly guides usage by stating that the author_id feeds into google_scholar_author and google_scholar_author_citation endpoints, and explains pagination tokens. However, it does not explicitly contrast with google_scholar (which searches articles) or provide exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 page (0-indexed). Product filtering is a two-step flow: read filters[].options[].scrapingdog_link from a response and reuse the shoprs/updated query values it encodes to apply/stack/remove filters. Each shopping result item includes scrapingdog_immersive_product_link, a ready-to-call URL for the Google Immersive Product API (contains the page_token). Returns: { filters: [{type, options: [{text, tbs}]}], ads: [{title, link, source, price, thumbnail}], shopping_results: [{title, product_link, product_id, scrapingdog_immersive_product_link, source, price, extracted_price, old_price_extracted, rating, reviews, extensions[], thumbnail, position}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
lrNoLimit search to one or multiple languages, formatted as lang_{language code}, e.g. lang_us.
tbsNoAdvanced parameter ('to be searched') to filter search results.
htmlNoReturn the response as raw HTML instead of JSON. (default: false)
nfprNoSet 1 to exclude auto-corrected/misspelled-query results, 0 to include them. (default: 0)
pageNoPage number of Google search results. 0 = first page, 1 = second page, etc. (default: 0)
safeNoAdult content filter. Allowed values: active, off. (default: off)
uuleNoEncoded parameter specifying the geographic location/locale to tailor results to, e.g. w+CAIQIFJlbGF5IFN0YXRlcw==.
queryYesAny Google query or a complete Google URL. Example: query=shoes
domainNoGoogle domain to obtain local results, e.g. google.co.in for India, google.co.uk for the UK. (default: google.com)
shoprsNoHelper ID used to apply search filters. Must be used together with an updated query (q) that includes the selected filter name alongside the original query, e.g. 'sugar free Coffee'. Obtain the value from filters[index].options[index].scrapingdog_link in the JSON response. Apply multiple filters by following each scrapingdog_link in sequence; each new request retains previously applied filters. Remove a filter by using its associated scrapingdog_link.
countryNoTwo-letter country code for the Google Shopping search (e.g. us, uk, fr). (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description carries full burden; it discloses credit cost, pagination, filter flow, and return structure effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is front-loaded with purpose and includes necessary notes, though could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers return structure, pagination, filtering, and credits. No output schema, but provides sufficient detail for a complex scraping tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds some context for shoprs and page but doesn't significantly enhance meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it scrapes Google Shopping search results including ads, listing, and filter facets. It distinguishes from siblings like bing_shopping or google_search by focusing on Google Shopping.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides pagination guidance and two-step filter flow, but lacks explicit alternatives or when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 start, unlike most other endpoints in this category which use page. Returns: { short_videos_results: [{title, source, thumbnail, gif_url, account_name, date}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
lrNoLimit search to one or multiple languages, formatted lang_{language code}.
tbsNoAdvanced parameter ('to be searched') to filter search results.
htmlNoReturn the full HTML of the Google page. (default: false)
nfprNoSet 1 to exclude auto-corrected/misspelled-query results, 0 to include them. (default: 0)
safeNoAdult content filter. Allowed values: active, off. (default: off)
uuleNoEncoded geographic location/locale to tailor results, e.g. w+CAIQIFJlbGF5IFN0YXRlcw==.
queryYesGoogle query. Example: query=shoes
startNoNumber of results to skip for pagination, e.g. start=12 skips the first 12 results.
domainNoGoogle domain for local results, e.g. google.co.in for India, google.co.uk for the UK. (default: google.com)
countryNoTwo-letter country code for the Google search (e.g. US, UK, FR). (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It discloses the return format and pagination uniqueness, but does not mention whether the tool is read-only, requires authentication, or handles errors. This is adequate but not fully transparent for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused paragraph with the purpose upfront, followed by a critical pagination note and a clear return structure. No unnecessary words, earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description provides a return structure example, compensating for the missing output schema. It covers the essential behavioral note on pagination. However, it lacks explicit mention of idempotency or error scenarios, which are minor gaps for a simple search tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all 11 parameters described, so the description adds no additional semantic value beyond the schema. The mention of pagination offset is a behavioral note, not parameter-specific. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves Google Shorts search results, specifying the type of content (short videos) and listing returned fields (thumbnails, GIF previews, account names, dates). This distinguishes it from siblings like google_videos or google_search which cover general video or web search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly notes that pagination uses offset-based 'start' unlike other endpoints using 'page', providing clear context for correct usage. However, it does not explicitly state when to use this tool versus alternatives, though the purpose is self-explanatory for short video queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 page (0-indexed). Returns: { video_results: [{title, thumbnail, link, displayed_link, time, rank}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
lrNoLimit search to one or multiple languages, formatted lang_{language code}, e.g. lang_us.
tbsNoAdvanced parameter ('to be searched') to filter search results.
htmlNoReturn the response as raw HTML instead of JSON. (default: false)
nfprNoSet 1 to exclude auto-corrected/misspelled-query results, 0 to include them. (default: 0)
pageNoPage number of Google search results. 0 = first page, 1 = second page, etc. (default: 0)
safeNoAdult content filter. Allowed values: active, off. (default: off)
uuleNoEncoded geographic location/locale to tailor results, e.g. w+CAIQIFJlbGF5IFN0YXRlcw==.
queryYesGoogle query. Example: query=shoes
domainNoGoogle domain for local results, e.g. google.co.in for India, google.co.uk for the UK. (default: google.com)
countryNoISO country code for the Google search results. (default: us)
languageNoLanguage of the results, e.g. en, es, fr, de. (default: en)
result_timeNoCompanion to the tbs parameter for time-range filtering (e.g. language, country, file type, etc). Example value: qdr:d.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description adds credit cost, pagination behavior, and return format, but does not disclose rate limits, authentication requirements, or any destructive actions. It covers basic behavioral aspects but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long with no wasted words. The first sentence states the core purpose, followed by credits and a pagination note, and finally the return format. It is efficiently structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, the description provides a sample return structure and explains pagination. It covers essential operational details for a search tool, though it could include error scenarios or result limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds minimal extra meaning: notes that 'page' is 0-indexed and provides an example of the return structure. However, it does not elaborate on parameter interdependencies or usage recommendations.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Google video search results with specific features like geographic localization and language preferences. It uses a specific verb ('Retrieves') and resource ('Google video search results'), distinguishing it from siblings like google_images or google_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions pagination and credits cost but does not explicitly state when to use this tool over alternatives. No guidance on when not to use it or which sibling tools are better for other search types.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe full Indeed search URL to scrape (e.g., https://www.indeed.com/jobs?q=python&l=New+York,NY). Built directly from the Indeed website using its search filters.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses the credit cost, the special summary object at the end, and the input format. However, it does not mention potential issues like scraping rate limits, error handling, or the fact that Indeed might block requests, which would be useful for an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections, front-loading the main purpose, then credits, notes, and return format. It is slightly verbose in the returns section, repeating some field names, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description fully specifies the return structure including the array of job objects and the trailing summary object. It covers input requirements, credit cost, and output format, leaving no major gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single 'url' parameter. The description adds value by explaining the URL must be a complete Indeed search-results URL and how to construct it, going beyond the schema's basic description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Extract job listings') and resource ('Indeed search results URL'), and lists the structured fields returned. It distinguishes itself from sibling scrapers by naming Indeed explicitly and detailing the URL input format.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear guidance on building the input URL via Indeed's search UI and notes that it requires a complete search-results URL rather than discrete parameters. Lacks explicit when-not-to-use scenarios or comparisons with other job scrapers, but the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe unique identifier of the company or school profile. It is the last part of the profile URL, e.g. 'amazon' from /company/amazon or 'mit' from /school/mit.
typeYesDefines the type of profile to scrape. Set to 'company' for company profiles or 'school' for educational institutions.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses credit cost, endpoint sharing, absence of premium/webhook params, and lack of published example response. Acknowledges uncertainty about exact field names, providing honest expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with separate sections for credits and notes. Information is relevant, though slightly verbose; could be trimmed without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, description provides reasonable expectations for return fields and acknowledges documentation gaps. Lacks details on error handling or authentication requirements, but adequate for a two-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions. Description adds minor context (e.g., id from URL), but does not significantly enhance understanding beyond the schema. Baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Explicitly states it scrapes LinkedIn company or school profiles by ID. Distinguishes from the sibling person profile scraper by noting the same endpoint but different type parameter. Verb 'scrape' and resource are clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clearly indicates the tool is for company/school profiles and differentiates from the person profile scraper via the type parameter. However, lacks explicit 'when-to-use' versus other siblings like LinkedIn jobs or posts.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYesThe ID of the job listing. Can be found via the Jobs Search Scraper or directly from a LinkedIn job URL.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It explains endpoint behavior (shares with search API, job_id triggers detail mode), credits cost, and honestly acknowledges that no example response is published with expected fields but field names not confirmed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise (two sentences plus notes) and well-structured: purpose, credits, endpoint hints, parameter source, return expectations. No wasted words, though slightly dense.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given simple tool (one parameter, no output schema or annotations), description covers purpose, parameter acquisition, endpoint behavior, credits, and expected return fields (with caveat). Lacks error handling details but adequate for scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter described. Description adds meaning beyond schema by explaining how to obtain job_id (from search or URL) and its role in triggering detail mode, providing valuable context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action ('Retrieve detailed information') and resource ('specific LinkedIn job posting') with specific details (full description, requirements, company details). It distinguishes from sibling 'linkedin_jobs_search' by noting job_id is typically from a prior search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description explains when to use (when job ID is available) and where to obtain job_id (from search or URL). It mentions credits cost and endpoint sharing, but does not explicitly state when not to use or provide alternatives beyond the implied search tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe ID of any person profile. Found inside the URL of any LinkedIn person profile (e.g., 'rbranson' from linkedin.com/in/rbranson).
typeYesMust be set to 'profile' to scrape a person profile.
premiumNoSet to 'true' to use premium proxies to bypass LinkedIn's anti-bot measures. (default: false)
webhookNoSet to 'true' to schedule profile scraping after 2-3 minutes, which increases the success rate. (default: false)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description covers credit costs (50-100), premium cost increase, webhook delay, and expected fields (with uncertainty). However, it does not explicitly state that the operation is read-only, nor does it disclose potential rate limits or error conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and then details each parameter. It includes a note about uncertain return fields, which slightly reduces conciseness but is honest. Overall well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of output schema, the description attempts to describe return fields but admits uncertainty. It covers parameters well but omits error handling, rate limits, and pagination details. Adequate but with gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the description adds valuable context: id is a slug, type='profile' differentiates modes, premium impacts cost, webhook trades timeliness for success. This enriches the schema definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scrapes LinkedIn person profiles using a profile ID and returns full profile data including experience, education, and about sections. This specific verb+resource combination distinguishes it from sibling tools like linkedin_company_profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on using the profile ID slug, required type='profile', and options like premium and webhook with their trade-offs. It does not explicitly state when not to use this tool, but the distinction from company/profile mode is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe post ID of any LinkedIn post. Found in the post's share URL (e.g., '6976499964512243712').

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It notes credits cost and missing official documentation, but does not disclose rate limits, authentication requirements, or potential side effects. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is efficiently structured: one short paragraph with key information (purpose, credits, parameter hint, expected return fields). No superfluous sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, the description adequately covers what it does, parameter source, and expected return structure. It honestly notes documentation gaps, which aids realistic agent expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description already covers the 'id' parameter well (100% coverage). The tool description adds practical guidance on extracting the numeric ID from the share URL, providing extra value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it scrapes LinkedIn posts by ID, returning content and engagement data. This clearly distinguishes it from sibling tools targeting other LinkedIn data like profiles or jobs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for scraping post data and provides credit cost and ID extraction instructions, but lacks explicit guidance on when to prefer this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 } ] } }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the Myntra product page to scrape (e.g., https://www.myntra.com/jeans/powerlook/powerlook-men-baggy-fit-mildly-distressed-jeans/31076617/buy).
htmlNoReturn the full HTML of the Myntra page instead of parsed JSON. (default: false)

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite no annotations, the description fully discloses behavior: credits per request, required URL structure (numeric ID before /buy), and detailed return format including optional HTML output and nested fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and includes a detailed return schema. While the return schema is lengthy, it is valuable for an agent. Minor verbosity could be trimmed but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without an output schema, the description enumerates the full return structure including nested objects (sizes, offers, reviews). It also covers the URL format requirement, making it complete for proper tool use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds significant meaning beyond the schema: it clarifies the url must be a product page with a numeric ID, and explains the html parameter returns full HTML instead of parsed JSON.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it scrapes a Myntra product page by URL to retrieve product details, distinguishing it from sibling tools like myntra_search which handles search queries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies to use this tool for product page URLs, includes credit cost, and explains URL format. While not explicitly excluding alternatives, the context of siblings (e.g., myntra_search) makes the usage clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe target URL to scrape. Should be URL-encoded.
waitNoGives slow-loading dynamic pages extra time to finish loading before the page is scraped. Mentioned in the Javascript Rendering doc's prose only β€” no worked example or explicit unit/range was shown; commonly milliseconds in comparable APIs, but this is not confirmed by the docs.
countryNoISO 3166-1 country code (e.g. 'us') controlling which country the proxy appears to be from. Mainly useful for search engines / geo-sensitive sites. Available on all plans from Free to Enterprise.
dynamicNoEnables JavaScript rendering via headless Chrome for JS-heavy pages. Enabled by default, raising cost to 5 credits (25 with premium). Set dynamic=false to scrape static HTML only and reduce cost to 1 credit when JS rendering is not needed. (default: true)
premiumNoEnables premium residential proxies for websites that are difficult to scrape with standard datacenter proxies. Defaults to USA-based proxies but supports geotargeting via the country parameter. Costs 10 credits per request, or 25 credits when combined with dynamic=true (JS rendering). (default: false)
stealth_modeNoStealth Mode bypasses Cloudflare and similar bot-protection/CAPTCHA systems using advanced browser fingerprinting techniques. Costs 10 credits per request. (default: false)
custom_headersNoSet to true to have Scrapingdog forward custom HTTP headers you attach to the request (e.g. via a header like 'X-customheader') on to the target site. Useful for authentication-protected content or sites requiring specific headers. No additional cost. (default: false)
session_numberNoReuses the same proxy IP across multiple scraping requests. Any integer value creates or resumes a session; use the same number across requests to keep the same proxy. Sessions automatically expire 60 seconds after last use. No additional cost.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Very detailed credit costs, session reuse, CAPTCHA bypass, JavaScript rendering, and undocumented features disclosed. No annotations present, so description carries full burden and exceeds expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with main purpose first, then details. Slightly verbose in credit explanation but organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Comprehensive coverage of behavior, all parameters, return value, and limitations. No output schema but description explains raw HTML response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds significant meaning beyond schema: credit costs, defaults, parameter interactions (e.g., premium+dynamic). Schema coverage is 100% but description adds crucial operational context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Describes scraping any public webpage with specific verb and resource. Distinguishes from sibling tools which are specific site scrapers or search tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear context: 'Scrapes any public webpage' implies general purpose. No explicit when-not or alternatives, but context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe target URL to POST to, passed as a query string parameter (same as GET).
bodyYesRaw POST body forwarded verbatim to the target URL (e.g. form-encoded 'foo=bar&baz=1' or a JSON string). Scrapingdog relays it as its own POST body.
content_typeNoContent-Type header for the forwarded body (e.g. application/x-www-form-urlencoded or application/json). (default: application/x-www-form-urlencoded)

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It details mechanics (query-string parameters, method change), credit structure, and that the return value is the raw response body. It also mentions optional parameters like custom headers and wait. However, it does not cover error scenarios or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is lengthy and includes some redundancy (e.g., credit structure repeated). It front-loads the core purpose but could be more concise without losing necessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains the return value. It covers input parameters, behavior, and credits. It does not discuss error handling or edge cases, but for a 3-parameter tool it provides sufficient context for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining that the body is forwarded verbatim, the content_type default, and notes that api_key and url are query parameters (even though api_key is not in the input schema). This goes beyond the schema's descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it sends a POST request through Scrapingdog, with specific use cases like form submission or hitting POST-only APIs. It distinguishes itself from the GET variant, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use this tool (for POST requests) and implicitly contrasts with the GET version. It mentions that other /scrape parameters are available, but does not explicitly state when not to use it or provide direct alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe URL of the page for which you want to take a screenshot.
widthNoThe width of the browser viewport in pixels.
formatNoScreenshot output format. Available: png, jpg, webp. (default: png)
heightNoThe height of the browser viewport in pixels.
qualityNoImage quality setting, 0-100 range. (default: 80)
fullPageNoWhether to take a full-page screenshot (scrolling the whole page) or just the visible viewport portion without scrolling.
wait_untilNoDetermines when navigation is considered complete before taking the screenshot. Options: load, domcontentloaded, networkidle. (default: domcontentloaded)

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses return type (binary image data), credit cost (5 credits per request), and notes that no country/proxy/session parameters are documented. It also mentions the wait_until parameter controls load timing. This adds value beyond the schema and annotations (which are absent).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main action but includes extraneous details about documentation structure (e.g., 'only one of the fetched pages that ships a full, structured API Parameters reference table') that may not aid an AI agent. Could be more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, no output schema, and no annotations, the description adequately covers purpose, parameters, output type, and credit cost. It lacks error handling details but sufficiently describes the return format for a screenshot tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds credit cost and documentation notes but does not add significant new meaning beyond what the schema already provides for each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with 'Captures a screenshot of any webpage' which clearly states the action (captures) and resource (screenshot of webpage). It lists controllable aspects and distinguishes from the sibling 'scrape' by noting it's a distinct endpoint, providing clear differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives context by contrasting with /scrape endpoint, implying this tool is for image capture rather than HTML scraping. However, it does not explicitly state when to use this tool over other siblings or provide when-not conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 query; query_type=2 pairs with advertiser_id. Pagination is handled via next_page_token echoed in the response. Returns: { code, total, has_more, search_id, next_page_token, ads: [{ id, name, audit_status, type, first_shown_date, last_shown_date, videos: [{video_url, cover_img}], image_urls[], estimated_audience, spent, impression, show_mode, rejection_info, sor_audit_status }] }

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoKeyword to search for on TikTok Ads. Used for keyword search (query_type=1).
countryNoThe country to search ads from. (default: all)
sort_byNoSort order for results. Allowed values: `last_shown_date_newest_to_oldest` (default), `last_shown_date_oldest_to_newest`, `published_date_newest_to_oldest`, `published_date_oldest_to_newest`, `unique_users_seen_low_to_high`, `unique_users_seen_high_to_low`. (default: last_shown_date_newest_to_oldest)
query_typeNoType of search: `1` for keyword search (default), `2` for advertiser ID search. (default: 1)
time_periodNoCustom date range in `YYYY-MM-DD..YYYY-MM-DD` format. Defaults to the past 12 months if omitted.
advertiser_idNoUnique advertiser ID to search for ads from a specific advertiser. Used together with query_type=2.
next_page_tokenNoToken used to fetch the next page of results. Use the `next_page_token` value returned in the previous response.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully compensates by disclosing credits cost ('[Credits: 5 API credits per successful request]'), parameter pairing rules, pagination behavior, and the complete return structure including nested fields. This is a comprehensive disclosure of what the tool does and what to expect, exceeding typical expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences) and front-loaded with the core purpose. The second sentence densely packs credits, query type notes, pagination, and return structure, which could be more readable with bullet points or a list. However, it remains within acceptable length and contains no unnecessary fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 7 optional parameters and no output schema, the description covers all essential aspects: search modes, pagination, return fields, and credits. Missing details like error handling or rate limits are minor omissions. Overall, it is complete enough for an agent to use effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, meaning all parameters already have descriptions. The description adds context like pairing rules and default for `time_period`, but does not significantly enhance understanding beyond the schema. Baseline 3 is appropriate as the description adds modest value (e.g., credit cost mention) but does not fundamentally elevate parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Searches and extracts ad listings from TikTok's Ad Library by keyword or advertiser ID'. The verb 'searches and extracts' paired with the specific resource 'ad listings from TikTok's Ad Library' leaves no ambiguity. It distinguishes itself from sibling tools (e.g., google_ads_transparency, tiktok_post) by focusing on TikTok's Ad Library with specific parameter modes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains how to use the two query modes ('query_type=1 (default) pairs with `query`; query_type=2 pairs with `advertiser_id`') and how to paginate ('Pagination is handled via next_page_token echoed in the response'). While it doesn't explicitly state when not to use the tool, the context is clear enough for an agent to decide. A slightly higher score would require explicit exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 url parameter β€” one of these two approaches is required. Returns: { id, canonical_url, description, created_at, location, privacy, statistics: {plays, likes, comments, shares, collects}, video: {width, height, duration, quality, codec, play_url, download_url, subtitles[]}, music: {id, title, author, duration, audio_url, cover}, author: {id, username, verified, followers, following, likes, video_count}, hashtags: [{id, name}], mentions[], categories[], suggested_words[] }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoFull TikTok post URL, used instead of passing `username` and `post_id` separately. Example: `https://www.tiktok.com/@nba/video/7255379108241198378`.
post_idNoThe ID of the post to get data for. Required unless the `url` parameter is used (must be paired with username).
usernameNoThe username of the TikTok profile whose post you want to scrape. Required unless the `url` parameter is used (must be paired with post_id).

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses the return structure and credit cost, but does not explicitly state that the tool is read-only, nor does it mention potential errors, rate limits, or authentication needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main purpose, though the return structure is presented as a dense block. Overall, it avoids redundancy and is efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity, the description covers the key aspects: purpose, parameters, credit cost, and return format. No output schema exists, but the inlined return structure compensates. It is sufficiently complete for agent usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with good descriptions, and the description adds value by explaining the two identification approaches and providing an example URL, making parameter usage clearer.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it extracts detailed data for any TikTok post, listing specific fields like play counts, likes, comments, etc. However, it does not explicitly differentiate from sibling tools like tiktok_profile or scrape_post.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the two parameter approaches (url or username+post_id) and mentions credit cost, but does not provide guidance on when to use this tool over alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 }

ParametersJSON Schema
NameRequiredDescriptionDefault
usernameYesThe username of the TikTok profile to scrape (e.g., `nike`, `mrbeast`).

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description carries full weight. Mentions credit cost (5 per request) and lists all return fields comprehensively. No hidden behaviors like auth requirements or rate limits are disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is 4 sentences with clear structure: purpose, credit note, formatting note, return data. Could be slightly trimmed, but every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the detailed list of return fields is essential and provided. Lacks error handling or additional limitations, but given the tool's simplicity (single parameter, no pagination), it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter already described well. Description adds value by clarifying 'username is the TikTok handle without the @ symbol', which is a helpful nuance beyond the schema's examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb 'scrapes' with specific resource 'profile data for any TikTok user' and lists key data types (follower counts, engagement metrics, etc.). Distinguishes from siblings like tiktok_post and tiktok_ads by focusing on profile-level data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States the tool is for 'any TikTok user' and notes credit cost and username format, but does not explicitly contrast with alternatives or provide when-not-to-use guidance. Siblings include other TikTok tools, but no direct comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe Walmart search query to get autocomplete suggestions for (e.g. football, laptop).

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses credit cost per request, notes on missing localization documentation, and describes the return structure. However, it does not cover rate limits, authentication, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the purpose. It includes essential notes on credits, localization, pagination, and return structure without unnecessary words. Every sentence provides value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is simple with one parameter and no output schema, the description adequately covers purpose, return structure, and usage constraints. Minor omissions like error handling prevent a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with only one parameter (query) that includes an example. The main description adds no additional parameter semantics beyond what the schema already provides. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Walmart autocomplete search suggestions for any query, specifying it includes suggested search terms and category navigation data. This distinguishes it from sibling tools like google_autocomplete or walmart_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on credits, lack of localization parameters, and no pagination, but does not explicitly state when to use this tool versus alternatives like walmart_search or other autocomplete tools. Usage guidance is implied rather than direct.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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,...} }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe full Walmart product page URL to scrape (e.g. https://www.walmart.com/ip/46480251).

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavior: it mentions credit cost (5 per request), explains input format, notes no pagination, and provides a detailed return structure. This gives the agent clear expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main purpose. It includes credits, notes, and return structure in a single paragraph. Minor improvement could be more structured formatting, but it is effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (single parameter, no output schema), the description covers all necessary aspects: purpose, input, behavior, cost, and return data. No gaps are evident.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'url' is well-described in the schema. The description adds context that it must be a full product page URL (not an ID), which is helpful but not critical. With 100% schema coverage, the description adds moderate value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scrapes Walmart product pages via URL and lists the data retrieved (title, price, images, etc.). It distinguishes from sibling tools like walmart_reviews, walmart_search, and walmart_autocomplete, which handle different functions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes that a full product page URL is needed (not a product ID) and that localization is implicit, but it does not explicitly state when to use this tool versus alternatives. Usage context is implied but not directive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}] } }

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe full Walmart reviews page URL (e.g. https://www.walmart.com/reviews/product/317408869).

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses credit usage, return format, and limitations on pagination and localization. Does not mention rate limits or error handling, but adds useful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is structured with a clear purpose statement, followed by notes and return format. It is somewhat long but organized, with front-loaded key information. Some minor redundancy could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description details the full return structure and notes important limitations. For a single-parameter tool, it provides comprehensive context, making it self-contained for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds minimal extra context beyond the schema's description of the 'url' parameter, mainly giving an example URL. Does not significantly enhance semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it scrapes Walmart product reviews and returns ratings distribution, individual reviews, and top positive/negative feedback. Distinguishes from siblings like walmart_product and walmart_search by specifying the input is a reviews page URL.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides some usage context (no pagination parameters, credits cost) but does not explicitly state when to use this tool versus alternatives like walmart_product. Lacks direct guidance on when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the page to scrape and send to the configured webhook.
dynamicNoSet to true to enable JavaScript rendering (headless browser). Set to false for faster plain HTTP requests. (default: true)
webhook_idNoIdentifies the target webhook by name, as configured in the Scrapingdog dashboard. If omitted, the default webhook is used.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses the async behavior: immediate session ID response followed by asynchronous POST to webhook. It notes the undocumented webhook payload shape, which is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly verbose including a redundant 'Credits: Not specified' line and a returns section that repeats the notes. Could be tightened without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-param tool with no output schema, the description covers core behavior and return value. However, it lacks information on error handling, authentication requirements, or potential failure modes, leaving some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add further meaning to the parameters beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it receives scraped data at a configured webhook endpoint asynchronously, using a session ID pattern. It explicitly distinguishes from polling and is unique among sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It advises using this tool for async workflows and database pipelines, explicitly contrasting with polling. However, it does not specify when not to use or compare to synchronous scraping tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 }

ParametersJSON Schema
NameRequiredDescriptionDefault
tweetIdYesThe numeric tweet ID of the X post to scrape. Found in the post URL, e.g. for `twitter.com/i/web/status/1655608985058267139`, the ID is `1655608985058267139`.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses cost (5 API credits), how to extract tweetId from URL, and lists all return fields. While it doesn't mention failure modes or rate limits, it provides sufficient behavioral context for a read-only extraction tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is moderately sized with front-loaded purpose. Each sentence adds value: metrics list, credit cost, input note, return fields. Could be slightly trimmed, but overall efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description lists all return fields comprehensively. It covers input format, cost, output structure, and includes a usage note. For a single-parameter tool, this is complete and self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both schema and description explaining tweetId. Description adds redundant but clarifying example. Baseline 3 is appropriate as schema already does the heavy lifting and description adds marginal value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extracts detailed data for any X (Twitter) post, listing specific engagement metrics, content, and author info. The verb 'extracts' and resource 'X post' are specific and distinct from siblings like x_profile or search tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description does not mention when not to use it or suggest sibling tools. Usage is implied by the clear purpose, but lacking explicit context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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[] }

ParametersJSON Schema
NameRequiredDescriptionDefault
profileIdYesThe user ID or username of the X (Twitter) profile to scrape (e.g., `elonmusk`, `nasa`).

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It discloses the credit cost and return fields but lacks warnings about rate limits, authentication needs, or potential data staleness. This is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with clear structure: purpose, credit note, and return fields. No fluff, front-loaded with key verb 'scrapes'. Highly efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter scraping tool, the description covers purpose, param format with example, credit cost, and all return fields. No output schema exists, but the description compensates with a comprehensive field list. Complete for its complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value by clarifying that profileId accepts a plain handle without '@' and gives an example ('elonmusk'). It also later lists the return structure, aiding understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it scrapes comprehensive profile data for X users and lists specific data fields (follower counts, engagement metrics, etc.). However, it does not explicitly differentiate from sibling tools like 'account' or 'scrape'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for fetching profile data and includes credit cost, but provides no explicit guidance on when to use this tool versus alternatives (e.g., 'account' or 'scrape_post'). No when-not-to-use conditions are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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}.

ParametersJSON Schema
NameRequiredDescriptionDefault
lNoDistance or map radius string to narrow results by geographic area.
cfltNoCategory filter to narrow results to a specific Yelp category (e.g., 'restaurants', 'bars').
attrsNoRefine results by business attributes (e.g., 'GoodForKids', 'WheelchairAccessible').
startNoPagination offset. Use multiples of 10 to paginate through results (e.g., 10, 20). (default: 0)
sortbyNoSort method for results. Accepted values: recommended, rating, review_count. (default: recommended)
find_locYesTarget location for the search (e.g., 'San Francisco, CA').
find_descNoThe search query term (e.g., 'burger', 'pizza', 'coffee').
yelp_domainNoThe Yelp domain to scrape (e.g., 'yelp.com', 'yelp.co.uk').

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses credit cost (4 credits) and pagination scheme (start offset in increments of 10, next URL). However, lacks details on potential restrictions, rate limiting, or authentication requirements. Without annotations, more behavioral context would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is three sentences, front-loaded with purpose, and contains no unnecessary words. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description adequately explains the return structure (filters, ads, organic_results, pagination). Covers pagination details, credit cost, and domain targeting. Missing some nuance on parameter interdependencies but generally complete for a scraper tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%β€”every parameter is described in the schema. The tool description adds marginal semantics like pagination explanation and domain targeting, but overall adds limited value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb (extract), resource (business listings from Yelp), and key parameter categories (keyword, location, filters, sorting, pagination). Distinguishes from sibling scraper tools by targeting Yelp specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Does not provide when-to-use or when-not-to-use guidance. With many sibling scraper tools (e.g., google_search, amazon_search), explicit guidance on selecting this tool for Yelp-specific scraping is missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 channel_id selects Channel behavior. Requires the UC-prefixed channel ID, not a @handle. ENDPOINT VERIFIED LIVE 2026-07-10: docs show bare /youtube but the working endpoint is /youtube/channel. Returns: { about: {description, subscribers, videos, views, joined_date_text, joined_date, links:[{title,link}]}, channel: {handle, id, title, subscribers, videos, keywords, tags[], avatar, banner, is_family_safe, first_link}, highlighted_video: {id,title,link,views,published_time}, videos_sections: [{section_title, videos[]}], shorts_sections: [{section_title, videos: [{position,id,title,link,views,thumbnail}]}] }

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNoISO code of the country from which you are seeking YouTube results. (default: us)
languageNoLanguage of the results. Possible values: `en`, `es`, `fr`, `de`, etc. (default: en)
channel_idYesThe YouTube Channel ID, found in the channel URL (e.g., `youtube.com/channel/UCX6OQ3DkcsbYNE6H8uQQuVA`). This is the parameter that selects Channel behavior on the shared /youtube endpoint.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Discloses endpoint sharing, ID format requirement, and provides detailed return structure. Missing behavioral details like error handling, rate limits, or consequences of invalid input, but the return structure adds significant transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is front-loaded with main action ('Scrapes comprehensive YouTube channel data') followed by credits, endpoint note, ID requirement, and return structure. Fairly concise but includes a long JSON example; could be slightly tighter but still well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description provides a full, nested return structure with field details, credits, and endpoint notes. This compensates for the missing schema and gives complete context for an agent to understand what the tool returns and how to use it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds value by clarifying that channel_id must be UC-prefixed (not a handle) and that it selects Channel behavior. Also notes defaults for country and language from schema, though no major extra beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it scrapes comprehensive YouTube channel data including about info, subscriber counts, video sections, and Shorts. Distinguishes from sibling tools like youtube_search and youtube_video by focusing on channel data, and specifies it requires UC-prefixed channel ID, not a handle.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context: requires UC-prefixed channel ID, presence of channel_id selects Channel behavior on shared /youtube endpoint, and credits cost. However, does not explicitly state when not to use this tool versus alternatives like youtube_search or youtube_video, nor mention exclusions or prerequisites beyond the ID format.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 v + comment-specific params selects Comments behavior (distinguish from Transcripts/Video by the presence of next_page_token support and response shape). Each comment includes its own replies_next_page_token for paginating that comment's reply thread. ENDPOINT VERIFIED LIVE 2026-07-10: docs show bare /youtube but the working endpoint is /youtube/comments. Returns: { total_comments, comments: [{ comment_id, link, channel: {id,handle,link,thumbnail}, published_date, text, likes, replies, replies_next_page_token }], pagination: {next_page_token} }

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesVideo ID of the YouTube video whose comments you want to scrape, found in the video URL after `?v=`.
countryNoTwo-letter country code specifying search location (e.g., `us`, `uk`, `fr`). (default: us)
languageNoLanguage of the results. Possible values: `en`, `es`, `fr`, `de`, etc. (default: en)
next_page_tokenNoDefines the next page token for retrieving the next page of comments or replies. Use the `next_page_token` value from the previous response (top-level pagination.next_page_token, or a comment's own replies_next_page_token to fetch that comment's replies).

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses credits cost, endpoint verification, endpoint discrepancy (docs vs working), and detailed response structure including pagination tokens. Fully transparent about behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is structured with clear sections (credits, notes, endpoint note, returns) but is somewhat lengthy. Could omit some details or condense, but still effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so description must cover return format. It does so comprehensively with field names and types. Endpoint and pagination details are included. Complete for a 4-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. Description adds value by explaining next_page_token usage for paginating both comments and replies, and notes defaults for country/language. Exceeds baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool scrapes comments from YouTube videos, listing returned fields and pagination support. It distinguishes from sibling tools like youtube_transcripts and youtube_video by noting endpoint sharing and behavior differences.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on when to use (comments) and indicates differentiation from transcripts/video via next_page_token support and response shape. Implicitly advises against using for other YouTube data types, though explicit when-not-to-use is lacking.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 v (without search_query/channel_id) selects Transcripts behavior. This is the cheapest YouTube endpoint at 1 credit. ENDPOINT VERIFIED LIVE 2026-07-10: docs show bare /youtube but the working endpoint is /youtube/transcripts. Returns: { transcripts: [{ text, start, duration }] }

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesYouTube Video ID, found in the video URL after `?v=` (e.g., for `youtube.com/watch?v=0e3GPea1Tyg`, the ID is `0e3GPea1Tyg`). This is the parameter that selects Transcripts behavior on the shared /youtube endpoint.
countryNoISO code of the country from which you are seeking YouTube results. (default: us)
languageNoLanguage of the results/transcript. Possible values: `en`, `es`, `fr`, `de`, etc. (default: en)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the credit cost, shares the /youtube endpoint with other tools, and explains that the presence of `v` selects this behavior. It also describes the return format. It does not mention destructive actions, which is appropriate for a read-only tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly concise and front-loaded with the main purpose. It includes necessary operational notes (credits, endpoint sharing, verified live date, return format) without being overly verbose. Minor improvements could remove redundant info like the date.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description describes the return format. It also addresses the endpoint nuance and credit cost. It does not cover error conditions or prerequisites, but for a simple transcript extraction, it is fairly complete and distinguishable from sibling tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining that `v` selects the Transcripts behavior on the shared endpoint and provides an example of how to find the video ID. This enhances understanding beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool extracts the complete transcript from a YouTube video as an array of text segments with start time and duration. The verb 'extracts' and resource 'transcript' are specific, and it distinguishes itself from sibling tools like youtube_search, youtube_comments, and youtube_video.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions it is the cheapest YouTube endpoint at 1 credit and explains how the `v` parameter selects this behavior on the shared /youtube endpoint. It also notes the endpoint discrepancy (docs show bare /youtube but working endpoint is /youtube/transcripts). However, it does not explicitly say when not to use it, though the context with sibling tools makes it clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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 video_id (not v) to select Video-metadata behavior β€” this differs from Transcripts/Comments, which use v. ENDPOINT VERIFIED LIVE 2026-07-10: docs show bare /youtube but the working endpoint is /youtube/video. Param name is v (verified live; video_id returns an error). Returns: { video: {id, title, views, likes, author, published_time, description, keywords[], thumbnail}, channel: {id, name, link, subscribers, featured_channel:{id,name,link}, thumbnail}, comment: {total}, key_moments[], chapters[] }

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesYouTube video ID (docs call it video_id, but the live API requires the parameter name v). The YouTube Video ID, found in the video URL after `?v=` (e.g., for `youtube.com/watch?v=0e3GPea1Tyg`, the ID is `0e3GPea1Tyg`). This is the parameter that selects Video-metadata behavior on the shared /youtube endpoint (note the differing param name `video_id` vs `v` used by Transcripts/Comments).
countryNoTwo-letter country code for the YouTube video request (e.g., `us`, `uk`, `fr`). (default: us)
languageNoLanguage of the results. Possible values: `en`, `es`, `fr`, `de`, etc. (default: en)

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavior: credits cost, live-verified endpoint (/youtube/video), parameter name must be v (not video_id), full return structure, and default values. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is verbose, containing a full return JSON in text, verification notes, and credits info. While front-loaded with purpose, the length and unstructured details hurt conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description compensates thoroughly: includes endpoint verification, parameter differences, default values, and a complete return object shape. All 3 parameters are explained. Very complete for a scraping tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baselining at 3. The description adds significant value: clarifies that v is the video ID from URL, warns against using video_id, and explains country/language defaults. The live verification note is extra context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it scrapes detailed metadata for any YouTube video, listing specific fields (title, views, likes, description, etc.). It distinguishes from sibling tools by noting the differing parameter name for video metadata vs. transcripts/comments.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

While it doesn't give explicit when-to-use/when-not-to-use statements, it contrasts with transcript and comment tools by pointing out the parameter difference. This implies its usage for video metadata, but lacks clear alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

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} }.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe full Zillow URL to scrape (e.g., https://www.zillow.com/homes/for_sale/Brooklyn,-New-York,-NY_rb/). Built directly from the Zillow website using its filters.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must stand alone. It mentions credits cost (2 per request) and the need for a full URL, but does not disclose whether the tool is read-only, rate limits, or authentication requirements. The return object is detailed, partially compensating.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise but includes a lengthy sample return object inline. While front-loaded with the purpose, the return format details could be condensed. Every sentence adds value, but the structure could be tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description provides a comprehensive sample return object. However, it lacks information on error handling, result limits, or pagination. For a single-parameter tool, it covers the essential usage context well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'url' has a schema description that is minimal. The tool description adds critical context: the URL must be a full Zillow search-results URL built via Zillow's own UI, with examples. This significantly enhances understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'extract', resource 'real estate listings from any Zillow search page', and output 'structured property data'. It distinguishes itself from sibling tools by specifying Zillow as the source, which no other sibling covers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on constructing the input URL via Zillow's own UI and filters, and gives examples like for_sale, for_rent. It implies the tool is for Zillow listings but doesn't discuss when to avoid it or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 77 tool updatesv1.0.0
    • First observedaccount
    • First observedamazon_autocomplete
    • First observedamazon_offers
    • First observedamazon_product
    • First observedamazon_reviews
    • First observedamazon_search
    • First observedbaidu_search
    • First observedbing_search
    • First observedbing_shopping
    • First observedchatgpt_scraper
    • First observedduckduckgo_search
    • First observedebay_product
    • First observedebay_search
    • First observedflipkart_product
    • First observedflipkart_search
    • First observedgoogle_ads_transparency
    • First observedgoogle_ai_mode
    • First observedgoogle_ai_overview
    • First observedgoogle_autocomplete
    • First observedgoogle_finance
    • First observedgoogle_flights
    • First observedgoogle_hotels
    • First observedgoogle_images
    • First observedgoogle_immersive_product
    • First observedgoogle_jobs
    • First observedgoogle_lens
    • First observedgoogle_local
    • First observedgoogle_maps_photos
    • First observedgoogle_maps_places
    • First observedgoogle_maps_posts
    • First observedgoogle_maps_reviews
    • First observedgoogle_maps_search
    • First observedgoogle_news_search
    • First observedgoogle_news_v2
    • First observedgoogle_patent_details
    • First observedgoogle_patents
    • First observedgoogle_scholar
    • First observedgoogle_scholar_author
    • First observedgoogle_scholar_author_citation
    • First observedgoogle_scholar_cite
    • First observedgoogle_scholar_profiles
    • First observedgoogle_search
    • First observedgoogle_shopping
    • First observedgoogle_shorts
    • First observedgoogle_trends
    • First observedgoogle_trends_autocomplete
    • First observedgoogle_trends_trending_now
    • First observedgoogle_videos
    • First observedindeed_scraper
    • First observedlinkedin_company_profile
    • First observedlinkedin_job_overview
    • First observedlinkedin_jobs_search
    • First observedlinkedin_person_profile
    • First observedlinkedin_post
    • First observedmyntra_product
    • First observedmyntra_search
    • First observedscrape
    • First observedscrape_post
    • First observedscreenshot
    • First observedtiktok_ads
    • First observedtiktok_post
    • First observedtiktok_profile
    • First observeduniversal_search
    • First observedwalmart_autocomplete
    • First observedwalmart_product
    • First observedwalmart_reviews
    • First observedwalmart_search
    • First observedwebhook
    • First observedx_post
    • First observedx_profile
    • First observedyelp_scraper
    • First observedyoutube_channel
    • First observedyoutube_comments
    • First observedyoutube_search
    • First observedyoutube_transcripts
    • First observedyoutube_video
    • First observedzillow_scraper

TDQS

A3.6/5.0
Disambiguation4/5

Each tool targets a specific platform and function (e.g., google_search vs google_images), making distinctions clear. Minor overlap exists between universal_search and google_search, but descriptions resolve ambiguity.

Naming Consistency4/5

Most tools follow a consistent 'service_function' pattern (e.g., amazon_product, google_images). A few tools like 'scrape' and 'account' lack a service prefix, causing slight inconsistency.

Tool Count1/5

With 77 tools, the server far exceeds the typical well-scoped range (3-15). This overwhelming number forces agents to sift through many options, increasing selection complexity and potential errors.

Completeness4/5

Coverage is broad, including search, product details, reviews, profiles, and posts for most major platforms. Some niche endpoints (patents, scholarships) are included, though a few services (e.g., Indeed, Yelp) have only one tool.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

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