CrawlerData: Google Shopping & SERP
Server Details
Google Shopping products and seller prices, plus Google Search, Images, News and Local results.
- Status
- Healthy
- Uptime
- 94.5% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 8 tools
Each tool targets a distinct Google vertical or a distinct step in the shopping workflow. google_search vs google_shopping_search is clearly differentiated by vertical, and the shopping_product/sellers split is explicitly described via product_id. No meaningful ambiguity remains.
All tools use a consistent snake_case google_ prefix. The shopping tools use a coherent google_shopping_* subgroup, making the set predictable and easy to scan.
Eight tools is well-scoped for a focused Google Shopping/SERP API. Each tool corresponds to a clear retrieval capability and none feel redundant or excessive.
The core shopping lifecycle is covered: search products, inspect product details, and list seller offers. SERP coverage includes web, images, news, local, and autocomplete, though some additional Google verticals could be expected under a broad 'SERP' label.
Available Tools
8 toolsgoogle_autocompleteGoogle AutocompleteCRead-onlyInspect
Google search suggestions for a partial query. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| country | No | us | |
| language | No | en |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety and external-call profile is covered. The description's one added behavioral fact is the cost ("1 credit"), which is genuinely useful and not in the structured fields, but nothing is said about rate limits or return format.
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 short fragments, front-loaded with the core purpose and cost, with zero filler. Terseness is fine given the tool's simplicity, though the second fragment is unconnected jargon.
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 should convey what the suggestions list looks like and how country/language affect results; it does neither. For a tool with three parameters and zero schema documentation, this is thin.
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 0% across three parameters, and the description adds nothing about query length limits, the country/language defaults ("us"/"en"), or their format. It only loosely gestures at the query parameter via "partial query", leaving country and language undocumented anywhere.
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 resource (Google search suggestions) and the input condition (a partial query), which distinguishes it from the sibling google_search. It does not name any sibling explicitly, so it falls just short of a 5.
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?
"For a partial query" implies the input shape but gives no when-to-use vs. when-not guidance, no mention of when to prefer google_search instead, and no prerequisites. An agent must infer the routing decision entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_imagesGoogle ImagesBRead-onlyInspect
Google Images results: image URL, thumbnail, title, source page and size. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| uule | No | Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values. | |
| query | Yes | ||
| country | No | Two-letter country code. Defaults to "us", or to the country of location. | |
| language | No | en | |
| location | No | Search from a city, region or postal code: a Google canonical location name, "City,Region,Country" (Google Ads geotarget format), e.g. "Austin,Texas,United States". When country is omitted it is taken from the location. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety and open-world behavior are covered upstream. The description adds genuinely new context by enumerating returned fields and disclosing the cost ('1 credit'), but says nothing about result counts, pagination behavior, or rate/quota implications.
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 compact clauses, with the payload (returned fields) front-loaded and the cost appended. No filler, though it is arguably too terse given the gaps elsewhere.
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, enumerating return fields is valuable and covers the return side. However, for a 6-parameter search tool with 50% schema coverage, missing details on pagination depth, result-per-page limits, and locale handling leave the agent with open questions.
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 50%, and the description mentions none of the six parameters — not query, page, language, country, location, or the advanced uule. It neither compensates for the undocumented parameters nor explains how location/country interact.
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 resource and result type: Google Images results with the returned fields (image URL, thumbnail, title, source page, size). Combined with the tool name it is clearly distinguishable from google_search, google_news and the shopping siblings, though it never explicitly contrasts with them.
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?
There is no guidance on when to use this instead of google_search or the other Google siblings, and no prerequisites or exclusions are given. The only usage-adjacent information is the credit cost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_localGoogle LocalARead-onlyInspect
Google local business results: name, rating, reviews, category, address, phone, hours and website, searched from any city-level location. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| uule | No | Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values. | |
| query | Yes | ||
| country | No | Two-letter country code. Defaults to "us", or to the country of location. | |
| language | No | en | |
| location | No | Search from a city, region or postal code: a Google canonical location name, "City,Region,Country" (Google Ads geotarget format), e.g. "Austin,Texas,United States". When country is omitted it is taken from the location. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the description's addition of the returned fields and the '1 credit' cost is valuable behavioral context. It does not cover pagination limits, empty-result behavior, or any auth requirements, but adds meaningful beyond 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?
A single front-loaded sentence listing key returned fields, scope, and cost with no filler. Every phrase 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?
Given the read-only annotations and lack of output schema, the description supplies the important return fields and credit cost. It is slightly incomplete around pagination and non-location parameters, but 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 only 50%, and the description does little to compensate. It reinforces the city-level location concept but does not explain query, page, language, country defaults, or the advanced uule parameter beyond what the schema already provides.
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 resource: local business results from Google, including the returned fields. It is distinguishable from sibling tools like google_search and google_news by the 'local business' scope, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for local business searches and specifies city-level location scope. However, it gives no explicit guidance on when to prefer this over google_search or other siblings, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_newsGoogle NewsCRead-onlyInspect
Google News results: headline, source, date, snippet and link. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| uule | No | Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values. | |
| query | Yes | ||
| country | No | Two-letter country code. Defaults to "us", or to the country of location. | |
| language | No | en | |
| location | No | Search from a city, region or postal code: a Google canonical location name, "City,Region,Country" (Google Ads geotarget format), e.g. "Austin,Texas,United States". When country is omitted it is taken from the location. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety is covered; the description usefully adds the cost model (1 credit), which is real context an agent cannot get from structured fields. However it says nothing about result volume, pagination limits (page caps at 10), freshness, or rate/cost scaling with page depth.
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?
A single compact sentence with the return fields and cost front-loaded, no filler. It is efficient, though the brevity crosses into under-specification rather than being optimally sized for a 6-parameter tool.
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, six parameters and only half the schema documented, the description should carry query syntax, paging behavior and localization hints, but instead covers only the returned fields and credit cost. An agent can call it with a bare query but cannot call it correctly with page or location options from this text alone.
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 50%: uule, country and location are documented in-schema, but query, page and language have no descriptions anywhere. The tool description mentions no parameters at all, so it does not compensate for the undocumented ones, notably how paging or localization interact with results.
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 the resource (Google News results) and enumerates return fields (headline, source, date, snippet, link), which is more specific than the bare name. But there is no verb describing the action (search/retrieve) and nothing that distinguishes it from google_search or google_autocomplete, so the agent must infer that this searches news rather than general web results.
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?
There is no guidance on when to use this over google_search or the other Google siblings, nor any stated exclusions or prerequisites. The agent is left to infer that the news index is the differentiator from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_searchGoogle SearchBRead-onlyInspect
Google web search results (organic results, featured snippets, related questions and more) for any country, city-level location, language and device. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| uule | No | Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values. | |
| pages | No | Fetch pages 1..pages (up to 3) in this one request: the result has a "pages" array, one entry per page with its own status, credits and output (html_url, or the parsed results). 1 credit per page; a failed page, or a page whose AI Overview timed out, is free. wait_for_ai_overview applies to page 1. Not with page. | |
| query | Yes | ||
| device | No | "desktop" (default), "mobile" (Android phone, Pixel 8), "iphone" (iPhone 15, Safari), "ipad" (iPad Air, Safari) or "galaxy" (Samsung Galaxy S24, Chrome). | desktop |
| country | No | Two-letter country code. Defaults to "us", or to the country of location. | |
| language | No | en | |
| location | No | Search from a city, region or postal code: a Google canonical location name, "City,Region,Country" (Google Ads geotarget format), e.g. "Austin,Texas,United States". When country is omitted it is taken from the location. | |
| strict_geo | No | Internal, not documented: crawl from an exit in the request's own country. | |
| resolve_links | No | Resolve Google's encrypted /goto result links to their real destinations. Google lets a page's links be resolved all at once only a couple of minutes after serving it, so on async jobs and batches the job stays "processing" (links_status "pending") until all are resolved, about 3 minutes after the crawl, and then completes with one webhook. On the live queue it answers at once with about 5-6 links per page resolved, result titles first (up to about 10 seconds). With output "html" the page's hrefs are rewritten (unresolved ones keep Google's href). In parsed JSON a link is never a Google redirect: one not resolved is the site's home page and carries link_unresolved: true. | |
| wait_for_ai_overview | No | Wait (up to about 10 seconds) for the AI Overview to finish loading before the page is captured. A page whose AI Overview does not load in time (ai_overview_status "timeout") costs 0 credits. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds the credit cost and the shape of returned content, but says nothing about pagination behavior, async resolution, or per-page billing that the schema params describe — useful but thin added context for a complex tool.
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 front-loaded sentences with the result contents and targeting dimensions up front; the 'and more' phrase is mild filler but the rest earns its place. Efficient overall.
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 an 11-parameter tool with no output schema, the description omits the pagination model (page vs pages, per-page credits), async/link resolution, and AI Overview waiting behavior, relying entirely on schema text. Adequate given the rich schema descriptions, but not complete on its own.
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 73% schema coverage, the schema itself documents most parameters in detail. The description only echoes the targeting dimensions (country, location, language, device) without adding syntax or constraints beyond what the schema already provides; query, page/pages, and uule get no treatment 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?
States a specific verb and resource (Google web search results) and enumerates the result types returned (organic, featured snippets, related questions), which distinguishes it from vertical siblings like google_news or google_images. It does not explicitly name or route to those siblings, keeping it short of a 5.
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?
Usage is only implied by the word 'web' against the sibling verticals; there is no explicit when-to-use, when-not, or alternative-naming guidance. The '1 credit' note is a cost signal but not selection guidance, and nothing tells the agent when to prefer google_search over google_news or google_local.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_shopping_productGoogle Shopping product detailsARead-onlyInspect
Details for a Google Shopping product_id: title, description, specs, images, rating and reviews summary. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | us | |
| language | No | en | |
| product_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds a genuinely useful non-annotation trait: the cost ('1 credit'), which lets an agent budget calls. It still omits rate limits and the meaning/normalization of country and language, so it is not a 5.
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?
A single tightly-packed sentence that is front-loaded with the resource and then lists the return payload, plus a short cost note. Every clause earns its place with no filler.
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, enumerating the returned fields is the right move and is done well. However, two of three parameters are unexplained and the definition says nothing about results varying by country/language, which matters for a localized shopping lookup.
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 0% and only product_id is implied by the text; country and language are never mentioned in the description, so their defaults, format, and effect on results are undocumented anywhere. The description does not compensate for the coverage gap.
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+resource ('Details for a Google Shopping product_id') and enumerates the returned payload (title, description, specs, images, rating, reviews summary). This clearly separates it from the product_id-returning google_shopping_search and from google_shopping_sellers, though it never names those siblings explicitly.
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?
Usage is implied: it takes a product_id, so an agent infers it is for fetching one known product rather than browsing. There is no explicit statement of when to prefer this over google_shopping_search or where a product_id comes from, leaving the routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_shopping_searchGoogle Shopping searchARead-onlyInspect
Search Google Shopping. Returns products with title, price, merchant, rating and product_id (use product_id with google_shopping_sellers or google_shopping_product). Optional city-level location. 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| uule | No | Advanced: a raw Google uule value ("w+...", "a+...", "j+..."), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values. | |
| query | Yes | ||
| country | No | Two-letter country code. Defaults to "us", or to the country of location. | |
| language | No | en | |
| location | No | Search from a city, region or postal code: a Google canonical location name, "City,Region,Country" (Google Ads geotarget format), e.g. "Austin,Texas,United States". When country is omitted it is taken from the location. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description adds genuinely useful behavior: the exact shape of returned fields, that location is city-level, and a cost signal ("1 credit") that no structured field carries. It does not mention pagination semantics for the page parameter, which keeps it from a 5.
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?
Four short clauses with no filler: purpose, returns, sibling hand-off, location, cost. Everything is front-loaded and each clause carries distinct 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?
With no output schema, the description usefully enumerates the return fields, and the cost and follow-up routing complete the picture for a search tool. The remaining gap is pagination/page behavior and query string expectations, which an agent would have to infer.
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 50%; uule, country, and location are already well documented in the schema. The description only re-states location as "optional city-level", and adds nothing about page, query limits, or language. It neither compensates for the gap nor misleads, so baseline 3 applies.
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 and resource ("Search Google Shopping") and enumerates the return fields (title, price, merchant, rating, product_id). It also distinguishes itself from the sibling tools by saying the returned product_id feeds google_shopping_sellers or google_shopping_product.
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?
Explicitly tells the agent to use product_id with google_shopping_sellers/google_shopping_product as a follow-up step, and notes location is an optional city-level refinement. It lacks an explicit "when not to use" statement (e.g., for a single known product, call google_shopping_product instead), so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_shopping_sellersGoogle Shopping sellersARead-onlyInspect
Every seller's offer for a Google Shopping product_id: merchant, price, shipping, total, availability, delivery. 1 credit per 10 sellers returned (min 1).
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | us | |
| language | No | en | |
| product_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnlyHint, openWorldHint), and the description adds genuinely non-obvious behavior the annotations do not: billing at 1 credit per 10 sellers with a minimum of 1. It still says nothing about pagination or result caps, so not a 5.
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 compact sentences: what it returns first, cost second. No filler, no restatement of the title, and the return fields are enumerated usefully.
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?
No output schema exists, but the description enumerates the returned fields (merchant, price, shipping, total, availability, delivery) and discloses cost, which is what an agent needs to decide to call it. Only country/language semantics and any result-limit behavior are 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?
Schema description coverage is 0%, so the description must carry the load. It clarifies product_id as a Google Shopping product id, but leaves country and language completely unaddressed beyond their schema defaults and type constraints.
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/scope (returns every seller's offer) and names the exact resource (a Google Shopping product_id), plus the fields returned. It is distinguishable from google_shopping_product/search, though it never names the sibling it complements.
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?
No when-to-use guidance, no alternatives, no prerequisite stated. The reference to 'a Google Shopping product_id' faintly implies you first obtain an id from google_shopping_search, but the agent must infer that entirely.
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 tool update
- Changed
google_search1 field changed- changed
Input schema / properties / strict_geo / descriptionPrevious value: -"With location or uule outside the US: always crawl from an IP in the request's own country. Without it, a batch page may be crawled from a US IP while country, language, location and the Google domain stay yours; exit_country in the result says which was used."New value: +"Internal, not documented: crawl from an exit in the request's own country."
1 tool update
- Changed
google_search1 field changed- added
Input schema / properties / strict_geoAdded value: +{ + "description": "With location or uule outside the US: always crawl from an IP in the request's own country. Without it, a batch page may be crawled from a US IP while country, language, location and the Google domain stay yours; exit_country in the result says which was used.", + "type": "boolean" +}
1 tool update
- Changed
google_search1 field changed- changed
Input schema / properties / resolve_links / descriptionPrevious value: -"With output \"html\": rewrite Google's encrypted /goto result links in the page to their real destinations, result titles first (adds up to about 10 seconds). Google limits how fast one page's links can be resolved, so about 5-6 links per page are resolved; the others keep Google's href. In parsed JSON results a link is never a Google redirect: one that could not be resolved is the site's home page and carries link_unresolved: true."New value: +"Resolve Google's encrypted /goto result links to their real destinations. Google lets a page's links be resolved all at once only a couple of minutes after serving it, so on async jobs and batches the job stays \"processing\" (links_status \"pending\") until all are resolved, about 3 minutes after the crawl, and then completes with one webhook. On the live queue it answers at once with about 5-6 links per page resolved, result titles first (up to about 10 seconds). With output \"html\" the page's hrefs are rewritten (unresolved ones keep Google's href). In parsed JSON a link is never a Google redirect: one not resolved is the site's home page and carries link_unresolved: true."
1 tool update
- Changed
google_search1 field changed- changed
Input schema / properties / resolve_links / descriptionPrevious value: -"With output \"html\": rewrite Google's encrypted /goto result links in the page to their real destinations (adds about 5-7 seconds). A link that cannot be resolved keeps Google's href. Parsed JSON results always have resolved links."New value: +"With output \"html\": rewrite Google's encrypted /goto result links in the page to their real destinations, result titles first (adds up to about 10 seconds). Google limits how fast one page's links can be resolved, so about 5-6 links per page are resolved; the others keep Google's href. In parsed JSON results a link is never a Google redirect: one that could not be resolved is the site's home page and carries link_unresolved: true."
5 tool updates
- Changed
google_images2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values." - removed
Input schema / properties / uule / patternRemoved value: -"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_local2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values." - removed
Input schema / properties / uule / patternRemoved value: -"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_news2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values." - removed
Input schema / properties / uule / patternRemoved value: -"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_search2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values." - removed
Input schema / properties / uule / patternRemoved value: -"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_shopping_search2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), plain or URL-encoded as copied from a Google URL. Use location instead unless you already have uule values." - removed
Input schema / properties / uule / patternRemoved value: -"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
5 tool updates
- Changed
google_images2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value, sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values." - changed
Input schema / properties / uule / patternPrevious value: -"^[aw][+ ][A-Za-z0-9+/_=-]{4,1000}$"New value: +"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_local2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value, sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values." - changed
Input schema / properties / uule / patternPrevious value: -"^[aw][+ ][A-Za-z0-9+/_=-]{4,1000}$"New value: +"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_news2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value, sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values." - changed
Input schema / properties / uule / patternPrevious value: -"^[aw][+ ][A-Za-z0-9+/_=-]{4,1000}$"New value: +"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
- Changed
google_search6 fields changed- added
Input schema / properties / device / descriptionAdded value: +"\"desktop\" (default), \"mobile\" (Android phone, Pixel 8), \"iphone\" (iPhone 15, Safari), \"ipad\" (iPad Air, Safari) or \"galaxy\" (Samsung Galaxy S24, Chrome)." - changed
Input schema / properties / device / enumPrevious value: -[ - "desktop", - "mobile" -]New value: +[ + "desktop", + "mobile", + "iphone", + "ipad", + "galaxy" +] - added
Input schema / properties / pagesAdded value: +{ + "description": "Fetch pages 1..pages (up to 3) in this one request: the result has a \"pages\" array, one entry per page with its own status, credits and output (html_url, or the parsed results). 1 credit per page; a failed page, or a page whose AI Overview timed out, is free. wait_for_ai_overview applies to page 1. Not with page.", + "maximum": 3, + "minimum": 1, + "type": "integer" +} - changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value, sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values." - changed
Input schema / properties / uule / patternPrevious value: -"^[aw][+ ][A-Za-z0-9+/_=-]{4,1000}$"New value: +"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$" - changed
Input schema / properties / wait_for_ai_overview / descriptionPrevious value: -"Wait (up to about 10 seconds) for the AI Overview to finish loading before the page is captured."New value: +"Wait (up to about 10 seconds) for the AI Overview to finish loading before the page is captured. A page whose AI Overview does not load in time (ai_overview_status \"timeout\") costs 0 credits."
- Changed
google_shopping_search2 fields changed- changed
Input schema / properties / uule / descriptionPrevious value: -"Advanced: a raw Google uule value, sent as is. Use location instead unless you already have uule values."New value: +"Advanced: a raw Google uule value (\"w+...\", \"a+...\", \"j+...\"), sent as is. Use location instead unless you already have uule values." - changed
Input schema / properties / uule / patternPrevious value: -"^[aw][+ ][A-Za-z0-9+/_=-]{4,1000}$"New value: +"^[A-Za-z][+ ][A-Za-z0-9+/_=-]{4,1000}$"
1 tool update
- Changed
google_search1 field changed- added
Input schema / properties / resolve_linksAdded value: +{ + "description": "With output \"html\": rewrite Google's encrypted /goto result links in the page to their real destinations (adds about 5-7 seconds). A link that cannot be resolved keeps Google's href. Parsed JSON results always have resolved links.", + "type": "boolean" +}
1 tool update
- Changed
google_search1 field changed- added
Input schema / properties / wait_for_ai_overviewAdded value: +{ + "description": "Wait (up to about 10 seconds) for the AI Overview to finish loading before the page is captured.", + "type": "boolean" +}
8 tool updates
- First observed
google_autocomplete - First observed
google_images - First observed
google_local - First observed
google_news - First observed
google_search - First observed
google_shopping_product - First observed
google_shopping_search - First observed
google_shopping_sellers
Related MCP Connectors
Shopping search across 100M+ products, with every retailer's offer and live price in one place.
Product search across online shops worldwide, plus every seller's price with a direct link.
Google Shopping results for any product search and country: price, original price and discount, store, delivery, returns, rating and review count, about 50 products per search. Runs on Apify, $1 per 1,000 products.
Google search results, forum threads, local and shopping data, keyword ideas, AI answer tracking.
Related MCP Servers
AlicenseNot gradedqualityAmaintenanceEnables AI agents to search products across online shops worldwide and retrieve each seller's price, shipping total, delivery note, rating, and direct product link.3MIT- AlicenseAqualityAmaintenanceA shopper’s agent searches stores, compares prices and buys with the shopper’s approval.2142MIT
- FlicenseNot gradedqualityBmaintenanceEnables MCP clients to run Google Search, News, and Local queries and receive structured organic results, news, and local packs as JSON.-

CrustAPI MCPofficial
AlicenseNot gradedqualityCmaintenanceProvides Google search across multiple surfaces, webpage scraping, and business reviews retrieval via the CrustAPI endpoint.75 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.