Skip to main content
Glama
Darshan972

Scrapingdog MCP Server

by Darshan972

Scrapingdog MCP Server

A Model Context Protocol server that exposes the Scrapingdog web-scraping and SERP APIs as tools any MCP-compatible client (Claude Desktop, Claude Code, Cursor, etc.) can call.

One tool per Scrapingdog product — general web scraping, the full Google family, Amazon, Walmart, eBay, LinkedIn, X, YouTube, Bing, Baidu, and screenshots.

Requirements

  • Node.js ≥ 18

  • A Scrapingdog API key — get one on your dashboard.

Related MCP server: mcp-services

Install & build

npm install
npm run build

Configuration

The server reads your API key from the SCRAPINGDOG_API_KEY environment variable. It is never passed as a tool argument, so it stays out of the model's context, transcripts, and logs.

Variable

Required

Default

Description

SCRAPINGDOG_API_KEY

yes

Your Scrapingdog API key.

SCRAPINGDOG_API_BASE

no

https://api.scrapingdog.com

Override the API base URL.

SCRAPINGDOG_TIMEOUT_MS

no

90000

Per-request timeout in milliseconds.

Claude Desktop

Add to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "scrapingdog": {
      "command": "node",
      "args": ["/absolute/path/to/ScrapingdogMCP/dist/index.js"],
      "env": {
        "SCRAPINGDOG_API_KEY": "your_api_key_here"
      }
    }
  }
}

Claude Code

claude mcp add scrapingdog -e SCRAPINGDOG_API_KEY=your_api_key_here -- node /absolute/path/to/ScrapingdogMCP/dist/index.js

Available tools

35 tools. Each tool's full parameter set (with descriptions and API defaults) is generated from src/endpoints.ts and surfaced to the client as the tool's input schema. All paths were validated against the live API except amazon_reviews (⚠️) — see Known issues.

General

Tool

Scrapingdog endpoint

Key required args

web_scrape

/scrape

url

Google family

Tool

Scrapingdog endpoint

Key required args

google_search

/google

query

google_maps

/google_maps

query

google_news

/google_news/v2

— (query or a *_token)

google_trends

/google_trends

query

google_shopping

/google_shopping

query

google_scholar

/google_scholar

query (or cites)

google_jobs

/google_jobs

query

google_finance

/google_finance

query

google_lens

/google_lens

url

google_ai_mode

/google/ai_mode

query

google_ai_overview

/google/ai_overview

url

google_shorts

/google_shorts

query

google_hotels

/google_hotels

query, check_in_date, check_out_date

google_patents

/google_patents

query

google_immersive_product

/google_immersive_product

page_token

google_images

/google_images

query

E-commerce

Tool

Scrapingdog endpoint

Key required args

amazon_search

/amazon/search

query, domain, page, country

amazon_product

/amazon/product

asin

amazon_reviews ⚠️

/amazon/reviews

asin

amazon_offers

/amazon/offers

asin

walmart_search

/walmart/search

url

ebay_search

/ebay/search

url

Social / professional

Tool

Scrapingdog endpoint

Key required args

linkedin_profile

/linkedin

type, linkId

x_profile

/x/profile

profileId

youtube_search

/youtube

search_query

youtube_transcripts

/youtube/transcripts

v

youtube_video

/youtube/video

v

youtube_channel

/youtube/channel

channel_id

youtube_comments

/youtube/comments

v

Other search engines

Tool

Scrapingdog endpoint

Key required args

bing_search

/bing/search

query

baidu_search

/baidu/search

query

universal_search

/search

query

AI / LLM & tools

Tool

Scrapingdog endpoint

Key required args

chatgpt

/chatgpt

prompt

screenshot

/screenshot

url (returns an image)

Known issues

All 35 endpoints were validated against the live API and return data, with one exception:

  • amazon_reviews — the /amazon/reviews route is correct, but the live endpoint currently responds HTTP 400 "Something went wrong" for every input (any ASIN, with or without extra params). This looks like a Scrapingdog backend/plan-scope issue rather than a wrapper bug. It stays marked with verify: true in src/endpoints.ts until it returns data. List flagged endpoints anytime with:

npm run list:unverified

Adding or adjusting an endpoint

Every endpoint is a single declarative object in src/endpoints.ts — no handler code to write. To add a Scrapingdog product (e.g. Google Hotels, Patents, TikTok), append:

{
  tool: "google_hotels",
  title: "Google Hotels API",
  path: "/google_hotels",
  description: "…",
  params: [
    { name: "query", type: "string", required: true, description: "…" },
    // …
  ],
}

Rebuild with npm run build.

Architecture

src/
  types.ts       Endpoint / EndpointParam type definitions
  endpoints.ts   Declarative registry of every Scrapingdog API
  client.ts      HTTP client: URL building, API-key resolution, error handling
  server.ts      Compiles each endpoint into an MCP tool + Zod input schema
  index.ts       stdio entry point

License

MIT

Available Tools

35 tools
amazon_offersAmazon Offers APIA

Fetch all buying offers and sellers for an Amazon product by ASIN.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYesAmazon ASIN of the product.
domainNoAmazon TLD, e.g. com, in, de, co.uk. (API default: com)
countryNoTwo-letter ISO marketplace country code. (API default: us)

TDQS

A3.5/5.0
Behavior2/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 of disclosing behavioral traits. It only says 'Fetch', implying a read-only operation, but does not mention what 'all' means (e.g., pagination), how domain/country affects results, or any error behavior. This is sparse for a tool with no annotation support.

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, well-structured sentence that immediately states the action and resources. No unnecessary words or repetition.

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-parameter tool, the description gives the core functionality but omits information about the return format, the exact effect of optional parameters, and whether 'all' implies pagination. Given no output schema and no annotations, the description is adequate but not thorough.

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 each parameter described. The description adds no extra meaning beyond the schema, so the baseline 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 uses a specific verb ('Fetch') with a clear resource ('all buying offers and sellers') and identifies the key input ('by ASIN'). It distinguishes this tool from siblings like amazon_product or amazon_reviews, which focus on other product aspects.

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 when to use the tool (when offers/sellers are needed) but provides no explicit guidance on when not to use it or alternatives. With many sibling tools, this lack of differentiation guidance is a gap, though the purpose is clear enough to infer basic use.

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

amazon_productAmazon Product APIA

Scrape a single Amazon product page (price, specs, ratings) by ASIN.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYesAmazon Standard Identification Number (ASIN) of the product.
domainNoAmazon TLD, e.g. com, in, de, co.uk. (API default: com)
countryNoTwo-letter ISO marketplace country code. (API default: us)
postal_codeNoPostal/ZIP code to localize price and availability.

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions the scraping action and basic data types, but does not disclose potential rate limits, anti-bot challenges, error handling, or the structure of the response. This leaves significant behavioral aspects undocumented.

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 sentence that front-loads the core action and target. It contains no redundant information and every word contributes to understanding the tool's function.

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 tool with a well-documented schema, the description covers the primary purpose and output content. However, the lack of an output schema and annotations means the description should explain more about return values, error cases, and usage constraints. It is minimally adequate but leaves gaps for complex scenarios.

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?

The schema already provides 100% parameter documentation, so the description need not repeat it. The description adds 'by ASIN' reinforcing the required parameter, but does not explain the optional domain, country, or postal_code parameters beyond what the schema already states. This meets the baseline for a well-documented 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 ('Scrape'), the resource ('a single Amazon product page'), the key input ('by ASIN'), and the data captured ('price, specs, ratings'). This distinguishes it from sibling tools like amazon_search (search) and amazon_reviews (reviews), making the purpose explicit and unambiguous.

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 retrieving details of a specific product via ASIN, but it does not explicitly mention when to choose this over alternatives like amazon_search or amazon_reviews. There are no exclusions or alternative references, so the guidance is only implied, not stated.

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

amazon_reviewsAmazon Reviews APIA

Scrape customer reviews, ratings and reviewer details for an Amazon product by ASIN.

ParametersJSON Schema
NameRequiredDescriptionDefault
asinYesAmazon ASIN of the product.
pageNoReviews page number, starting at 1. (API default: 1)
domainNoAmazon TLD, e.g. com, in, de, co.uk. (API default: com)
countryNoTwo-letter ISO marketplace country code. (API default: us)

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the behavioral disclosure burden. It only says 'Scrape' without indicating whether it is read-only, any rate limits, anti-bot risks, or output format. It does not disclose behavioral traits beyond the literal act of scraping.

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, front-loaded sentence that directly states the tool's purpose and key input. Every word contributes meaning with no redundancy or filler.

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

Completeness2/5

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

With no output schema and no annotations, the description should provide more context about the response structure, pagination behavior, or error conditions. It mentions the high-level outputs (reviews, ratings, reviewer details) but lacks details on how many reviews per page, sort order, or what data fields to expect.

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?

All parameters (asin, page, domain, country) have descriptions in the schema, giving 100% coverage. The description adds no additional parameter semantics; it only reiterates the ASIN requirement already present in 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 uses the specific verb 'Scrape' with a clear resource ('customer reviews, ratings and reviewer details') and a clear identifier ('by ASIN'). This distinguishes it from sibling tools like amazon_search (search) and amazon_product (product details).

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 implies the tool is for when you have an ASIN and want reviews for that specific product. It does not explicitly mention when not to use it or provide alternatives, but the 'by ASIN' constraint gives clear context for usage.

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

chatgptChatGPT Scraper APIB

Send a prompt to ChatGPT and get the response as structured JSON, at scale.

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
promptYesThe prompt to send to ChatGPT.

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions sending a prompt to ChatGPT and returning structured JSON, but does not disclose potential side effects, rate limits, external dependencies, authentication requirements, or error behavior. The phrase 'at scale' is vague and lacks concrete detail.

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 sentence of 14 words. It front-loads the primary action and output, with no redundant information. Every word serves a purpose, including 'at scale' to imply batch/high-volume usage.

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

Completeness2/5

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

Despite the tool being simple (2 params, no output schema, no annotations), the description lacks important contextual information such as when to use it, what to expect regarding response structure beyond 'JSON', and any operational constraints. An agent would have insufficient information to confidently select this tool over similar search/scraping tools.

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 parameters ('prompt' and 'html') having clear descriptions. The tool description adds minimal value beyond the schema, though it does reinforce that the default output is structured JSON (consistent with html=false). The baseline of 3 for full schema coverage 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 action ('Send a prompt'), the resource ('ChatGPT'), and the outcome ('response as structured JSON, at scale'). It uniquely identifies this tool among the sibling tools, none of which mention ChatGPT. The verb+resource+output structure is specific and immediately understood.

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?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any exclusions or prerequisites. It simply states what the tool does without contextual decision-making support. There is no reference to sibling tools or specific use cases.

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

google_ai_modeGoogle AI Mode APIC

Retrieve Google's AI Mode conversational answer for a query.

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
safeNoAdult-content filter. (API default: off)
queryYesThe query to search in Google AI Mode.
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
locationNoSearch origin location. Incompatible with uule.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It implies a read-only retrieval action but does not mention response format, authentication requirements, rate limits, or any side effects. The phrase 'conversational answer' gives a hint but not enough detail about the actual output structure.

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, front-loaded sentence with no wasted words. It efficiently states the core action and resource. While it is terse, that is not a structural flaw; the under-specification is penalized in other dimensions.

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

Completeness2/5

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

Despite complete schema coverage, the tool lacks an output schema and annotations. The description gives no indication of what the retrieved 'conversational answer' looks like (e.g., text, JSON structure, citations). This is a critical gap for an agent to correctly process the tool's result. Usage guidance is also absent, making the overall context incomplete.

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?

The input schema has 100% coverage with each parameter (query, html, safe, country, language, location) having a meaningful description. The tool description itself adds no extra parameter context, but the schema fully compensates, so a baseline score of 3 is appropriate.

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 uses a specific verb 'Retrieve' with a clear resource ('Google's AI Mode conversational answer') and a query object. It is clear and unambiguous, though it does not explicitly contrast with the sibling tool google_ai_overview, which may have overlapping functionality.

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?

The description provides no guidance on when to use this tool versus alternatives such as google_search or google_ai_overview. There is no mention of scenarios, exclusions, or preferred use cases, so the agent gets no decision support.

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

google_ai_overviewGoogle AI Overview APIA

Fetch the Google AI Overview block for a search. Pass the AI-overview URL returned in a google_search response (that URL expires ~2 minutes after it is issued).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesAI Overview URL taken from a google_search response. Expires ~2 minutes after issuance.

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral disclosure burden. It discloses the URL expiry (~2 minutes), which is critical context. However, it does not describe the response format, error behavior, or any rate limits, leaving gaps for a fetch 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 two sentences, front-loaded with the main action, and contains no filler. It efficiently conveys the purpose and the key usage constraint.

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 simple single-parameter tool, the description covers the what, how, and a critical temporal constraint. However, the absence of an output schema means the description could have mentioned the expected return format, but this is a minor gap given the tool's simplicity.

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?

The schema already provides a complete description of the 'url' parameter (source and expiry). The tool description essentially repeats this information without adding new semantics, so the 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?

The description clearly states the tool's action ('Fetch the Google AI Overview block') and its specific resource ('for a search'). It distinguishes itself from siblings by referencing the AI-overview URL from google_search responses, which clarifies its role in the search workflow.

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 clear context: use this after a google_search to fetch the AI Overview block using the returned URL. It does not explicitly exclude alternatives or mention when not to use, so it falls short of a 5.

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

google_financeGoogle Finance APIB

Fetch live stock quotes and market data from Google Finance.

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
queryYesTicker in Google Finance format, e.g. GOOGL:NASDAQ or NIFTY_50:INDEXNSE.
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

B3.4/5.0
Behavior2/5

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

Since no annotations are provided, the description carries the full burden of behavioral disclosure. It only says 'fetch' without mentioning potential rate limits, authentication, data freshness, or response formats. It does not even explicitly confirm it is read-only, although 'fetch' implies it. This is a minimal disclosure that does not prepare the agent for possible behavioral nuances.

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, concise sentence with no unnecessary words. It front-loads the main action ('Fetch live stock quotes and market data') and source ('from Google Finance'), making it easy to parse and immediately informative.

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 tool with three parameters, one required, no output schema, and no nested objects, the complexity is low. The description gives a clear purpose, and the schema documents all parameters. It lacks detail on response structure and potential limitations, but given its simplicity, the description is sufficiently complete for an agent to invoke the tool 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?

The schema has 100% coverage of parameter descriptions, including ticker format and language code, so the baseline is 3. The description adds no additional meaning beyond the schema, such as examples or parameter constraints. It does not compensate or elaborate on any parameter specifics.

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 fetches live stock quotes and market data from Google Finance, using a specific verb and resource. This distinguishes it from sibling tools like google_news or google_search, which serve different purposes. The action and scope are immediately clear.

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 is provided on when to use this tool versus alternatives, nor are any exclusions or alternative tools mentioned. Usage is only implied by the tool name and purpose, not explicitly stated. An agent is left without clear direction on when to choose google_finance over other search tools.

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

google_hotelsGoogle Hotels APIB

Get hotel and vacation-rental prices, ratings and availability from Google Hotels.

ParametersJSON Schema
NameRequiredDescriptionDefault
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
queryYesHotel search query (e.g. 'hotels in Paris').
adultsNoNumber of adults. (API default: 2)
ratingNoMin rating: 7=3.5+, 8=4.0+, 9=4.5+.
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
sort_byNoSort: 3=lowest price, 8=highest rating, 13=most reviews.
childrenNoNumber of children. (API default: 0)
currencyNoPricing currency. (API default: USD)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
max_priceNoMaximum price filter.
min_priceNoMinimum price filter.
hotel_classNoStar class filter (2-5), comma-separated.
check_in_dateYesCheck-in date, YYYY-MM-DD.
children_agesNoComma-separated child ages 1-17 (e.g. '5,8,10').
check_out_dateYesCheck-out date, YYYY-MM-DD.
property_tokenNoToken for detailed property information.
next_page_tokenNoPagination token from a previous response.
vacation_rentalsNoSearch vacation rentals instead of hotels. (API default: false)
free_cancellationNoOnly show free-cancellation options.

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden for behavioral disclosure, but it only mentions the data returned (prices, ratings, availability). It does not address pagination tokens, output format, rate limits, or any side effects, leaving significant behavioral gaps.

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, front-loaded sentence that directly captures the core function without waste. It is concise and well-structured, with every word contributing to the purpose.

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

Completeness2/5

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

Given the tool's complexity (19 parameters) and lack of an output schema, the description is notably incomplete. It does not explain how to use next_page_token for pagination, what property_token does, or what the response structure looks like, making it difficult for an agent to fully understand the tool's behavior.

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?

The input schema provides 100% parameter coverage with detailed descriptions for each of the 19 parameters, so the description does not need to add additional semantics. The description adds no parameter-specific explanation beyond the schema, landing at 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 uses a specific verb 'Get' and clearly identifies the resource: hotel and vacation-rental prices, ratings, and availability from Google Hotels. This distinguishes it from sibling tools like google_maps or google_shopping, making the purpose unmistakable.

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 is provided on when to use this tool versus alternatives such as google_maps or google_shopping, nor are any prerequisites or exclusions mentioned. The description simply states what the tool does, leaving the agent without direction for tool selection.

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

google_imagesGoogle Images APIB

Get Google Images search results with sources and thumbnails.

ParametersJSON Schema
NameRequiredDescriptionDefault
tbsNoAdvanced filter (size, color, type, time range).
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
safeNoAdult-content filter. (API default: off)
queryYesImage search query.
startNoResult offset (e.g. 20 skips the first 20).
domainNoCountry-specific Google domain (e.g. google.co.uk, google.co.in). (API default: google.com)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full responsibility for behavioral disclosure. It only mentions 'sources and thumbnails' but does not explain any constraints, rate limits, pagination behavior, or response structure. This is insufficient for a tool with 8 parameters and no output schema.

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, well-structured sentence that is immediately informative. Every word contributes value, with no redundant phrases or unnecessary context, making it highly concise and easy to parse.

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

Completeness2/5

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

Despite covering the core purpose, the description omits crucial context: usage guidelines, behavioral nuances, and details about the return format. Since there is no output schema, the description should at least indicate the structure or content of the response beyond 'sources and thumbnails', but it does not.

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?

The input schema covers all 8 parameters with descriptions (100% coverage), so the description does not need to repeat parameter details. However, it also does not add any extra meaning beyond the schema, such as example values or parameter interactions, warranting the baseline score 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 uses a specific verb 'Get' and identifies the exact resource 'Google Images search results', clearly distinguishing it from general search tools like google_search. It also highlights the key output components ('sources and thumbnails'), giving a precise understanding of what the tool does.

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?

There is no guidance on when to use this tool versus alternatives like google_lens or google_search. No context is provided about use cases, exclusions, or preferred scenarios, leaving the agent to infer usage solely from the tool name.

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

google_immersive_productGoogle Immersive Product APIB

Retrieve detailed product info from Google's immersive product popup via a page token.

ParametersJSON Schema
NameRequiredDescriptionDefault
soriNoSeller pagination cursor; works with stores.
storesNoEnable seller pagination (requires sori). (API default: false)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
page_tokenYesImmersive-product token (from a Google Shopping/Search response).

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations provided, the description is the sole source of behavioral disclosure. It discloses that the operation is a retrieval ('Retrieve'), but gives no details about response behavior, error cases, or rate limits, and does not explain what 'immersive product popup' entails beyond the name.

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 sentence, front-loaded with the main action and resource, and contains no filler words. It is appropriately concise for its purpose.

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

Completeness2/5

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

The tool has no output schema and no annotations, leaving the description to carry contextual weight, but it offers minimal information about the response format or how to obtain the page token. While the schema fully documents parameters, the description does not sufficiently compensate for the lack of output schema and behavioral context.

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?

The input schema covers 100% of the parameters with detailed descriptions, so the description does not need to add parameter information. The description mentions only 'page token' in passing and adds no additional semantic 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 uses a specific verb 'retrieve' and specifies the resource 'detailed product info from Google's immersive product popup', which clearly distinguishes it from broader siblings like google_shopping and google_search. It also states the mechanism ('via a page token'), making the tool's function unambiguous.

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 through 'via a page token', indicating a prerequisite from a prior Google Shopping/Search response, but it does not provide explicit guidance on when to prefer this tool over alternatives like google_shopping or google_lens. There are no exclusions or alternative tool references.

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

google_jobsGoogle Jobs APIC

Scrape job listings aggregated across Google Jobs.

ParametersJSON Schema
NameRequiredDescriptionDefault
chipsNoExtra query filters from the Google Jobs UI.
ltypeNoWork-from-home filter.
queryYesJob search query.
domainNoCountry-specific Google domain (e.g. google.co.uk, google.co.in). (API default: google.com)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language, e.g. en_us. (API default: en_us)
next_page_tokenNoToken from a previous response to fetch the next page.

TDQS

C2.4/5.0
Behavior1/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure, but it only states 'Scrape job listings' without mentioning pagination, rate limits, output format, or any other behavioral traits. It adds no value beyond the basic action.

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 a single sentence with no fluff, but it is under-specified for a tool with 7 parameters. It is concise but not appropriately informative, earning a middle score.

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

Completeness2/5

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

Given the lack of annotations, no output schema, and the tool's complexity (7 params, pagination via next_page_token), the description is far too minimal. It doesn't explain response structure or pagination, leaving agents under-informed.

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?

The schema already provides full descriptions for all 7 parameters (100% coverage), so the baseline is 3. The description adds no additional parameter context, but the schema covers the load, making this acceptable.

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 uses a specific verb 'Scrape' and a clear resource 'job listings aggregated across Google Jobs', clearly distinguishing it from generic search tools. However, it doesn't explicitly name sibling tools or alternatives, preventing a perfect score.

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

Usage Guidelines1/5

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

No guidance is given on when to use this tool vs. alternatives like google_search or web_scrape. The description lacks any context, exclusions, or alternative references, leaving the agent without selection criteria.

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

google_lensGoogle Lens APIA

Reverse-image search via Google Lens for visual matches and products.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the image to run through Google Lens.
queryNoOptional text query to run alongside the image.
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
productNoEnable product results. (API default: false)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
exact_matchesNoEnable exact-match results. (API default: false)
visual_matchesNoEnable visual-match results. (API default: false)

TDQS

A3.6/5.0
Behavior2/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 of behavioral disclosure. It only states the function and says nothing about output format, rate limits, authentication, or result structure. This is a significant gap for a tool with no annotation support.

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, front-loaded sentence with zero wasted words. It immediately communicates the core action and the specific result types, making it highly scannable.

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

Completeness2/5

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

Although the schema is thorough, the tool has 7 parameters, no output schema, and no annotations. The description does not explain what the response looks like, how to choose between result types, or any behavioral nuances. This makes it insufficient for fully understanding the tool's context.

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?

The input schema documents all 7 parameters with descriptions, achieving 100% coverage, so the baseline is 3. The description adds little beyond the schema—only mentioning 'visual matches and products' which maps to existing schema fields, but does not enrich understanding of the 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?

The description uses a specific verb ('Reverse-image search') and resource ('via Google Lens'), and explicitly states the scope ('for visual matches and products'). This clearly distinguishes it from siblings like google_search or google_images.

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 clearly implies the tool is for reverse-image search and mentions two output categories (visual matches, products), giving clear context. However, it does not explicitly mention when not to use it or name alternative tools, so it stops one step short of a full 5.

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

google_mapsGoogle Maps APIC

Scrape local business listings and place details from Google Maps.

ParametersJSON Schema
NameRequiredDescriptionDefault
llNoGPS origin as @latitude,longitude,zoom (e.g. @40.7,-74.0,14z). Required for pagination.
dataNoGoogle Maps 'data' filter string copied from a Maps URL.
pageNoPagination offset; increment by 20. Requires ll. (API default: 0)
typeNoResult type.
queryYesGoogle Maps search query, e.g. 'pizza'.
domainNoCountry-specific Google domain (e.g. google.co.uk, google.co.in). (API default: google.com)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
place_idNoUnique Google Maps place identifier (for place lookups).

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only says 'scrape' and gives no information about rate limits, pagination behavior, authentication requirements, or data output format, which is a significant gap 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.

Conciseness5/5

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

The description is a single, clear sentence that immediately conveys the tool's purpose. No filler or unnecessary repetition exists, making it appropriately concise and front-loaded.

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

Completeness2/5

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

Despite full schema coverage, the tool has 9 parameters and no annotations or output schema. The description lacks context about how scraping works, typical usage patterns, pagination, or what the results look like, making it incomplete for an agent to safely and effectively invoke.

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?

The input schema provides descriptions for all 9 parameters with 100% coverage, so the baseline is 3. The description adds no extra parameter semantics beyond what the schema already documents, such as the meaning of 'll' or 'data'.

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 identifies the action ('scrape') and resource ('local business listings and place details from Google Maps'). It specifies the domain, but does not explicitly contrast with sibling tools like google_search or web_scrape, so it lacks strong differentiation.

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 is provided on when to use this tool versus alternatives. The description does not mention use cases, prerequisites, or exclusions, leaving the agent to infer suitability from the name alone.

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

google_newsGoogle News APIB

Scrape Google News headlines, sources and timestamps.

ParametersJSON Schema
NameRequiredDescriptionDefault
soNoSort order (only with story_token): 0 = relevance, 1 = date. (API default: 0)
queryNoSearch terms. Supports operators like site: and when:. Cannot combine with *_token params.
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
topic_tokenNoTopic identifier (World, Business, Technology, ...). Mutually exclusive with query.
section_tokenNoSubsection token; only with topic_token or publication_token.
publication_tokenNoPublisher identifier. Mutually exclusive with query.

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only mentions output components, not pagination, rate limits, limitations, or whether it returns full content. The term 'scrape' implies unofficial access but no specifics are provided.

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?

One sentence, immediately front-loaded with the action and result. No filler words, fully 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?

The schema richly documents 7 parameters, and the description conveys core purpose and return values. However, it does not introduce the query vs. token modes or geo/language options, which are discoverable via schema but would benefit from a brief mention. Still, adequate given schema support.

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 all 7 parameters are documented in the schema. The description itself adds no parameter-level meaning beyond mentioning output types, which is not parameter semantics. 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 uses a specific verb 'scrape' with resource 'Google News' and lists return types (headlines, sources, timestamps), clearly differentiating from siblings like google_search and google_trends.

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. The description only states the action without exclusions or comparisons to sibling tools like google_search or google_ai_overview.

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

google_patentsGoogle Patents APIC

Search patent records and metadata via Google Patents.

ParametersJSON Schema
NameRequiredDescriptionDefault
numNoResults per page (1-100). (API default: 10)
pageNoZero-based page number. (API default: 0)
sortNoSort order.
typeNoFilter by type.
afterNoMin date as type:YYYYMMDD (type = priority|filing|publication).
queryYesSearch terms; separate multiple with semicolons.
beforeNoMax date as type:YYYYMMDD (type = priority|filing|publication).
statusNoFilter by status.
countryNoComma-separated country codes (e.g. WO,US).
scholarNoInclude Google Scholar results. (API default: false)
assigneeNoComma-separated assignee names.
inventorNoComma-separated inventor names.
languageNoComma-separated languages (e.g. ENGLISH,GERMAN).

TDQS

C2.7/5.0
Behavior1/5

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

With no annotations, the description carries full responsibility for behavioral disclosure, but it only says 'search,' revealing nothing about return format, pagination, filtering behavior, or limitations.

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, front-loaded sentence that efficiently communicates the core purpose without any wasted words or redundancy.

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

Completeness1/5

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

For a tool with 13 parameters, no annotations, and no output schema, this description is severely under-specified. It lacks any detail on return values, edge cases, or how to construct effective queries.

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?

The input schema covers all 13 parameters with individual descriptions, so the baseline is 3. The description adds no additional parameter meaning, but the schema is sufficient.

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 'Search patent records and metadata via Google Patents,' using a specific verb and resource. It distinguishes itself from siblings like google_search and google_scholar by focusing on patents.

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

Usage Guidelines1/5

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

No guidance is provided on when to use this tool versus alternatives. It mentions no exclusions, prerequisites, or contexts, leaving the agent without any decision-making information.

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

google_scholarGoogle Scholar APIB

Search academic papers, authors and citation counts via Google Scholar.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoZero-based page number. (API default: 0)
citesNoArticle id for 'Cited by' searches.
queryNoSearch query (optional when using cites).
as_sdtNoSearch type / filter (patents, case law, courts).
as_yhiNoFilter: results up to this year.
as_yloNoFilter: results from this year onward.
resultsNoResults per page.
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

B3.2/5.0
Behavior2/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 of behavioral transparency. It only states the basic search functionality and does not disclose behaviors such as pagination, return format, rate limits, or the purpose of specific parameters like 'cites' for citation tracking.

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, clear, front-loaded sentence with absolutely no filler. It efficiently communicates the core purpose without unnecessary detail.

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

Completeness2/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 and annotations, the description is too minimal to fully inform an agent about response structure, pagination, or how to combine optional parameters. It only covers the basic action, leaving significant gaps for a tool with 8 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?

The schema provides a 100% coverage of all 8 parameters with descriptions, so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already documents, which is acceptable but not enhancing.

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 identifies the tool's function: 'Search academic papers, authors and citation counts via Google Scholar.' It uses a specific verb ('Search'), names the resource (academic papers, authors, citation counts), and distinguishes it from sibling tools like google_search or google_patents.

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?

The description provides no guidance on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or sibling comparisons. The academic context is implied but not explicitly stated as a differentiator from other search tools.

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

google_shoppingGoogle Shopping APIB

Scrape product listings and prices from Google Shopping.

ParametersJSON Schema
NameRequiredDescriptionDefault
tbsNoAdvanced result filter.
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
pageNoZero-based page number. (API default: 0)
safeNoAdult-content filter. (API default: off)
queryYesProduct search term.
domainNoCountry-specific Google domain (e.g. google.co.uk, google.co.in). (API default: google.com)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries full responsibility for disclosing behavior. It only says 'scrape' without explaining output format, pagination, rate limits, or other operational traits. This is a minimal disclosure that leaves significant behavioral aspects undisclosed.

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 sentence with no redundant words. It is front-loaded with the action and subject, making it highly concise and easy to parse. Every word contributes meaning.

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

Completeness2/5

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

With 8 parameters, no annotations, and no output schema, the one-line description is insufficient. It does not explain return value structure, pagination behavior, or how parameters like domain, country, and language affect results, leaving significant gaps for an agent to use the tool 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?

The input schema has 100% parameter description coverage, so the baseline is 3. The tool description adds no additional parameter semantics beyond what the schema already provides, but it also does not need to, given the schema's completeness.

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 'Scrape product listings and prices from Google Shopping' uses a specific verb ('scrape') and resource ('product listings and prices from Google Shopping'), clearly distinguishing it from sibling tools like google_search or amazon_search. It is precise and unambiguous.

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 usage guidance is provided. The description does not indicate when to use this tool instead of alternatives, nor does it mention any exclusions or prerequisites. It simply states what it does, leaving the agent without contextual direction.

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

google_shortsGoogle Shorts APIC

Retrieve Google short videos with sources, thumbnails and dates.

ParametersJSON Schema
NameRequiredDescriptionDefault
lrNoRestrict results to specific language(s).
tbsNoAdvanced result filter.
htmlNoReturn raw HTML instead of parsed JSON. (API default: false)
nfprNoSet 1 to exclude auto-corrected misspellings. (API default: 0)
safeNoAdult-content filter. (API default: off)
queryYesSearch query.
startNoResult offset (e.g. 12 skips the first 12).
domainNoCountry-specific Google domain (e.g. google.co.uk, google.co.in). (API default: google.com)
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden but provides only a basic retrieval statement. It does not disclose response format, pagination behavior, how parameters like html or start affect output, or any safety/permission considerations. This is a significant gap for a tool with 10 parameters.

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 concise sentence with a clear verb-resource-object structure. It is front-loaded and contains no filler, making it easy to parse and understand the core action.

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

Completeness2/5

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

Given the tool's complexity (10 parameters, no output schema, no annotations), the description is incomplete. It does not explain the response structure beyond mentioning a few fields, nor does it address how the tool behaves with various parameters or what makes it distinct from other video search tools. The rich schema partially compensates but the description itself leaves many questions unanswered.

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?

The schema provides detailed descriptions for all 10 parameters (100% coverage), so the baseline is 3. The description itself adds no parameter-specific information, but the schema already covers this dimension well, and the description's mention of 'sources, thumbnails, and dates' loosely aligns with expected output.

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 uses a specific verb 'Retrieve' and a clear resource 'Google short videos', and lists key returned fields (sources, thumbnails, dates). This distinguishes it as a video retrieval tool among search siblings, though it does not explicitly name alternatives. It could have been clearer about what 'short videos' means (e.g., YouTube Shorts or general Google video results), but it is sufficiently clear.

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 is provided about when to use this tool versus other video or search tools, nor any exclusions or alternative references. The description simply states what it does without contextualizing use cases.

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

linkedin_profileLinkedIn Profile / Company APIA

Scrape a public LinkedIn person or company profile by its public identifier (the slug in the profile URL).

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesProfile type to scrape.
linkIdYesThe public LinkedIn id/slug, e.g. 'williamhgates' for linkedin.com/in/williamhgates.
premiumNoUse premium mode for higher success rate. (API default: false)

TDQS

A3.6/5.0
Behavior2/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 of behavioral disclosure. It only mentions 'public' profiles, but does not disclose rate limits, error behavior, premium mode implications, or output characteristics. This lack of detail leaves the agent without insight into expected behavior or edge cases.

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, well-structured sentence that immediately conveys the essential action and target. No redundant information or unnecessary elaboration, making it maximally 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 low complexity (3 params, no output schema), the description provides sufficient context for a basic scrape operation. The schema fills in parameter details, but the lack of any annotation or output description leaves minor gaps in expected return behavior, though not critical.

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?

The schema descriptions cover all parameters (100% coverage), including the example for linkId and the purpose of premium. The description itself adds no additional meaning beyond referencing the slug, so the 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's action ('Scrape'), target ('public LinkedIn person or company profile'), and identification method ('by its public identifier'). It effectively distinguishes from sibling tools by specifying LinkedIn, unlike general web scraping or other social profile 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?

The description implies use for LinkedIn profile/company scraping via the given slug, but it does not explicitly compare with alternatives like x_profile or web_scrape. No exclusions or 'when not to use' guidance is provided, making the usage context only implicit.

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

screenshotScreenshot APIB

Capture a screenshot (PNG/JPG/WEBP) of any web page. Returns the image.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the page to screenshot.
widthNoViewport width in pixels.
formatNoImage format. (API default: png)
heightNoViewport height in pixels.
qualityNoImage quality 0-100 (jpg/webp). (API default: 80)
fullPageNoCapture the full scrollable page instead of just the viewport. (API default: false)
wait_untilNoNavigation completion trigger. (API default: domcontentloaded)

TDQS

B3.4/5.0
Behavior2/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 only states 'Returns the image' without disclosing load behavior, wait conditions, permission needs, rate limits, or failure modes. The return format (binary, URL, base64) is also unspecified.

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 two concise sentences with no wasted words. It front-loads the core action and immediately states the output.

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

Completeness2/5

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

With 7 parameters, no output schema, and no annotations, the description fails to explain return format details, page load behavior, or potential errors. It is inadequate 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.

Parameters3/5

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

The input schema has 100% coverage for all parameters, so the baseline is 3. The description adds no extra meaning beyond what's already in the schema; it only mentions image formats, which are already enumerated in the format 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 clearly states the tool captures a screenshot of a web page and lists supported formats (PNG/JPG/WEBP). This specific verb+resource combination distinguishes it from sibling tools like web_scrape, which extracts text content.

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 capturing web page images but provides no explicit guidance on when to choose this over alternatives like web_scrape for text extraction. There are no when-to-use or when-not-to-use statements.

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

web_scrapeWeb Scraping APIA

General-purpose web scraper. Fetches any URL through Scrapingdog's rotating proxies with optional JavaScript rendering, premium proxies, geo-targeting, and AI-based extraction. Returns the page HTML (or extracted data).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe absolute URL of the page to scrape.
waitNoMilliseconds to wait after page load before capturing (only with dynamic=true).
countryNoTwo-letter ISO country code for the proxy geo-location (requires premium). (API default: us)
dynamicNoSet true to render JavaScript with a headless browser. Costs more credits. (API default: false)
premiumNoSet true to use premium (residential) proxies for hard-to-scrape sites. (API default: false)
ai_queryNoNatural-language instruction to extract specific data from the page via AI.
markdownNoReturn the page content converted to clean markdown instead of raw HTML. (API default: false)
session_numberNoReuse the same proxy IP across requests by passing a stable integer.
ai_extract_rulesNoJSON string of field->instruction rules for structured AI extraction.

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 the full burden of behavioral disclosure. It transparently mentions the use of Scrapingdog's rotating proxies, optional JavaScript rendering, premium proxies, geo-targeting, and AI-based extraction, as well as the return type (HTML or extracted data). However, it does not cover error handling, rate limits, or limitations like login-protected pages, but the provided detail is substantial.

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 two sentences, front-loaded with the core purpose, and every phrase adds value. It efficiently conveys the tool's scope, mechanisms, and output without wasted words.

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 complexity of 9 parameters and no output schema, the description provides a high-level overview but lacks guidance on parameter interplay (e.g., wait only with dynamic), cost implications beyond dynamic's mention in schema, and return format nuances. The schema partially compensates, but the description alone is not fully 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.

Parameters3/5

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

Schema description coverage is 100%, so parameters are fully documented in the schema. The tool description adds no additional parameter semantics beyond what the schema already provides, making this a baseline score.

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 function: fetching any URL via a general-purpose web scraper with rotating proxies and returning HTML or extracted data. The verb 'fetches' and resource 'any URL' are specific, and it distinguishes itself from specialized siblings like google_search and screenshot by being general-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?

The description implies the tool is for scraping arbitrary URLs but does not explicitly state when to use it instead of specialized tools like google_search or screenshot. There are no exclusions or alternative suggestions, leaving usage context to be inferred.

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

x_profileX (Twitter) Profile APIA

Scrape a public X (Twitter) profile's metadata (bio, followers, counts, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
profileIdYesX username or user id, e.g. 'elonmusk' or 'nasa'.

TDQS

A3.6/5.0
Behavior2/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 of behavioral disclosure. It mentions 'public' as an access limitation but does not disclose rate limits, authentication needs, whether it scrapes live data, or behavior for non-existent/private profiles. This is a significant gap for a web scraping 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, scannable sentence that front-loads the primary action and resource. The parenthetical with examples adds useful detail without verbosity. Every word earns its place, making it highly concise and well-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?

For a simple one-parameter tool with no output schema and no annotations, the description covers the essential purpose and scope. It could be enhanced by mentioning what counts are included or any error behaviors, but the given information is adequate for basic usage. The lack of output schema is partially compensated by the examples of returned metadata.

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% - the profileId parameter is well described with examples ('elonmusk', 'nasa'). The tool description itself adds no additional parameter semantics beyond what the schema already provides, 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 uses a specific verb 'scrape' and clear resource 'public X (Twitter) profile's metadata' with examples (bio, followers, counts). It distinctively identifies the tool's purpose, differentiating it from generic web scraping or other profile tools like linkedin_profile.

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 whenever X profile metadata is needed but does not explicitly state when to choose this tool over alternatives or provide exclusions. No mention of alternatives like web_scrape or search tools, leaving the contextual decision to the agent without explicit guidance.

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

youtube_channelYouTube Channel APIC

Get a YouTube channel's details and videos.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)
channel_idYesYouTube channel id.

TDQS

C2.9/5.0
Behavior1/5

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

Annotations are absent, so the description carries the full burden of behavioral disclosure. The description simply restates the action ('Get') without mentioning any constraints, side effects, data scoping, or result behavior. There is no information about pagination, whether the full video list is returned, or whether channel metadata is complete. This provides no transparency beyond what the tool's name already implies.

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 concise sentence with no redundant wording. It is front-loaded with the action and resource. However, it is borderline under-specified for a tool with multiple output types, so it earns a 4 rather than 5 for lacking structural breakdown.

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

Completeness2/5

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

Given the lack of an output schema and the complexity of returning both 'details' and 'videos', the description should clarify what constitutes 'details' and whether videos are a paginated list or summary. No such detail is provided. The description is adequate only for high-level understanding, but incomplete for practical 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 description coverage is 100%: all three parameters (channel_id, country, language) have descriptive text. The description adds no extra meaning beyond the schema, but the baseline of 3 applies because the schema already documents parameter semantics thoroughly. The tool description itself does not enhance understanding of the 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?

The description 'Get a YouTube channel's details and videos' uses a specific verb ('Get') and a clear resource ('YouTube channel') while indicating two types of output (details and videos). This distinguishes it from sibling tools like youtube_search (search across videos), youtube_video (single video metadata), and youtube_comments, making the tool's 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 Guidelines2/5

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

The description offers no guidance on when to use this tool vs alternatives. It does not mention prerequisites (e.g., the channel_id requirement), nor does it contrast with youtube_search or youtube_video. Users are left to infer usage from the name, which is insufficient.

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

youtube_commentsYouTube Comments APIB

Get comments for a YouTube video.

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesYouTube video id (the part after ?v= in the URL).
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

B3/5.0
Behavior1/5

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

There are no annotations, so the description carries the full burden of disclosing behavioral traits. It only says 'Get comments', with no information about pagination, sorting, authorization, rate limits, or error behavior. This is a minimal action description, not a transparent behavioral disclosure.

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, front-loaded sentence with zero redundant words. It is concise and directly states the tool's function.

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

Completeness2/5

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

With no output schema and no annotations, the description leaves unknown the response structure (e.g., what fields each comment contains), pagination behavior, and potential errors. For a simple tool with well-documented parameters, it provides the minimum for invocation but lacks the contextual enrichment needed for confident 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 description coverage is 100%, and each parameter (v, country, language) is already well-documented with examples and defaults. The tool description adds no additional parameter semantics, so the baseline 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?

Description uses the specific verb 'Get' and identifies the resource as 'comments for a YouTube video', clearly distinguishing it from sibling tools like youtube_search or youtube_transcripts. The purpose is immediately obvious and unambiguous.

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 is provided on when to use this tool versus alternatives, nor any exclusions or prerequisites. The description merely states what it does, leaving the agent to infer usage context without additional direction.

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

youtube_transcriptsYouTube Transcripts APIA

Get the transcript (with timestamps) for a YouTube video.

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesYouTube video id (the part after ?v= in the URL).
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

A3.6/5.0
Behavior2/5

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

With no annotations, the description carries full disclosure burden. It mentions the timestamps feature, but does not disclose important behavioral details such as whether the operation is read-only, what happens if no transcript is available, or any format requirements. This leaves significant gaps for an agent to anticipate behavior.

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, clear sentence with no wasted words. It is front-loaded with the verb and resource, making it immediately understandable.

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 simplicity, the description is mostly complete: it states the output (transcript) and a key feature (timestamps). However, with no output schema, a bit more detail on the response structure or potential errors would make it more complete. Still, it is adequate for basic usage.

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?

The schema descriptions cover 100% of parameters, so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already provides, such as the format for video IDs or the purpose of country/language codes.

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 function: 'Get the transcript (with timestamps) for a YouTube video.' It uses a specific verb ('Get') and identifies a distinct resource (transcripts), which differentiates it from sibling tools like youtube_search or 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 Guidelines3/5

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

The description implies usage (when you need a transcript), but does not explicitly state when to use this versus alternatives. There is no mention of exclusions or alternative tools, though the context of sibling tools makes the purpose fairly obvious.

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

youtube_videoYouTube Video APIA

Get details and metadata for a single YouTube video.

ParametersJSON Schema
NameRequiredDescriptionDefault
vYesYouTube video id (the part after ?v= in the URL).
countryNoTwo-letter ISO country code to geo-target results (e.g. us, gb, in, de). (API default: us)
languageNoResult language code (e.g. en, es, fr, de). (API default: en)

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only says 'Get details and metadata' without disclosing what fields are returned, error behavior, rate limits, or any special requirements. This leaves the tool's behavior as a black box.

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, front-loaded sentence that conveys the essential purpose with no filler or redundant information.

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, low-complexity tool, the description plus well-documented schema is minimally viable. However, the absence of an output schema or any mention of return values means the agent cannot know what 'details and metadata' actually includes.

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?

The input schema has 100% coverage with descriptive parameter explanations (e.g., v as 'YouTube video id', country as ISO code, language as code), and the description adds no extra parameter context. Baseline 3 is appropriate since schema does the heavy lifting.

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 'Get details and metadata for a single YouTube video' uses a specific verb and resource, clearly distinguishing this tool from siblings like youtube_search, youtube_transcripts, and youtube_channel by focusing on a single video's metadata.

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 implies usage when a known video ID is available and details are needed, providing clear context. However, it does not explicitly state when not to use it or mention alternative tools for search, transcripts, or channel info.

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.

  1. 35 tool updatesv0.1.1
    • First observedamazon_offers
    • First observedamazon_product
    • First observedamazon_reviews
    • First observedamazon_search
    • First observedbaidu_search
    • First observedbing_search
    • First observedchatgpt
    • First observedebay_search
    • First observedgoogle_ai_mode
    • First observedgoogle_ai_overview
    • First observedgoogle_finance
    • First observedgoogle_hotels
    • First observedgoogle_images
    • First observedgoogle_immersive_product
    • First observedgoogle_jobs
    • First observedgoogle_lens
    • First observedgoogle_maps
    • First observedgoogle_news
    • First observedgoogle_patents
    • First observedgoogle_scholar
    • First observedgoogle_search
    • First observedgoogle_shopping
    • First observedgoogle_shorts
    • First observedgoogle_trends
    • First observedlinkedin_profile
    • First observedscreenshot
    • First observeduniversal_search
    • First observedwalmart_search
    • First observedweb_scrape
    • First observedx_profile
    • First observedyoutube_channel
    • First observedyoutube_comments
    • First observedyoutube_search
    • First observedyoutube_transcripts
    • First observedyoutube_video

TDQS

B3.2/5.0

Scored across 35 tools

Disambiguation4/5

Most tools are clearly distinct by source and data type (e.g., google_search vs google_maps), but some close pairs like google_ai_overview and google_ai_mode, or universal_search and google_search, require careful reading. Overall, descriptions resolve most ambiguity.

Naming Consistency4/5

Tool names consistently use lowercase snake_case with a source prefix (google_, amazon_, youtube_), making them predictable. A few general tools like web_scrape, universal_search, screenshot, and chatgpt break the prefix pattern but are still clearly named.

Tool Count2/5

With 35 tools, the set exceeds the recommended range for a coherent server. While each tool targets a specific scraping scenario, the large number makes the surface feel heavy and harder to navigate.

Completeness5/5

The server covers an impressively broad range of scraping needs: multiple search engines, Amazon product/review/offer data, YouTube details/transcripts/comments, and a general-purpose scraper. No obvious dead ends or critical missing operations for the stated domain.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Web scraping MCP server for Al agents. 6 tools: extract clean text/markdown from any URL, structured scraping with CSS selectors, full-page screenshots via Playwright, link extraction with regex filtering, metadata extraction (OG tags, Twitter cards), and Google search. Free tier: 50 requests/IP/day.
    8
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Multi-tool MCP server for AI agents with 29 tools across web scraping, SEO analysis, screenshot and PDF generation, domain intelligence, content extraction, multi-chain EVM blockchain queries, and security toolkit. Free tier available with no auth required.
    12
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    A comprehensive MCP server providing 15 web tools including search, scraping, screenshots, SEO audits, and DNS/SSL checks through a single installation. It delivers clean, LLM-optimized outputs so AI agents can focus on reasoning rather than parsing raw HTML.
    15
    6
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    MCP tool server that gives any AI agent the ability to search, scrape, and analyze content across the internet.
    42
    MIT