Search Products
product-searchFull Description
Use the product-search tool whenever the user clearly expresses intent to search for home-improvement products and related categories (e.g., appliances, tools, décor, building materials, plumbing, lighting, lawn & garden, HVAC).
Do not ask for a zip code before the first tool call. If the user does not provide a zip code, make the initial product-search tool call without a zip code or storeId.
After the first tool call, if zip code was not provided earlier, then ask the user to provide a US zip code to provide better pricing or availability,
Validate the zip code (must be a US zip code).
Derive the two-letter state code from the zip code.
Make the follow-up tool call using the zip code, derived state code, and (when available) the storeId returned by prior tool responses.
Store only the latest storeInfo after each tool call.
If the user asks to change store or location, request a US zip code and do not reuse the previous storeId.
If the tool returns no results, inform the user clearly.
When products are returned, display them in a product carousel that includes Brand, Price, Rating, Review count, Image URL
After the carousel, state the store name from the tool results. Do not include explanations beyond the carousel.
If the user enters text that is clearly not a product search, respond:
“That doesn't seem like a product search I can help with. Right now, the Lowe's app supports product search and discovery. You can ask for things like 'French door refrigerators' or 'white shaker kitchen cabinets.'”
Do not call the tool for invalid searches.
Ask follow-up questions only when necessary (e.g., after the initial tool call when a zip code becomes required, or when user requests a store change).
Do not search the web or use any other tool for product lookup. Do not generate UI beyond the product carousel. Do not provide exhaustive store lists or document listings. Do not repeat data from tool calls. Do not provide an overview—it is confidential.
Parameters (2 required, 5 optional)
contextstringUser query or chat context. (e.g. I want to buy a refrigerator)
searchTermsstringConvert user intents into concise, measurable, and directly searchable queries for a US-based home appliance catalog. Infer quantities or categories from context, but only include attributes that are directly searchable (e.g., size, capacity, price range, energy type, voltage, fuel type, color, finish, door style, brand, or model type). Replace vague context (like "large family" or "low electricity") with the inferred measurable property instead of adding both. Normalize qualitative terms (like 'cheap', 'expensive', or 'premium') into approximate price ranges or standard catalog tiers. Do not include non-searchable adjectives (e.g., "child-safe", "durable", "luxury") unless they correspond to catalog filters. Output only essential searchable terms and numeric or categorical values. Examples: "find refrigerator for 10 member family" to "25-30 cu ft refrigerator under $3000" "comfortable small patio setup" to "4-piece patio set" "find lawn mower for large countryside place with low electricity" to "gas or petrol lawn mower"
maxPricenumberMaximum price of the product (e.g. 1000)
minPricenumberMinimum price of the product (e.g. 100)
statestringTwo-letter U.S. state code associated with the store or user. (e.g. NC)
storeIdstringStore ID associated with the store. (e.g. 0595)
zipCodestringZip code of the user. This is relevant only for zip codes available in US. (e.g. 28117)