Linkfox Keepa Product Search
基于Keepa数据的亚马逊高级商品搜索与筛选,支持品类、价格、月销量、关键词、BSR排名、评论数、评分、包装尺寸、重量、配送方式等多维度条件。当用户提到Keepa选品、亚马逊商品查找、高级选品、BSR筛选、按销售排名选品、月销量过滤、关键词选品、品类选品、竞品筛选、小众商品发掘、历史排名筛选、Keepa product selection, advanced product selection, BSR filtering, sales filtering, category search, competitor screening, historical data filtering, Amazon product selection时触发此技能。即使用户未明确提及"Keepa",只要其需求涉及多条件亚马逊商品搜索、按销售指标筛选商品或超越简单关键词搜索的高级选品,也应触发此技能。
- Skill ID
- linkfox-ai/linkfox-skills/linkfox-keepa-product-search
- Publisher
- linkfox-ai
- Repository
- linkfox-skills
- Installs
- 0
- Files
- 5
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
linkfox-ai/linkfox-skills/linkfox-keepa-product-searchInstalls these files- SKILL.md
- references/api.md
- references/onboarding.md
- scripts/keepa_product_search.py
- scripts/onboarding.py
What this skill tells the agent
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)
| Parameter | Type | Required | Description | Default |
|---|---|---|---|---|
| domain | string | Yes | Amazon marketplace ID | - |
Domain ID mapping:
| ID | Marketplace |
|---|---|
| 1 | Amazon.com (United States) |
| 2 | Amazon.co.uk (United Kingdom) |
| 3 | Amazon.de (Germany) |
| 4 | Amazon.fr (France) |
| 5 | Amazon.co.jp (Japan) |
| 6 | Amazon.ca (Canada) |
| 8 | Amazon.it (Italy) |
| 9 | Amazon.es (Spain) |
| 10 | Amazon.in (India) |
| 11 | Amazon.com.mx (Mexico) |
Default marketplace is 1 (US). Use domain 1 when the user doesn't specify a marketplace.
Keyword Filtering
| Parameter | Type | Description |
|---|---|---|
| keyword | string | Title 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
| Parameter | Type | Description |
|---|---|---|
| rootCategory | array[int] | Root category IDs (max 50) |
| rootCategoryNames | array[string] | Root category names (max 50); used when rootCategory is empty; system auto-resolves IDs |
| categoriesInclude | array[int] | Sub-category IDs to include (max 50) |
| categoriesIncludeNames | array[string] | Sub-category names to include (max 50); supports full category paths with : or > separators |
| categoriesExclude | array[int] | Sub-category IDs to exclude (max 50) |
| categoriesExcludeNames | array[string] | Sub-category names to exclude (max 50); supports full category paths |
Sales & Ranking Filters
| Parameter | Type | Description |
|---|---|---|
| currentSalesGte | integer | Current BSR -- minimum (higher number = worse rank) |
| currentSalesLte | integer | Current BSR -- maximum (lower number = better rank) |
| avg90SalesGte | integer | 90-day average BSR -- minimum |
| avg90SalesLte | integer | 90-day average BSR -- maximum |
| deltaPercent90SalesGte | integer | 90-day BSR change percentage -- minimum |
| deltaPercent90SalesLte | integer | 90-day BSR change percentage -- maximum |
| monthlySoldGte | integer | Monthly sales units -- minimum |
| monthlySoldLte | integer | Monthly sales units -- maximum |
| srAvgGte | integer | Historical average BSR -- minimum (for a specific month) |
| srAvgLte | integer | Historical average BSR -- maximum (for a specific month) |
| srAvgMonth | string | Historical BSR month selection (format: YYYYMM, within last 36 months) |
Price Filters
| Parameter | Type | Description |
|---|---|---|
| currentNewGte | integer | Current new price -- minimum (smallest currency unit) |
| currentNewLte | integer | Current new price -- maximum (smallest currency unit) |
| currentBuyBoxShippingGte | integer | Current Buy Box price including shipping -- minimum (smallest currency unit) |
| currentBuyBoxShippingLte | integer | Current Buy Box price including shipping -- maximum (smallest currency unit) |
Review & Rating Filters
| Parameter | Type | Description |
|---|---|---|
| currentCountReviewsGte | integer | Review count -- minimum |
| currentCountReviewsLte | integer | Review count -- maximum |
| currentRatingGte | number | Rating -- minimum (0.0-5.0) |
| currentRatingLte | number | Rating -- maximum (0.0-5.0) |
Package & Dimensions Filters
| Parameter | Type | Description |
|---|---|---|
| packageLengthGte / packageLengthLte | integer | Package length range (mm) |
| packageWidthGte / packageWidthLte | integer | Package width range (mm) |
| packageHeightGte / packageHeightLte | integer | Package height range (mm) |
| packageWeightGte / packageWeightLte | integer | Package weight range (grams) |
Other Filters
| Parameter | Type | Description |
|---|---|---|
| brand | array[string] | Brand names (OR match) |
| color | array[string] | Colors (OR match) |
| size | array[string] | Sizes (OR match) |
| availableDateGte / availableDateLte | string | Listing date range (yyyy-MM-dd) |
| buyBoxIsAmazon | boolean | Buy Box seller is Amazon |
| buyBoxIsFBA | boolean | Buy Box is FBA fulfilled |
| isHazMat | boolean | Hazardous material flag |
| variationCountGte / variationCountLte | integer | Variation count range |
| currentCountNewGte / currentCountNewLte | integer | Number of new offers range |
| outOfStockPercentage90Gte / outOfStockPercentage90Lte | integer | 90-day out-of-stock percentage range |
| singleVariation | boolean | Return only one variation per parent ASIN |
| productType | array[int] | Product types: 0=standard, 1=downloadable, 2=ebook, 5=variation parent |
Data Options
| Parameter | Type | Description | Default |
|---|---|---|---|
| history | integer | Include historical data (price history, sales rank, monthly sales per month) | 0 (no) |
| rating | integer | Include rating info | 1 (yes) |
Pagination & Sorting
| Parameter | Type | Description | Default | |
|---|---|---|---|---|
| page | integer | Page number (starting from 1) | 1 | |
| perPage | integer | Results per page (min 50, max 100) | 50 | |
| sort | array[object] | Sort rules (max 3); each object: `{"fieldName": "...", "sortDirection": "asc | desc"}` | - |
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(同样落盘)
读数据建议:先看摘要判断是否足够;需要具体字段时优先用 jq或ConvertFrom-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:
More from linkfox-ai
Use this skill in a project
Open any RiverX project, search the Skills panel for linkfox-ai/linkfox-skills/linkfox-keepa-product-search, and install it in one click.
