One-stop AI toolset for Amazon product selection, integrating 12 categories of underlying tools and 33 sub-capabilities, covering frontend real-time, historical time series, keywords and traffic, niche markets, business insights, and review mining. For complete parameters, response fields, and error codes of each sub-capability, see references/ under the corresponding files; for executable scripts, see scripts/。
Capability Boundaries
✅ Scope of Capabilities
- Frontend real-time data: keyword search ranking and SERP, image search (
amazon_search), product details/five bullets/A+/variations (amazon_product_detail), reviews filtered by star rating (amazon_reviews), Alexa natural language shopping guide (amazon_alexa_assistant)。 - Competitor search: SellerSprite competitor lookup (reverse-lookup competitors by keyword/ASIN/seller/brand/category, including sales, BSR, pricing, ratings, and growth trends,
sellerspritecompetitor lookup), Jimu mines competitors in the same niche market by ASIN and filters them by multiple dimensions such as conversion rate/sales/price/profit (jiimorepage-asins-by-asin)。 - Historical time series and trends: Keepa product details/search/historical curves (
keepa, price/BSR/monthly sales/number of sellers), Sorftime details/search and trend lookback (sorftime, including FBA profit, Deal history, historical snapshots). - Keyword and traffic analysis: ABA search term mining (
amazon_aba_search_term), Jungle Scout reverse lookup/expansion/history/share of voice (jungle_scout), SIF ASIN keyword reverse lookup/ASIN traffic structure/keyword competition overview/breakdown of competitor traffic sources under keywords (sif_search_intelligence), SellerSprite traffic keyword reverse lookup (sellerspritetraffic keywords). - Niche and market analysis: Jimu niche market metrics/reviews/competitors/potential hit products (
jiimore), SellerSprite product search for product selection, market selection list and statistical dashboard (sellersprite), Jungle Scout product database and sales estimates (jungle_scout)。 - Business insights and reverse product selection: generate six-dimensional AI reports by keyword on market potential/product features/reviews/customer profiles/search trends/pricing, and reverse-screen blue ocean tracks by 30+ business dimensions (
amazon_business_insight)。 - Covers 15+ marketplaces including the United States, United Kingdom, Germany, France, Japan, Canada, Italy, Spain, India, Mexico, Brazil, etc. (the set of marketplaces varies slightly by tool; see each references for details).
❌ Boundaries and Limitations
- API Key required: all tools require the environment variable
LINKFOX_AGENT_API_KEY(orLINKFOXAGENT_API_KEY); each tool is billed independently and rate-limited independently, and data timeliness and marketplace coverage vary by data source. - Billing constraints: within the same session, the same parameter combination is called only once by default (the script has a 24h local cache); on failure or empty results, do not automatically try successive probes by changing keywords, paging, or changing zip code; if further retrieval is needed, first explain to the user that additional consumption will be incurred (for each tool's billing rules, see
skills-version.jsonthe corresponding entry and thecostTokenfield in api.md within references). - Out of scope: Store operations (Listing publishing/orders/inventory, using the SP-API series), advertising placement and management (using the Amazon Ads series), logistics and supply chain planning, 1688 sourcing, product selection for other platforms such as TikTok/Walmart, non-e-commerce tasks, direct communication with platforms or sellers, and real-time inventory and order processing.
- Data timeliness: front-end tools use real-time scraping (including SERP rankings, reviews, Alexa); historical tools (Keepa/Sorftime/ABA) follow the update cycle of their respective data sources,
lastUpdate/costTokenand other fields indicate refresh and consumption.
Tool selection guide
Use the table below to identify the sub-capability based on your needs, then jump to [Business Requirement Routing Quick Reference] to look up endpoints/scripts/references for parameters and execution.
| Requirement / What the user says | Default recommendation (sub-capability) | When to switch to another |
|---|---|---|
| ASIN product data / price and sales trend ("How is this ASIN selling") | linkfox-keepa-product-request(most complete fields) |
For FBA profit + trend lookback use linkfox-sorftime-amazon-product-detail; for A+/variations/real-time price use linkfox-amazon-product-detail |
| ASIN traffic keyword reverse lookup ("What are the traffic keywords for this ASIN") | linkfox-sif-asin-keywords(traffic keywords + ranking + search volume) |
For PPC bid + ranking difficulty use linkfox-junglescout-keyword-by-asin; for conversion type + historical months use linkfox-sellersprite-traffic-keyword |
| Keyword expansion / related traffic keywords ("What related words/long-tail words does this keyword have") | linkfox-junglescout-keyword-by-keyword(seed keyword expansion, including search volume/trend/PPC bid) |
To reverse-lookup its traffic keywords by ASIN use linkfox-sif-asin-keywords; for official search term ranking (not expansion) use linkfox-aba-intelligent-query |
| Keyword search volume trend ("search volume/ranking of this keyword") | linkfox-junglescout-keyword-history(exact search volume) |
For official search ranking (not search volume) use linkfox-aba-intelligent-query |
| Product search / product selection filtering ("Help me select products / what sells well") | linkfox-keepa-product-search(multi-dimensional + historical) |
For historical snapshot lookback use linkfox-sorftime-amazon-product-query; for gross margin filtering use linkfox-sellersprite-product-search; for real-time SERP use linkfox-amazon-search |
| Keyword competition level ("Is this keyword highly competitive") | linkfox-sif-keyword-overview(supply-demand ratio + search volume) |
For brand voice share use linkfox-junglescout-keyword-share-of-voice |
| Niche / segment market evaluation ("Can I enter this segment") | linkfox-jiimore-get-niche-info-by-keyword(monopoly/brand/new product success rate) |
For a category-dimension dashboard use linkfox-sellersprite-market-research / -market-statistics; for multi-condition product library filtering use linkfox-junglescout-product-database |
| ASIN sales estimate | linkfox-junglescout-sales-estimates(daily dimension) |
For 12-month monthly sales trend use linkfox-keepa-product-request |
| Niche reviews / pain points ("review pain points / negative reviews") | linkfox-jiimore-get-niche-review-from-keyword(segment-market level) |
For a single ASIN's reviews use linkfox-amazon-reviews-list |
| ASIN traffic structure / competitor analysis | linkfox-sif-asin-summary(ASIN traffic composition) |
To break down competitor traffic under a keyword use linkfox-sif-keyword-summary |
| Competitor reverse lookup (keyword/ASIN/seller/brand) | linkfox-sellersprite-competitor-lookup |
To mine competitors in the same segment by ASIN use linkfox-jiimore-page-asins-by-asin |
| Six-dimensional AI market report ("AI market report") | linkfox-amazon-opportunity-report-by-keyword |
— |
| Reverse-find tracks by metrics ("reverse-find tracks by conditions") | linkfox-amazon-opportunity-search-by-metrics |
— |
| Front-end real-time search / image search ("Search this keyword on the front end") | linkfox-amazon-search / linkfox-amazon-search-by-image |
— |
| Natural language shopping guide ("Ask Amazon recommendations in natural language") | linkfox-amazon-alexa-search |
— |
Tool selection approach
- Important: When multiple sub-capabilities meet the requirement, conduct an in-depth analysis of the sub-capabilities' functions, purposes, and input/output parameters based on the requirement, identify the most suitable sub-capability from that investigation, and recommend it to the user so the user can decide for themselves.
- When the degree of suitability is equal, recommend the "default recommended sub-capability" to the user.
Business Requirement Routing Quick Reference
After determining the sub-capability according to [Tool Selection Guide], use the table below to look up the endpoint, script, and references file, then retrieve parameters and execute:
Sub-capability ↔ references file ↔ endpoint ↔ script (33 items)
amazon_aba_search_term
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-aba-intelligent-query | references/linkfox-aba-intelligent-query.md | POST /aba/intelligentQuery | aba_query.py |
amazon_alexa_assistant
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-amazon-alexa-search | references/linkfox-amazon-alexa-search.md | POST /amazon/alexaSearch | amazon_alexa_search.py |
amazon_business_insight
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-amazon-opportunity-report-by-keyword | references/linkfox-amazon-opportunity-report-by-keyword.md | POST /amazon/opportunity/reportByKeyword | amazon_opportunity_report.py |
| linkfox-amazon-opportunity-search-by-metrics | references/linkfox-amazon-opportunity-search-by-metrics.md | POST /amazon/opportunity/searchByMetrics | amazon_opportunity_screener.py |
amazon_search
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-amazon-search | references/linkfox-amazon-search.md | POST /amazon/search | amazon_search.py |
| linkfox-amazon-search-by-image | references/linkfox-amazon-search-by-image.md | POST /amazon/searchByImage | amazon_search_by_image.py、upload_image.py |
amazon_product_detail
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-amazon-product-detail | references/linkfox-amazon-product-detail.md | POST /amazon/product/detail | amazon_product_detail.py |
amazon_reviews
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-amazon-reviews-list | references/linkfox-amazon-reviews-list.md | POST /amazon/reviews/list | amazon_reviews.py |
jiimore
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-jiimore-get-niche-info-by-keyword | references/linkfox-jiimore-get-niche-info-by-keyword.md | POST /jiimore/getNicheInfoByKeyword | jiimore_get_niche_info_by_keyword.py |
| linkfox-jiimore-get-niche-info | references/linkfox-jiimore-get-niche-info.md | POST /jiimore/getNicheInfo | jiimore_get_niche_info.py |
| linkfox-jiimore-get-niche-review-from-keyword | references/linkfox-jiimore-get-niche-review-from-keyword.md | POST /jiimore/getNicheReviewFromKeyword | jiimore_get_niche_review.py |
| linkfox-jiimore-product-discovery | references/linkfox-jiimore-product-discovery.md | POST /jiimore/productDiscovery | jiimore_product_discovery.py |
| linkfox-jiimore-page-asins-by-asin | references/linkfox-jiimore-page-asins-by-asin.md | POST /jiimore/pageAsinsByAsin | jiimore_page_asins_by_asin.py |
jungle_scout
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-junglescout-keyword-by-asin | references/linkfox-junglescout-keyword-by-asin.md | POST /tool-jungle-scout/keywords/by-asin | junglescout_keyword_by_asin.py |
| linkfox-junglescout-keyword-by-keyword | references/linkfox-junglescout-keyword-by-keyword.md | POST /tool-jungle-scout/keywords/by-keyword | junglescout_keyword_by_keyword.py |
| linkfox-junglescout-keyword-history | references/linkfox-junglescout-keyword-history.md | POST /tool-jungle-scout/keywords/historical-search-volume | junglescout_keyword_history.py |
| linkfox-junglescout-keyword-share-of-voice | references/linkfox-junglescout-keyword-share-of-voice.md | POST /tool-jungle-scout/keywords/share-of-voice | junglescout_keyword_sov.py |
| linkfox-junglescout-product-database | references/linkfox-junglescout-product-database.md | POST /tool-jungle-scout/product-database/query | junglescout_product_database.py |
| linkfox-junglescout-sales-estimates | references/linkfox-junglescout-sales-estimates.md | POST /tool-jungle-scout/sales-estimates/query | junglescout_sales_estimates.py |
keepa
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-keepa-product-request | references/linkfox-keepa-product-request.md | POST /keepa/productRequest | keepa_product_detail.py |
| linkfox-keepa-product-search | references/linkfox-keepa-product-search.md | POST /keepa/productSearch | keepa_product_search.py |
| linkfox-keepa-product-series | references/linkfox-keepa-product-series.md | POST /keepa/productSeries | keepa_product_history.py |
sellersprite
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-sellersprite-competitor-lookup | references/linkfox-sellersprite-competitor-lookup.md | POST /sellersprite/competitor-lookup | sellersprite_competitor_lookup.py |
| linkfox-sellersprite-product-search | references/linkfox-sellersprite-product-search.md | POST /sellersprite/productSearch | sellersprite_product_search.py |
| linkfox-sellersprite-market-research | references/linkfox-sellersprite-market-research.md | POST /sellersprite/market/research | sellersprite_market_research.py |
| linkfox-sellersprite-market-statistics | references/linkfox-sellersprite-market-statistics.md | POST /sellersprite/market/statistics | sellersprite_market_statistics.py |
| linkfox-sellersprite-traffic-keyword | references/linkfox-sellersprite-traffic-keyword.md | POST /sellersprite/traffic/keyword | sellersprite_traffic_keyword.py |
sif_search_intelligence
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-sif-asin-keywords | references/linkfox-sif-asin-keywords.md | POST /sif/asinKeywords | sif_asin_keywords.py |
| linkfox-sif-asin-summary | references/linkfox-sif-asin-summary.md | POST /sif/asinSummary | sif_asin_summary.py |
| linkfox-sif-keyword-overview | references/linkfox-sif-keyword-overview.md | POST /sif/keywordOverview | sif_keyword_overview.py |
| linkfox-sif-keyword-summary | references/linkfox-sif-keyword-summary.md | POST /sif/keywordSummary | sif_keyword_traffic.py |
sorftime
| Sub-capability | references file | Endpoint | Script |
|---|---|---|---|
| linkfox-sorftime-amazon-product-detail | references/linkfox-sorftime-amazon-product-detail.md | POST /sorftime/amazon/productDetail | sorftime_product_detail.py |
| linkfox-sorftime-amazon-product-query | references/linkfox-sorftime-amazon-product-query.md | POST /sorftime/amazon/productQuery | sorftime_product_search.py |
Invocation Method
- Gateway:
${LINKFOX_TOOL_GATEWAY}/<端点>, request method POST, Content-Typeapplication/json, authentication HeaderAuthorization: <api_key>(api_key is read from environment variableLINKFOX_AGENT_API_KEYorLINKFOXAGENT_API_KEY; if not configured, handle it according to [Resolving Authentication and Credit Issues] below). For each endpoint path, see [Business Requirement Routing Quick Reference] below and the corresponding references file. - Python Script: Each sub-capability corresponds to
scripts/<脚本名>.py '<JSON 参数>' [--inline](for script names and endpoints, see the routing quick reference table). The script internally completes the gateway call, authentication, and disk write. - Output Strategy (Default Script Behavior): Always write the complete response to
<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/<skill>-<timestamp>.json(<cwd>is the working directory when the script executes;<session>is taken from environment variableSESSION_ID; writing to /tmp is prohibited; if the current directory is not writable, report an error); after the response body ≤ 8 KB is written to disk, print it in full to stdout; if > 8 KB, print only a summary (top-level fields, common counts, maximum list length + first 3 samples); add--inlineto force full printing (also written to disk). - Data Reading Suggestions: First check the summary to determine whether it is sufficient; when specific fields are needed, prefer
jqor PowerShellConvertFrom-JsonExtract on demand from the saved json file to avoid the entire JSON entering the context. - Full parameters: For each sub-capability's request parameters, response fields, error codes, and curl examples, see
references/<源skill>.md(the file contains the full text of that sub-capability's SKILL.md and api.md).
Usage examples
The following provides input/output examples for representative sub-capabilities by data layer; for parameters of other sub-capabilities, see the corresponding references files.domain is the Keepa site numeric ID (1=US/2=UK/3=DE/5=JP…),marketplace/amazonDomain/country/countryCode/region is the site code for each tool; for meanings, see references.
Frontend real-time layer
1. Keyword search ranking (amazon_search → amazon_search.py)
{"keyword": "wireless earbuds", "amazonDomain": "amazon.com", "page": 1}
Output:products[](asin/title/brand/price/rating/ratings/position/sponsored/imageUrl/asinUrl/delivery)、total、costToken。
2. Search by image (amazon_search_by_image → amazon_search_by_image.py, requires upload_image.py to upload first)
{"imageUrl": "https://m.media-amazon.com/images/I/61pAlIX8SZL._AC_SY575_.jpg", "amazonDomain": "amazon.com", "sort": "default"}
Output:products[](asin/title/price/oldPrice/rating/ratings/brand); setting aggregateByKeepaData:true can aggregate salesRank/monthlySalesUnits/fbaFees/profit.
3. Product details (amazon_product_detail → amazon_product_detail.py)
{"asins": "B072MQ5BRX,B08N5WRWNW", "amazonDomain": "amazon.com"}
Output:products[](asin/title/brand/price/oldPrice/rating/ratings/aboutItem/variants/customerReviews/productImageUrls)、total、costToken。
4. Product reviews (amazon_reviews → amazon_reviews.py)
{"asin": "B08N5WRWNW", "domainCode": "com", "star1Num": 10, "star2Num": 10, "star3Num": 10, "star4Num": 10, "star5Num": 10, "sortBy": "recent"}
Output:data[](reviewId/title/text/rating/date/userName/verified/vine/numberOfHelpful/imageUrlList/videoUrlList)、total、costToken。
5. Alexa shopping Q&A (amazon_alexa_assistant → amazon_alexa_search.py)
{"prompts": ["best wireless earbuds for running"], "format": "json"}
Output:data(shopping answers/recommended product groups/ASIN list/follow-up questions),resultsNum、costToken. Only a single prompt is supported; for follow-ups, the agent needs to concatenate the context and initiate a new request.
Historical time-series layer
6. Keepa product details (keepa → keepa_product_detail.py)
{"asin": "B0088PUEPK", "domain": "1", "history": 1}
Output:products[](asin/title/price/salesRank/salesRank30/90/180/monthlySalesUnits (including the last 12 months)/monthlySalesRevenue/fbaFees/profit/rating/reviewCount/categoryTree/lastUpdate),costToken. Batch supports up to 5 ASINs.
7. Sorftime product details and trends (sorftime → sorftime_product_detail.py)
{"asin": "B00FLYWNYQ", "marketplace": "us"}
Output:products[](asin/title/price/profitRate/profitAmount/salesRank/monthlySalesUnits/rating/fbaFees/bsrRankTrend/priceTrend/rankTrend/dealTrend)、costToken。
Keyword and traffic layer
8. ABA search term analysis (amazon_aba_search_term → aba_query.py)
{"analysisDescription": "筛选美国站关键词gift在过去12周的搜索热度排名", "region": "US"}
Output:tables(search term/week start date/site/search ranking/clicked ASIN/product name/click share/conversion share),total、downloadUrl(createDownloadUrl:true generates CSV),costToken。
9. Jungle Scout keyword expansion (jungle_scout → junglescout_keyword_by_keyword.py)
{"marketplace": "us", "searchTerms": "yoga mat", "needCount": 20}
Output:keywordInfoList[](name/monthlySearchVolumeExact/monthlySearchVolumeBroad/monthlyTrend/dominantCategory/organicProductCount/ppcBidExact/ppcBidBroad/easeOfRankingScore)、costToken。
10. SIF keyword competition overview (sif_search_intelligence → sif_keyword_overview.py)
{"keyword": "wireless charger", "country": "US"}
Output:keyword/keywordPopularityRank/estimatedWeeklySearchVolume/supplyDemandRatio/totalSearchResultProductCount/sponsoredProductsCount/paidAdvertisingProductCount/trackedAsinTotalCount。
Niche and market layer
11. Jiimore niche market analysis (jiimore → jiimore_get_niche_info_by_keyword.py)
{"keyword": "wireless earbuds", "countryCode": "US", "sortField": "demand", "sortType": "desc", "pageSize": 20}
Output:data(nicheId/nicheTitle/translationZh/demand/productCount/avgPrice/searchVolumeWeekly/unitsSoldWeekly/brandCount/top5BrandsClickShare/launchRateSemiannual/cpc)、costToken。
12. SellerSprite product search for product selection (sellersprite → sellersprite_product_search.py)
{"keyword": "yoga mat", "marketplace": "US", "minUnits": 300, "minPrice": 10, "maxPrice": 50, "order": {"field": "total_units", "desc": "true"}, "page": 1, "size": 20}
Output:products[](asin/title/price/monthly sales/monthly revenue/BSR/rating/gross margin/fulfillment method),total、costToken。
Business insight layer
13. Six-dimensional AI market opportunity report (amazon_business_insight → amazon_opportunity_report.py)
{"site": "US", "keyword": "ice bricks"}
Output: a six-dimensional AI report covering market potential/product features/user reviews/customer profile/search trends/pricing analysis,costTime、costToken. Currently only the US site is supported.
14. Reverse product selection niche screening (amazon_business_insight → amazon_opportunity_screener.py)
{"nicheBrandCountLte": 20, "nicheSearchVolumeYoyChangePctAtLeastGte": 100, "featureNewAvgReviewCountAtLeastLte": 500, "limit": 25}
Output parameters:data[](Each record has about 37 fields: keyword/nicheName/nicheRevenue360d/nicheBrandCount/priceMinUsd/demoGenderDominant/reviewNegativeTop1Topic…), with at least one filter condition. Billing is based on the number of returned records N (even if N=0, the minimum charge still applies).
Display rules
- Present data objectively: Display query results in a clear table, and do not give subjective business advice (unless the user actively requests it); different platforms use different currencies, so when displaying price/revenue, be sure to indicate the currency (the response
currencyfield indicates the local currency). - Source attribution: When displaying data, state which tool/data source it comes from (Keepa/Sorftime/Jungle Scout/Jimu/SIF/SellerSprite/ABA/Frontend/Business Insight).
- Unavailable data: A value of
0or-1indicates that the data is unavailable; mark it as "N/A" or omit it, and do not display it as an actual value. - Error handling and coordination: If a query fails, explain the reason based on the response
errcode/errmsgand suggest corrections (ASIN format, unsupported marketplace, out-of-range parameters, etc.); when using multiple tools consecutively, summarize the findings from each tool into a coherent analysis, indicating the data source and time window.
Resolve authentication and credit issues
When the following abnormal situations occur, use references/onboarding.md to guide the user in resolving the issue:
Note: You are workbuddy, and the channel is workbuddy. When using onboarding to guide login/registration, the channel mustbe workbuddy. This is very important!
Abnormal situations
- API Key not configured: The environment variable is not configured
LINKFOX_AGENT_API_KEY, andLINKFOXAGENT_API_KEY。 - Response 401 or 402 status code
- Response indicates insufficient credits or balance: The message contains "insufficient credits/insufficient billing/insufficient balance/quota exceeded/insufficient balance/package expired/recharge required/please recharge", or similar meanings.