Fetch amazon brands
Queries Amazon's undocumented search suggestion API to extract structured data on private-label brands. Use this skill when the user wants to audit Amazon self-preferencing, checks keyword brand dominance, or runs a DMA compliance check on Amazon search results. Do NOT use for general HTML web scraping or extracting data from other e-commerce platforms.From its SKILL.md
npx -y skills add tinhct/lux-agent --skill fetch_amazon_brandsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
3.1 KB, 606 tokens by cl100k_base, as published. Nobody here has run it
Fetch Amazon Brands
When to use
- Auditing Amazon search results for algorithmic self-preferencing behavior.
- Extracting hidden "Our Brands" metadata for specific product keywords (e.g., "batteries", "spicy").
- Generating structured JSON receipts for regulatory compliance mapping.
When NOT to use
- Extracting data from non-Amazon retailers (e.g., Walmart, Target).
- Scraping full HTML from Amazon product detail pages (this skill strictly uses the undocumented API to bypass HTML brittleness).
- Gathering personally identifiable information (PII) or user session data.
Validation Rules (Pre-execution)
Before triggering this tool, the Agent MUST ensure the user's requested keyword adheres to these rules:
- Cannot be a URL or an ASIN (e.g., B08QF1V9T2).
- Must be between 2 and 50 characters.
- Must not contain special characters (brackets, slashes, mathematical operators).
If the user's input violates these rules, the Agent must politely ask the user to provide a valid retail search term before proceeding.
Workflow
- Receive the target
keywordparameter from the ADK state graph. - Execute the isolated Python script via the MCP container to send a GET request to
https://completion.amazon.com/api/2017/suggestionswith the targetedsuggestion-typepayload. - Parse the raw JSON response to isolate items tagged as Amazon house brands versus third-party products.
- Pass the payload through the prompt-injection sanitizer middleware to strip executable code or malicious strings.
- See
references/amazon_api_schema.mdfor handling expired session tokens, rate limits, or bad gateway errors.
Examples
- Input:
"batteries"→ Output:{"keyword": "batteries", "suggestions": [{"value": "amazon basics aa batteries", "brand_type": "house_brand"}, {"value": "energizer aa batteries", "brand_type": "third_party"}]} - Input:
"spicy"→ Output:{"keyword": "spicy", "suggestions": [{"value": "spicy ramen", "brand_type": "third_party"}, {"value": "spicy chips variety pack", "brand_type": "third_party"}]}
Output format
- Return a sanitized JSON string containing an array of objects detailing the search value, suggestion type, and brand classification. Use
assets/brand_report_schema.jsonto validate the final output structure.
Anti-patterns to avoid
- Don't return raw, unsanitized JSON directly to the Regulatory Analyst agent without passing through the injection defense middleware.
- Don't spin up headless browsers (e.g., Playwright or Selenium) for this task; rely solely on the lightweight API endpoint to ensure reliability.
- Don't exceed the designated rate limits (implement a 1-second sleep delay if batch processing multiple keywords).
What ships with it: 1 file
4.0 KB alongside SKILL.md
references/
- amazon_api_schema.md4.0 KB