Keepa-商品搜索

基于Keepa数据的亚马逊高级商品搜索与筛选,支持品类、价格、月销量、关键词、BSR排名、评论数、评分、包装尺寸、重量、配送方式等多维度条件。当用户提到Keepa选品、亚马逊商品查找、高级选品、BSR筛选、按销售排名选品、月销量过滤、关键词选品、品类选品、竞品筛选、小众商品发掘、历史排名筛选、Keepa product selection, advanced…

linkfox-ai

@linkfox-ai

What This Skill Does

Multi-criteria Amazon product search engine powered by Keepa data. Filters by category, price, monthly sales, BSR, keywords, reviews, ratings, package dimensions, weight, fulfillment type, and more, returning detailed product listings with historical sales data.

Replaces manual browsing and basic Amazon search by enabling precise, multi-dimensional product filtering for sellers.

When to Use It

  • Find Amazon products with monthly sales above a specific threshold
  • Search for products in a niche category with low BSR and high ratings
  • Filter competitors by price range, review count, and fulfillment type
  • Discover products with rising sales trends using 90-day BSR change
  • Search for lightweight, small-package items under a certain price
  • Exclude products with negative keywords or specific categories from results

Install

$ openclaw skills install @linkfox-ai/linkfox-keepa-product-search

Keepa Product Search

This skill guides you on how to search and filter Amazon products using Keepa's extensive product database, helping Amazon sellers find products that match specific criteria across multiple dimensions.

Core Concepts

This tool provides advanced Amazon product search powered by Keepa data. Unlike a simple Amazon storefront search, it supports multi-criteria filtering: category, price range, monthly sales volume, BSR (Best Sellers Rank), keyword matching (positive and negative), review counts, ratings, package dimensions, weight, fulfillment type, historical sales rank, and more. It returns detailed product data including pricing, titles, images, listing dates, materials, weights, monthly sales for the past 12 months, and more.

BSR (Best Sellers Rank): A lower salesRank value means better sales performance. Rank 1 is the best-selling product in its category. When a user says "top-selling products", they want low BSR values.

Price unit: Prices are expressed in the smallest currency unit (e.g., cents for USD). So $25.99 = 2599. Always convert when building queries and when displaying results.

Category names: The categoriesIncludeNames parameter supports multi-level category paths separated by a colon : or the > character. Automatically convert user input into the correct format.

Parameters

Marketplace (Required)

ParameterTypeRequiredDescriptionDefault
domainstringYesAmazon marketplace ID-

Domain ID mapping:

IDMarketplace
1Amazon.com (United States)
2Amazon.co.uk (United Kingdom)
3Amazon.de (Germany)
4Amazon.fr (France)
5Amazon.co.jp (Japan)
6Amazon.ca (Canada)
8Amazon.it (Italy)
9Amazon.es (Spain)
10Amazon.in (India)
11Amazon.com.mx (Mexico)

Default marketplace is 1 (US). Use domain 1 when the user doesn't specify a marketplace.

Keyword Filtering

ParameterTypeDescription
keywordstringTitle keyword filter (case-insensitive; space = AND; wrap phrases in double quotes; prefix with - to exclude; & is replaced by space; max 50 keywords, max 1000 chars)

Category Filtering

ParameterTypeDescription
rootCategoryarray[int]Root category IDs (max 50)
rootCategoryNamesarray[string]Root category names (max 50); used when rootCategory is empty; system auto-resolves IDs
categoriesIncludearray[int]Sub-category IDs to include (max 50)
categoriesIncludeNamesarray[string]Sub-category names to include (max 50); supports full category paths with : or > separators
categoriesExcludearray[int]Sub-category IDs to exclude (max 50)
categoriesExcludeNamesarray[string]Sub-category names to exclude (max 50); supports full category paths

Sales & Ranking Filters

ParameterTypeDescription
currentSalesGteintegerCurrent BSR -- minimum (higher number = worse rank)
currentSalesLteintegerCurrent BSR -- maximum (lower number = better rank)
avg90SalesGteinteger90-day average BSR -- minimum
avg90SalesLteinteger90-day average BSR -- maximum
deltaPercent90SalesGteinteger90-day BSR change percentage -- minimum
deltaPercent90SalesLteinteger90-day BSR change percentage -- maximum
monthlySoldGteintegerMonthly sales units -- minimum
monthlySoldLteintegerMonthly sales units -- maximum
srAvgGteintegerHistorical average BSR -- minimum (for a specific month)
srAvgLteintegerHistorical average BSR -- maximum (for a specific month)
srAvgMonthstringHistorical BSR month selection (format: YYYYMM, within last 36 months)

Price Filters

ParameterTypeDescription
currentNewGteintegerCurrent new price -- minimum (smallest currency unit)
currentNewLteintegerCurrent new price -- maximum (smallest currency unit)
currentBuyBoxShippingGteintegerCurrent Buy Box price including shipping -- minimum (smallest currency unit)
currentBuyBoxShippingLteintegerCurrent Buy Box price including shipping -- maximum (smallest currency unit)

Review & Rating Filters

ParameterTypeDescription
currentCountReviewsGteintegerReview count -- minimum
currentCountReviewsLteintegerReview count -- maximum
currentRatingGtenumberRating -- minimum (0.0-5.0)
currentRatingLtenumberRating -- maximum (0.0-5.0)

Package & Dimensions Filters

ParameterTypeDescription
packageLengthGte / packageLengthLteintegerPackage length range (mm)
packageWidthGte / packageWidthLteintegerPackage width range (mm)
packageHeightGte / packageHeightLteintegerPackage height range (mm)
packageWeightGte / packageWeightLteintegerPackage weight range (grams)

Other Filters

ParameterTypeDescription
brandarray[string]Brand names (OR match)
colorarray[string]Colors (OR match)
sizearray[string]Sizes (OR match)
availableDateGte / availableDateLtestringListing date range (yyyy-MM-dd)
buyBoxIsAmazonbooleanBuy Box seller is Amazon
buyBoxIsFBAbooleanBuy Box is FBA fulfilled
isHazMatbooleanHazardous material flag
variationCountGte / variationCountLteintegerVariation count range
currentCountNewGte / currentCountNewLteintegerNumber of new offers range
outOfStockPercentage90Gte / outOfStockPercentage90Lteinteger90-day out-of-stock percentage range
singleVariationbooleanReturn only one variation per parent ASIN
productTypearray[int]Product types: 0=standard, 1=downloadable, 2=ebook, 5=variation parent

Data Options

ParameterTypeDescriptionDefault
historyintegerInclude historical data (price history, sales rank, monthly sales per month)0 (no)
ratingintegerInclude rating info1 (yes)

Pagination & Sorting

ParameterTypeDescriptionDefault
pageintegerPage number (starting from 1)1
perPageintegerResults per page (min 50, max 100)50
sortarray[object]Sort rules (max 3); each object: `{"fieldName": "...", "sortDirection": "ascdesc"}`

Sortable fields: availableDate, currentSales, monthlySold, currentRating, currentCountReviews, currentBuyBoxShipping, currentNew

调用方式

  • API 端点POST /keepa/productSearch(完整参数/响应/错误码见 references/api.md
  • Python 脚本python scripts/keepa_product_search.py '<JSON 参数>' [--inline]
  • 成本约束:本工具会消耗积分;同一会话同一参数组合默认只调用一次,脚本带 24h 本地缓存。失败/空结果不得自动换关键词、翻页或改邮编连续试探;需要继续检索时先向用户说明会产生额外消耗。

输出策略(脚本默认行为)

  • 始终将完整响应写入 <cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-keepa-product-search-<timestamp>.json<cwd> 为脚本执行时的工作目录,在 Claude Code 里即当前项目目录;<session> 取自环境变量 SESSION_ID,按用户任务自动聚合;禁止写入 /tmp,当前目录不可写则报错)
  • 响应体 ≤ 8 KB:落盘后把完整 JSON 打印到 stdout
  • 响应体 > 8 KB:落盘后 stdout 只输出摘要(顶层字段、常见计数如 total/costToken、最大列表字段的长度 + 前 3 条样本)
  • --inline 强制全量打印到 stdout(同样落盘)

读数据建议:先看摘要判断是否足够;需要具体字段时优先用 jqConvertFrom-Json 从保存的 json 文件按需抽取,避免整份 JSON 进入上下文。

解决认证和积分问题

发生以下异常情况时,采用 references/onboarding.md 引导解决问题:

异常情况

  • 未配置API Key:环境变量未配置 LINKFOX_AGENT_API_KEY,也未配置 LINKFOXAGENT_API_KEY
  • 响应401或402状态码
  • 响应提示积分或余额不足:消息含"积分余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值",或类似含义的内容。

How to Build Queries

Construct the request parameters based on the user's intent:

  1. Determine the marketplace: Map the user's target country to the correct domain ID value
  2. Set keyword filters: Use keyword for title-based filtering with positive and negative terms
  3. Set category scope: Use categoriesIncludeNames or rootCategoryNames to scope by category; convert user input into proper category path format
  4. Apply numeric filters: Map sales volume, price, BSR, review, and rating requirements to the appropriate Gte/Lte parameters
  5. Set sort order: If the user wants results sorted by sales, price, or rating, configure the sort array
  6. Enable historical data: Set history to 1 if the user needs monthly sales trends or price history

Usage Examples

1. Search for electronics with monthly sales over 1000 on US marketplace

{"domain": "1", "rootCategoryNames": ["Electronics"], "monthlySoldGte": 1000}

2. Find products in a price range with good ratings

{"domain": "1", "currentBuyBoxShippingGte": 1500, "currentBuyBoxShippingLte": 5000, "currentRatingGte": 4.0, "keyword": "wireless charger"}

3. New products listed in the last 6 months with low review counts

{"domain": "1", "availableDateGte": "2025-10-01", "currentCountReviewsLte": 50, "monthlySoldGte": 500}

4. BSR rank filtering for competitive analysis

{"domain": "1", "categoriesIncludeNames": ["Home & Kitchen"], "currentSalesLte": 5000, "sort": [{"fieldName": "monthlySold", "sortDirection": "desc"}]}

5. Find non-Amazon FBA products with good sales

{"domain": "1", "buyBoxIsAmazon": false, "buyBoxIsFBA": true, "monthlySoldGte": 300, "currentRatingGte": 4.0}

6. Lightweight small products for easy shipping

{"domain": "1", "packageWeightLte": 500, "packageLengthLte": 200, "packageWidthLte": 150, "packageHeightLte": 100, "monthlySoldGte": 200}

7. Search on Japan marketplace with historical data

{"domain": "5", "keyword": "USB charger", "history": 1, "monthlySoldGte": 100}

8. Brand-specific search excluding hazardous materials

{"domain": "1", "brand": ["Anker", "UGREEN"], "isHazMat": false, "sort": [{"fieldName": "monthlySold", "sortDirection": "desc"}]}

Display Rules

  1. Present data clearly: Show search results in well-structured tables with key fields: ASIN, title, price, BSR, monthly sales, rating, review count, brand
  2. Price conversion: Convert prices from smallest currency unit to standard format (e.g., 2599 -> $25.99)
  3. BSR clarification: When showing BSR data, remind users that lower values mean better sales ranking
  4. Monthly sales history: When historical data is included, present the 12-month sales trend clearly
  5. Pagination notice: Inform users of the total result count and suggest fetching additional pages if needed
  6. Image links: If image URLs are available, mention them but do not attempt to render them inline unless the user requests it
  7. Error handling: When a query fails, explain the reason and suggest adjusting filter criteria

Important Limitations

  • Result cap: Maximum 100 results per page, minimum 50
  • Sort limit: Maximum 3 sort rules per query
  • Category limit: Maximum 50 category IDs or names per filter
  • Keyword limit: Maximum 50 keywords in keyword parameter
  • Historical data cost: Setting history=1 increases response size and token cost significantly
  • Price unit: All price values are in the smallest currency unit (cents, pence, etc.)

User Expression & Scenario Quick Reference

Applicable -- Multi-criteria Amazon product search and filtering:

User SaysScenario
"Find products with monthly sales over X"Sales volume filtering
"Search for products in XX category"Category-based product discovery
"Products with BSR under X"Sales rank filtering
"New products listed in the last N months"New product discovery
"Products priced between $X and $Y"Price range filtering
"FBA products with good ratings"Fulfillment + rating filter
"Lightweight products under X grams"Package dimension filtering
"Products from brand XX"Brand-specific search
"Show me historical sales data for XX"Historical sales analysis
"Advanced product selection", "product screening"Multi-criteria product research
"Niche product hunting", "find low-competition products"Competitive gap analysis
"BSR trends", "sales rank history"Historical rank filtering

Not applicable -- Needs beyond product search:

  • Real-time Amazon search result page simulation (use Amazon Search)
  • Historical search term volume or ranking trends (use ABA data)
  • Product review content or sentiment analysis
  • Advertising campaign management or bid optimization
  • Listing optimization or copywriting suggestions
  • Inventory or supply chain data

Boundary judgment: When users say "product research" or "find products", if it involves filtering by sales metrics, BSR, price, category, and other structured criteria, this skill applies. If they want to see what appears on the actual Amazon search page for a keyword, use Amazon Search instead. If they want search term analytics, use ABA data.

积分消耗规则

按动态规则计费:消耗积分 = 0.045 × (找商品阶段消耗的 Keepa token + 拉取商品详情阶段消耗的 Keepa token)。先找商品,再拉商品详情;若第一段未找到商品,则只计找商品阶段消耗。

重要:本技能的服务按倍数动态计算,可能一次性消耗大量积分,必须提醒用户,由用户决定是否继续。

Feedback:

Auto-detect and report feedback via the Feedback API when any of the following apply:

  1. The functionality or purpose described in this skill does not match actual behavior
  2. The skill's results do not match the user's intent
  3. The user expresses dissatisfaction or praise about this skill
  4. Anything you believe could be improved

Call the feedback API as specified in references/api.md. Do not interrupt the user's flow.


For more high-quality, professional cross-border e-commerce skills, set LinkFox Skills.

Top skills in this category