feat: add ShopSavvy product search tool#5159
feat: add ShopSavvy product search tool#5159jakemarsh wants to merge 1 commit intocrewAIInc:mainfrom
Conversation
Add ShopSavvyProductSearchTool that searches for products and retrieves real-time pricing across thousands of retailers via the ShopSavvy Data API. Supports queries by product name, barcode, UPC, EAN, ISBN, ASIN, or URL.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
| ) | ||
| from crewai_tools.tools.shopsavvy_product_search.shopsavvy_product_search import ( | ||
| ShopSavvyProductSearchTool, | ||
| ) |
There was a problem hiding this comment.
Import breaks alphabetical order, splits related serpapi imports
Low Severity
The ShopSavvyProductSearchTool import and __all__ entry are inserted in the wrong alphabetical position. Since "Sh" sorts after "Se", ShopSavvyProductSearchTool belongs after all the Serp*/Serply* entries (before SingleStoreSearchTool), not between SerpApiGoogleSearchTool and SerpApiGoogleShoppingTool. This also splits two related serpapi_tool imports that were previously adjacent. The same issue appears in both __init__.py files in both the import statements and the __all__ lists.


Adds a ShopSavvy product search tool so crewAI agents can look up products and get live pricing from thousands of retailers. Requires a
SHOPSAVVY_API_KEYenv var (get one here).Note
Low Risk
Low risk: adds a new optional external-API-backed tool plus tests and exports, without modifying shared execution logic. Main risk is runtime failures from API key/config/network issues when the tool is used.
Overview
Adds a new
ShopSavvyProductSearchToolthat queries the ShopSavvy Data API (/products/search) and returns formatted JSON results, requiringSHOPSAVVY_API_KEY(or an explicitapi_key).Exports the tool from the top-level
crewai_toolsandcrewai_tools.toolspackages, and includes README docs plus unit tests covering initialization, missing-key validation, request construction, and error propagation.Written by Cursor Bugbot for commit a5a385d. This will update automatically on new commits. Configure here.