Skip to main content
Glama

Apiguru Amazon Data

Search Amazon products by keyword

search
Read-onlyIdempotent

Keyword search with pagination, sorting, and filtering by category, price range, condition, brand or seller. Price: $0.01 per call. Blank values and the literal string 'null' are treated as unset. page must be a positive integer or the call 400s. Ten filters narrow a search besides query: page, sort_by, geo, brand, seller_id, category_id, min_price, max_price, product_condition and today_deals. product_num_ratings and offers_count are integers; product_star_rating, product_price and product_original_price are decimal strings; a null field means Amazon did not show it for that result. is_prime is true when the result carries a Prime badge or its delivery line offers Prime delivery. metadata.total_pages says how far page can go. TWO THINGS TO READ CAREFULLY: product_num_ratings is the count for the whole listing family, not for this ASIN - Amazon pools reviews across variants, so every colour of one shoe reports the same number. And a variant's product_title can be the parent's title while the ASIN is the variant's; the URL slug usually shows which variant it really is, and /v2/product-details on that ASIN is authoritative. badges is the source of truth for Amazon's Choice / Best Seller / Overall Pick; is_amazon_choice and is_best_seller are derived from it. delivery splits the delivery line: free_delivery_date is the date a non-member gets for free, prime_delivery the slot Prime would give, fastest_delivery_date the paid faster option; raw is always the whole line. Dates are the strings Amazon printed, and on non-English marketplaces only raw may be filled. A full page is up to 48 results and about 54 KB of JSON; over MCP the tool returns the first 10 as light rows by default and tells you how to ask for more (limit, compact, fields).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
geoNoMarketplace country code.US
pageNoResult page, 1-based.
brandNoBrand name filter.
limitNoHow many search results to return from this page (0 = all of them). A full page is up to 48 rows and about 54 KB, which most clients spill to a file instead of showing inline. The answer carries _truncated with the true count when it trims.
queryYesSearch keywords. Required and must be non-empty.
fieldsNoComma-separated row fields to return instead of the light set, e.g. "asin,product_title,product_price". Rows list what they left out under _omitted_fields.
compactNoReturn light rows: identity, price, rating, badges and one delivery_date, dropping the long delivery prose that repeats itself across three fields. false returns every field the REST API sends (roughly 3x the size).
sort_byNoResult ordering.RELEVANCE
max_priceNoMaximum price filter, marketplace currency.
min_priceNoMinimum price filter, marketplace currency.
seller_idNoRestrict results to one seller.
category_idNoRestrict to an Amazon category id.
today_dealsNoRestrict to items in today's deals.
product_conditionNoCondition filter, e.g. NEW or USED.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
successNo
metadataNo
productsNo
request_idNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, but the description adds substantial behavior beyond that: cost per call, null/blank handling, 400 on invalid page, output field type semantics, Prime badge derivation, variant review pooling, delivery field roles, and marketplace-specific date behavior. This is exemplary 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.

Conciseness4/5

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

The description is long, but it is information-dense and front-loaded with the core operation, then grouped caveats and MCP behavior. Some redundancy exists, such as repeating the 48-row/54 KB sizing that already appears in the limit schema description, and calling page and sort_by 'filters' is slightly imprecise. Overall, every sentence earns its place.

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

Completeness5/5

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

For a tool with 14 parameters, an output schema, and subtle response-field quirks, the description is remarkably complete. It covers input constraints, output semantics, edge cases, pricing, pagination limits, and MCP-specific truncation. An agent has enough to invoke correctly and interpret results safely.

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

Parameters5/5

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

Schema description coverage is 100%, so baseline is 3, but the description adds significant non-obvious meaning: literal 'null' strings are unset, invalid page causes a 400, product_num_ratings pools across variants, product_title can belong to the parent ASIN, badges are authoritative, and delivery fields have precise semantics. This greatly exceeds the schema's bare parameter descriptions.

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

Purpose4/5

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

The description clearly identifies the action: keyword search over Amazon products with pagination, sorting, and multiple filters. It is specific and not tautological. However, it does not explicitly contrast against siblings like best_sellers or deals, so it stops short of full sibling differentiation.

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

Usage Guidelines4/5

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

The description gives strong operational guidance: query is required, page must be a positive integer, pagination limits are explained, and MCP truncation behavior is documented. It does not explicitly say when to prefer this tool over alternatives such as best_sellers, offers_stock, or product_details, so the guidance is clear context without exclusionary routing.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation4/5

Most tools target clearly distinct resources—product details, reviews, offers, sellers, deals—and the batch/meta tools are obvious. A couple of adjacent tools could be confused (product_details vs offers_stock, or search by seller vs seller_products), but the descriptions are detailed enough to prevent serious misselection.

Naming Consistency3/5

Names are all snake_case and use readable resource prefixes (product_*, seller_*), but the verb/noun pattern is inconsistent: bare plural nouns (best_sellers, deals), single verbs (search), and compound nouns (offers_stock, product_details_batch) are mixed. It is readable but not a uniform convention.

Tool Count5/5

Twelve tools is a well-scoped size for an Amazon data API. Each tool serves a distinct data-access or meta purpose with no obvious redundancy or bloat.

Completeness4/5

The toolkit covers the core Amazon data surface: product lookup (single/batch), discovery (search, best sellers, deals), offers/stock, reviews, and seller information. Minor gaps exist—no category-tree endpoint and review pagination is not explicit—but primary agent workflows are covered.