Skip to main content
Glama

Easyparser — Amazon Product & Seller Data

search_products

Read-only

Search Amazon by keyword or a full search/category URL and get structured product listings: ASIN, title, price, rating, review count, Prime status, and badges (Best Seller, Amazon's Choice) for each result. Also returns the available refinement filters (category, brand, price range) with their IDs.

Use this tool for market research, keyword analysis, and product discovery. If the user already has an ASIN or product URL, do NOT search — use get_product_detail directly.

Each page costs 1 credit. One page typically returns 20-40 products, which is enough for most questions. Use sort_by and exclude_sponsored to improve result quality instead of fetching more pages. To filter by category or brand, first run one search and read the refinements field in the response to discover valid filter IDs, then pass them in refinements.

Input Schema

NameRequiredDescriptionDefault
urlNoFull Amazon search or category URL. Use when the user pastes an Amazon link containing filters. Mutually exclusive with keyword.
domainNoAmazon marketplace domain extension. Determines the regional Amazon site the data is fetched from. Use the domain that matches the user's market — prices, availability and rankings differ across marketplaces..com
keywordNoSearch query as a user would type it into Amazon (e.g. 'stainless steel water bottle 40oz'). Mutually exclusive with url.
sort_byNoResult ordering. 'featured' is Amazon's default; 'price-asc-rank' cheapest first; 'price-desc-rank' most expensive; 'review-rank' most reviewed; 'date-desc-rank' newest listings; 'exact-aware-popularity-rank' by popularity.featured
currencyNoISO currency code for price display (e.g. usd, eur, try). Prices are converted by Amazon's own display logic.
languageNoLanguage code for the Amazon page, in locale format (e.g. en_US, de_DE, tr_TR). Affects the language of titles, descriptions and reviews in the response.
max_pageNoEnding page number. Each page costs 1 credit; max 5 pages per request. Default 1.
min_pageNoStarting page number. Default 1.
refinementsNoCategory/attribute filters in Amazon's format: 'n:<category_id>,p_<filter_group>:<filter_id>'. Discover valid IDs from the refinements field of a previous search response. Example: 'n:7141123011,p_123:502215'.
exclude_sponsoredNoIf true, removes sponsored (paid ad) products from results. Recommended true for organic market analysis.

Output Schema

NameRequiredDescriptionDefault
dataNoParsed Amazon data for the operation.
successYesTrue when the request completed.
operationYesEasyparser operation that ran, e.g. DETAIL or OFFER.
request_idNoEasyparser request ID, useful for support and error logs.
credits_usedNoCredits charged for this request.
credits_remainingNoCredits left on the account after this request.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "credits_remaining": {
      +      "description": "Credits left on the account after this request.",
      +      "type": "number"
      +    },
      +    "credits_used": {
      +      "description": "Credits charged for this request.",
      +      "type": "number"
      +    },
      +    "data": {
      +      "description": "Parsed Amazon data for the operation."
      +    },
      +    "operation": {
      +      "description": "Easyparser operation that ran, e.g. DETAIL or OFFER.",
      +      "type": "string"
      +    },
      +    "request_id": {
      +      "description": "Easyparser request ID, useful for support and error logs.",
      +      "type": "string"
      +    },
      +    "success": {
      +      "description": "True when the request completed.",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "success",
      +    "operation"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true), and the description adds operational context the annotations cannot: 1 credit per page, typical 20-40 results per page, and the recommendation to use sort_by/exclude_sponsored rather than paging further. It also discloses the two-step refinements discovery workflow (read the refinements field first, then pass IDs).

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

Conciseness5/5

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

Front-loaded with the action and return shape, then usage boundaries, then cost/efficiency guidance. Every sentence carries operational value with no filler or restatement of the name.

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?

With an output schema present and annotations covering safety, the description still supplies the non-obvious details an agent needs: credit cost, result volume, the refinements discovery dependency, and the ASIN/URL fallback. Nothing material is missing for correct invocation.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already documents all 10 parameters and the baseline is 3. The description goes beyond by explaining the refinements usage pattern ('first run one search and read the refinements field ... then pass them in refinements') and steering toward exclude_sponsored and sort_by, adding practical meaning not present in the schema.

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

Purpose5/5

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

Specific verb (search) and resource (Amazon product listings by keyword or URL), and it enumerates exactly what is returned: ASIN, title, price, rating, review count, Prime status, badges, and refinement filters. It also explicitly names the sibling it is not (get_product_detail) and the condition that selects it.

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

Usage Guidelines5/5

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

States when to use it (market research, keyword analysis, product discovery) and when not to ('If the user already has an ASIN or product URL, do NOT search — use get_product_detail directly'). It routes the agent to the correct alternative with an explicit condition.

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.