search_products
Find products from the shopper's needs or keywords. Returns the match count, up to 15 candidates and the interpreted conditions. Full matches come first; soft preferences affect ranking rather than filtering. The interpreted conditions show alternatives joined with or (shared requirements apply to each), preferences that only rank, and an Ignored line for requirements no listed spec expresses; those were not used as filters. Ranking also considers request fit, ratings weighted by review count and brand diversity; the result states the applied order. Explicit requests to sort by most reviewed or highest rated are supported. When more match than are listed, "refine" gives facts for narrowing: price range and, for each key spec not yet stated, its values with how common each is and its median price. Each product shows its representative offer (offer id) at its stored price after coupons, its unit price and where that sits among products with the same key specs, its seller (with the seller's vetting risk when medium or high) and its image link; these stored prices support candidate comparison and do not establish a current offer quote. A link, ASIN, GTIN or model number matches that one product.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"query": "<query>"
},
"name": "search_products"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Concise product needs: product type, required features, explicit size or quantity bounds, hard exclusions, and any stated USD budget. Include only requirements actually given by the shopper; preserve exact values, ranges and comparison directions. State alternatives or options to compare in one query with "or" (e.g. "non-dimmable, dimmable or color-adjustable"); requirements they share apply to every alternative. Mark soft preferences as preferred; everything not marked preferred is required. Leave answer-format, research-process and fact-reporting requests without target values out of query; retain them for detail checks and the answer. | |
| filters | No | Optional: {"price_max": 100} or attribute keys from `get_category_overview`, not display names. Unknown keys fail explicitly. Filters require a needs-based query for an indexed product type, not an identifier lookup. |