Litescrape
Server Details
Google, Bing, DuckDuckGo and Google Maps search results, free without an API key.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- litescrape/litescrape-mcp-server
- GitHub Stars
- 0
- Server Listing
- litescrape-mcp-server
TDQS
Score is being calculated.
Available Tools
9 toolsbing_searchBing SearchARead-onlyInspect
Fetch a Bing web search results page as JSON: organic_results plus the modules Bing served (answer_box, knowledge_graph, copilot_answer, ads, related_questions, inline_videos, top_stories and more). Free without an API key: 50 calls per network per day.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query; Bing operators are preserved | |
| cc | No | Two-letter country code; conflicts with mkt | |
| lat | No | Latitude; supply together with lon | |
| lon | No | Longitude; supply together with lat | |
| mkt | No | Market such as en-US; conflicts with cc | |
| first | No | One-based organic result offset for pagination; default 1 | |
| device | No | Layout to request; default desktop | |
| filters | No | Native Bing display or date filters | |
| location | No | City-level search origin | |
| safeSearch | No | Default moderate | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description discloses the response composition (organic_results plus answer_box, knowledge_graph, copilot_answer, ads, related_questions, inline_videos, top_stories), the JSON format, and the operational constraints: free, no API key, and a daily rate limit. This adds meaningful behavioral context that annotations alone do not provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, with the core action and output shape front-loaded. Every sentence earns its place: the first defines the tool's purpose and response, and the second adds the important quota and API-key caveat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters and no output schema, the rich parameter schema plus the description's module list and quota note make the tool adequately invocable. A little more detail about pagination behavior or result-group semantics would make it fully complete for such a parameter-heavy tool, but the existing context is strong.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 11 parameters already have schema descriptions, so the baseline is 3. The description adds value by enumerating plausible values for the result_groups parameter, such as organic_results, knowledge_graph, and top_stories, which is helpful for constructing calls even though most parameters are not individually discussed in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and object ('Fetch a Bing web search results page as JSON') and enumerates the returned modules, which clearly separates it from sibling tools like google_search or duckduckgo_search. The Bing resource is unambiguous and the description distinguishes this tool from generic search alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives practical selection context by noting that the tool is free, requires no API key, and has a daily quota of 50 calls. However, it does not explicitly contrast this tool with sibling search tools or state when to prefer it over google_search or duckduckgo_search, so the usage guidance is mostly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
duckduckgo_searchDuckDuckGo SearchARead-onlyInspect
Fetch ranked DuckDuckGo web results (organic_results with title, link, snippet) with region, safety and date controls. Free without an API key: 50 calls per network per day.
| Name | Required | Description | Default |
|---|---|---|---|
| m | No | Result count 1-50; cannot be combined with search_assist | |
| q | Yes | Search query | |
| df | No | Date filter: d, w, m, y, or YYYY-MM-DD..YYYY-MM-DD | |
| kl | No | Region and language token such as us-en | |
| safe | No | 1 strict, -1 moderate (default), -2 off | |
| start | No | Result offset | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept | |
| search_assist | No | Default true; cannot be combined with m |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true trading safety. The description adds a concrete rate limit and the 'no API key' requirement, which are behavioral traits beyond the annotations. It does not contradict any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the first states the core function and output, the second states cost and rate limits. Information is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description gives a useful output hint (organic_results with title, link, snippet) and rate-limit context, which compensates for the lack of an output schema. The rich input schema covers parameter details, so the description is sufficient for an agent to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with every parameter already documented. The description only summarizes 'region, safety and date controls' without adding meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches ranked DuckDuckGo web results with specific fields (organic_results, title, link, snippet) and controls. This makes it immediately distinguishable from sibling search tools like google_search or bing_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Free without an API key: 50 calls per network per day' implies a usage context and cost advantage, but the description does not explicitly say when to choose this over alternatives like google_search or bing_search. Usage guidance is mostly implied rather than stated.
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 ModeARead-onlyInspect
Ask Google AI Mode a question and return its generated answer (ordered text_blocks: paragraphs, headings, lists, tables, code) with the sources it cited (references). Set continuable to get a token for follow-up questions; image_url adds a picture to the prompt. Slow: answers are generated per request. Requires an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | The question to ask | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| uule | No | Pre-encoded Google location token; conflicts with location | |
| device | No | Layout to request; default desktop | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| image_url | No | Public http(s) image to include in the prompt; cannot combine with a token | |
| continuable | No | Return a subsequent_request_token so the conversation can continue | |
| google_domain | No | Google domain such as google.co.uk; default google.com | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept | |
| subsequent_request_token | No | Token from a previous continuable answer; send with a new q. Expires after 30 minutes; cannot combine with image_url |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true, so the agent already knows this is a safe read operation. The description adds valuable behavioral context beyond the annotations: it warns that the tool is slow (answers generated per request), explains the continuable token mechanism and its 30-minute expiry, and notes that image_url cannot combine with a token. These are exactly the kind of behavioral traits an agent needs to know. It doesn't describe rate limits or failure modes, but the annotations already cover the safety profile, so a 4 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with zero waste. The first sentence front-loads the core purpose and output format, the second explains the two most important optional parameters, and the third delivers the critical behavioral warning (slow) and the auth requirement. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 11 parameters, 100% schema coverage, and no output schema, the description is quite complete. It covers the core purpose, output structure, the continuable follow-up mechanism, the image_url constraint, the slowness warning, and the API key requirement. The only gaps are minor: it doesn't explain what happens with result_groups filtering or the uule/location conflict, but those are documented in the schema. The description is complete enough for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 11 parameters. The description adds meaning for a few key parameters: continuable (get a token for follow-up questions), image_url (adds a picture to the prompt), and subsequent_request_token (implied by the follow-up explanation). However, it doesn't add much beyond the schema for parameters like gl, hl, uule, device, location, google_domain, or result_groups. Since the schema does the heavy lifting, the baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Ask'), a specific resource ('Google AI Mode'), and the exact output shape (ordered text_blocks with sources). It also names the sibling tool google_ai_overview implicitly by distinguishing AI Mode from a plain search, and the sibling list confirms this is the AI-powered Q&A tool rather than a generic search. The description is unambiguous about what this tool does and how it differs from the other search siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use this tool: when you want a generated answer with cited sources, and it explicitly warns that it is slow because answers are generated per request. It also explains the continuable token mechanism for follow-up questions, which is a key usage pattern. However, it does not explicitly name alternatives or state when NOT to use this tool (e.g., when you need fast results, use google_search instead). The sibling list provides context but the description itself doesn't draw the contrast.
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 OverviewARead-onlyInspect
Return only the AI Overview Google generates for a search (ai_overview with ordered text_blocks and cited references), or null when Google shows none. Accepts the google_search parameters. Requires an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Search query; required unless ludocid or kgmid is supplied | |
| cr | No | Country restrict such as countryUS|countryCA | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| lr | No | Language restrict such as lang_en|lang_fr | |
| lat | No | Latitude; supply together with lon | |
| lon | No | Longitude; supply together with lat | |
| num | No | Requested result count, 1-100; Google may return fewer | |
| tbm | No | Vertical: lcl local, vid videos, nws news, shop shopping, pts patents | |
| tbs | No | Google search-filter string, e.g. qdr:w for the past week | |
| nfpr | No | 1 disables spelling auto-correction | |
| safe | No | SafeSearch | |
| uule | No | Pre-encoded Google location token; conflicts with location | |
| kgmid | No | Knowledge Graph machine ID such as /m/0k8z | |
| start | No | Result offset for pagination | |
| as_qdr | No | Date range: d, w, m or y with an optional count, e.g. d7 for the past week | |
| device | No | Layout to request; default desktop | |
| filter | No | 0 disables duplicate-content filtering | |
| radius | No | Radius in meters around the location or coordinates | |
| ludocid | No | Google CID of a local entity, for a targeted lookup | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| as_sitesearch | No | Restrict results to this hostname | |
| google_domain | No | Google domain such as google.co.uk; default google.com | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/openWorld annotations, the description adds the crucial null-when-absent behavior, the structure of the returned ai_overview object, and an API-key auth requirement. It could add rate-limit or failure-mode details, but the existing additions go well beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the primary behavior and return contract, and then adds the parameter family and auth requirement. No sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 24-parameter tool with no output schema, the description covers the key contextual gaps: what is returned, when it returns null, and that an API key is required. The schema handles the parameter details, so the description is sufficiently complete, though it could mention limitations such as AI Overview availability by vertical or domain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already documents all 24 parameters. The description only adds the high-level statement that it 'accepts the google_search parameters', which orients the agent but does not add per-parameter semantics. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a precise operation ('Return only the AI Overview Google generates for a search'), specifies the output shape (ai_overview with ordered text_blocks and cited references), and states the null case. It also signals its relationship to the general search tools by saying it accepts the google_search parameters, which helps distinguish it from siblings like google_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose statement implies when to use the tool (when the AI Overview answer is needed), but it never states when not to use it or points to an alternative such as google_search or google_ai_mode. The guidance is inferred from the description rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_mapsGoogle MapsARead-onlyInspect
Search Google Maps for places (local_results with name, address, rating, reviews, hours, phone, website, coordinates) or fetch one exact place (place_results) by place_id, data_cid or data sequence. Filter by price, rating and opening hours. Free without an API key: 50 calls per network per day.
| Name | Required | Description | Default |
|---|---|---|---|
| m | No | Radius in meters; use with location or lat/lon | |
| q | No | Search text; required for type=search | |
| z | No | Zoom 3-30; use with location or lat/lon | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| ll | No | Viewport as @lat,lon,14z or @lat,lon,5000m | |
| lat | No | Latitude; supply together with lon | |
| lon | No | Longitude; supply together with lat | |
| data | No | Exact place by Google Maps data sequence | |
| type | No | search (default) for a query, or place for one exact place identified by place_id, data_cid or data | |
| start | No | Native Maps result offset | |
| nearby | No | Restrict results to places near the viewport | |
| data_cid | No | Exact place by decimal Google CID | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| place_id | No | Exact place by Google place ID | |
| max_price | No | Price level upper bound | |
| min_price | No | Price level lower bound | |
| min_rating | No | Minimum rating preference | |
| open_state | No | Open now, or open 24 hours; cannot combine with open_on_day | |
| open_on_day | No | ||
| open_at_hour | No | Hour 0-23; requires open_on_day | |
| google_domain | No | Google domain such as google.co.uk; default google.com | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already label it read-only and open-world; the description adds valuable operational context: no API key required, a concrete daily rate limit, and the output groups returned (local_results vs place_results with fields). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action and modes, then filters, then usage limits. No filler or redundant restatement of schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 23 parameters and no output schema, the combination of the high-coverage schema and description (mode selection, filters, return groups, rate limit) gives an agent what it needs to call the tool correctly. It could add a usage example or note on response size, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 96% schema coverage, the schema carries the parameter detail. The description still adds value by grouping the many parameters into modes and filter categories (price, rating, opening hours) and by naming the three identifier alternatives for exact-place lookup. This is more than baseline repetition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific action ('Search Google Maps for places') and explicitly distinguishes two modes: broad search returning local_results and exact place fetch via place_id, data_cid, or data sequence. This makes its scope clear relative to generic web-search siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states clear use cases—searching for places with optional filters or retrieving a single place by identifier—and notes the free-tier constraint (50 calls/network/day). It doesn't explicitly name sibling alternatives or exclusion conditions, but the described scenarios are unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_reviewsGoogle ReviewsARead-onlyInspect
Return the Google Maps reviews of one place (reviews with rating, snippet, author, date, likes, owner response, guided details and dining subratings) plus place_info. Identify the place by place_id or data_id from a google_maps result. Sort, filter by topic or text, and follow pagination.next_page_token for more. Requires an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| num | No | Reviews to return: 1-100 on a first unfiltered request (default 8), 1-20 with topic_id, query or next_page_token (default 10) | |
| query | No | Keep reviews mentioning this text; conflicts with topic_id | |
| data_id | No | Google data ID such as 0x89c2...:0x...; exactly one of place_id and data_id | |
| sort_by | No | Order: qualityScore (most relevant, default), newestFirst, ratingHigh, ratingLow | |
| place_id | No | Google place ID such as ChIJ...; exactly one of place_id and data_id | |
| topic_id | No | Keep reviews on one Google review topic; conflicts with query | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept | |
| next_page_token | No | pagination.next_page_token from the previous response; keep the same place, sort and filters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only and open-world behavior; the description adds value by disclosing the API key requirement, pagination flow via next_page_token, and the composition of the response. It does not discuss rate limits or error behavior, but the annotation coverage lowers the bar and the added context is useful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, zero filler: outcome and return fields first, identifier source second, controls/auth third. Each sentence earns its place and the most important scoping information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description still covers the returned data (review fields plus place_info), the required authentication, and the pagination mechanism. Combined with the very rich input schema, an agent has everything necessary to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description still adds meaning by connecting place_id/data_id to a google_maps result and summarizing sort/filter/pagination behavior. It reinforces how the parameters interact without needing to restate their schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a precise verb and resource: 'Return the Google Maps reviews of one place', plus place_info, and enumerates the review fields. This clearly distinguishes it from sibling search tools (google_search, google_maps) by scoping to reviews of a single place identified via a google_maps result.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It tells the agent the source of identifiers ('from a google_maps result') and shows when to use the tool: after obtaining place_id or data_id, then sort, filter, or paginate. It does not explicitly state when not to use it or name alternatives, but the context is clear enough for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_searchGoogle SearchARead-onlyInspect
Fetch a first-party Google Search results page as JSON: organic_results plus whichever modules Google served (knowledge_graph, answer_box, ai_overview, ads, related_questions, related_searches, local_results, top_stories, inline_videos and more). Supports localization, verticals (news, videos, local, shopping, patents), date filters and site restriction. Free without an API key: 25 calls per network per day.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Search query; required unless ludocid or kgmid is supplied | |
| cr | No | Country restrict such as countryUS|countryCA | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| lr | No | Language restrict such as lang_en|lang_fr | |
| lat | No | Latitude; supply together with lon | |
| lon | No | Longitude; supply together with lat | |
| num | No | Requested result count, 1-100; Google may return fewer | |
| tbm | No | Vertical: lcl local, vid videos, nws news, shop shopping, pts patents | |
| tbs | No | Google search-filter string, e.g. qdr:w for the past week | |
| nfpr | No | 1 disables spelling auto-correction | |
| safe | No | SafeSearch | |
| uule | No | Pre-encoded Google location token; conflicts with location | |
| kgmid | No | Knowledge Graph machine ID such as /m/0k8z | |
| start | No | Result offset for pagination | |
| as_qdr | No | Date range: d, w, m or y with an optional count, e.g. d7 for the past week | |
| device | No | Layout to request; default desktop | |
| filter | No | 0 disables duplicate-content filtering | |
| radius | No | Radius in meters around the location or coordinates | |
| ludocid | No | Google CID of a local entity, for a targeted lookup | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| fast_mode | No | true returns only organic_results (faster and smaller); skips AI Overview, Knowledge Graph, ads and every other module | |
| as_sitesearch | No | Restrict results to this hostname | |
| google_domain | No | Google domain such as google.co.uk; default google.com | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true; the description adds useful transparent details: results include whatever modules Google happens to serve, no API key is needed, and there is a 25-call-per-network-per-day limit. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences with no filler. The most important information, what is returned and which service is queried, comes first, and the capability summary in the second sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 25 parameters and no output schema, the description covers the essential choices: result content, supported modules, localization/vertical/filter options, and quota constraints. It does not provide an example or elaborate on every behavior, but the rich schema plus these capabilities make it sufficiently complete for a tool-selection and invocation decision.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all 25 parameters. The description adds high-level groupings like 'localization, verticals, date filters' but does not explain any parameter beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Fetch') and resource ('Google Search results page as JSON'), and enumerates what is returned. It clearly distinguishes this first-party Google search tool from sibling tools like bing_search, duckduckgo_search, and google_maps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives strong context: it is for first-party Google results and lists supported capabilities like localization, verticals, and date filters. It does not explicitly name alternatives or say when not to use it, but the use case is clear enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_shoppingGoogle ShoppingARead-onlyInspect
Search Google Shopping and return the product grid (shopping_results with title, price, source, rating, thumbnail), category blocks, sponsored listings and the refinement chips Google renders (filters). Price bounds, sale, shipping and small business refinements are mutually exclusive; sort_by combines with one of them. Requires an API key.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Product query; required unless shoprs is supplied | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| num | No | Product count, 1-100 | |
| uule | No | Pre-encoded Google location token; conflicts with location | |
| start | No | Result offset | |
| device | No | Layout to request; default desktop | |
| shoprs | No | Refinement token from a previous response's filters | |
| on_sale | No | ||
| sort_by | No | 1 price low to high, 2 price high to low, 3 rating, 4 relevance | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| max_price | No | Upper price bound | |
| min_price | No | Lower price bound | |
| free_shipping | No | ||
| google_domain | No | Google domain such as google.co.uk; default google.com | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept | |
| small_business | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint and openWorldHint already present, the bar is lower, but the description adds value by disclosing the response composition (shopping_results fields, category blocks, sponsored listings, refinement chips) and the API key requirement. No contradiction with annotations exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler. The first sentence front-loads the tool's purpose and output, the second captures the key parameter constraint, and the third states the operational prerequisite. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 17-parameter tool with no output schema, the description supplies the essential output shape and the most important parameter-combination constraint, while the schema covers individual parameter details. It could be more complete by explicitly routing the agent to this tool only for shopping queries versus generic search, but the core invocation knowledge is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 82%, so the schema already describes most parameters. The description adds crucial cross-parameter semantics not visible in the schema: the mutual exclusivity of price/sale/shipping/small_business refinements and the rule that sort_by combines with one refinement. This meaningfully improves correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Search Google Shopping'. It then enumerates the concrete return components (product grid, category blocks, sponsored listings, refinement chips), which clearly distinguishes this tool from generic siblings like google_search, bing_search, and google_maps.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives practical usage guidance: it states the API key prerequisite and explains that price bounds, sale, shipping, and small business refinements are mutually exclusive while sort_by can combine with one of them. It does not explicitly say 'for general web results use google_search', so it stops short of full alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchWeb searchARead-onlyInspect
Search the web through Google and return ranked organic results (title, link, snippet) as JSON. Fast mode: no Knowledge Graph, ads or AI modules; use google_search for the full results page. Free without an API key (shares the google_search allowance).
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | What to search for | |
| gl | No | Two-letter country for localization, e.g. "us" | |
| hl | No | Language code such as "en" or "en-GB"; default en | |
| num | No | Requested result count, 1-100; Google may return fewer | |
| start | No | Result offset for pagination | |
| location | No | Named search origin such as "Austin, Texas"; conflicts with uule and lat/lon | |
| result_groups | No | Return only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description adds meaningful behavioral context: output format is JSON, results are organic, fast mode excludes Knowledge Graph/ads/AI modules, and usage is free but shares the google_search allowance. This gives the agent useful operational expectations beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler. The core purpose is front-loaded, followed by the key mode distinction and the cost/allowance note. Every sentence contributes actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with a rich schema and readOnly annotation, the description covers what the agent needs: return format, result type, mode limitations, and the alternative for full results. No critical gap is evident.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all seven parameters. The description adds no parameter-specific detail, but that is acceptable because the schema already carries the semantic load.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches the web via Google and returns ranked organic results as JSON. It also distinguishes itself from google_search by noting it is fast mode without Knowledge Graph, ads, or AI modules, making the tool's identity unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent to use google_search for the full results page, providing a clear when-not-to-use signal. It does not explicitly contrast with bing_search or duckduckgo_search, but the Google-specific framing makes the intended context reasonably clear.
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.
9 tool updates
- First observed
bing_search - First observed
duckduckgo_search - First observed
google_ai_mode - First observed
google_ai_overview - First observed
google_maps - First observed
google_reviews - First observed
google_search - First observed
google_shopping - First observed
search
Related MCP Connectors
Scrape Google search results with SERP data, ads, and knowledge panels
Search, extract, crawl, map, research, scrape 16 platforms, browser automation, proxy — one API key.
13Google SERP as JSON: organic, AI Overview, People Also Ask, AI Mode, news, shopping. No Cloud setup.
Scrape AI answer engines and Google Search/News with country and state-level geo-targeting.
Related MCP Servers
AlicenseBqualityCmaintenanceSearch API for AI, SEO & automation. Browser-rendered Google, Bing, Yandex, Baidu, DuckDuckGo and Ecosia results with URL extraction (+image search and engine metadata tools)923 npm2MIT- AlicenseAqualityDmaintenanceProvides real-time Google search results (organic + knowledge graph) with country targeting, language, time filters, and pagination, at low cost.17 npmMIT
- FlicenseNot gradedqualityDmaintenanceProvides free web search, content fetching, image search, and deep research via SearXNG, no API keys required.-
- AlicenseNot gradedqualityCmaintenanceProvides free Bing search capabilities without an API key, with smart language detection and customizable result counts.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.