Amazon ABA & Business Insights
Amazon ABA & Business Insights: opportunity/search By Metrics API
Amazon ABA & Business Insights: opportunity/search By Metrics API.
MCP tool name
nexscope_data_amazon_opportunity_search_by_metricsMCP endpoint
https://api.nexscope.ai/mcpJSON-RPC method
tools/callAuthentication
Use OAuth 2.1 Authorization Code with PKCE and the mcp:tools scope. API keys remain supported as a compatibility option.
Authorization: Bearer nk-xxxxxxxxxxxxxxxxxIf authentication fails, ask the user to open API Access and copy a valid key.
Call this MCP tool
Initialize an MCP 2025-11-25 Streamable HTTP session at https://api.nexscope.ai/mcp, then use tools/call.
{
"jsonrpc": "2.0",
"id": "data-amazon-opportunity-search-by-metrics-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_amazon_opportunity_search_by_metrics",
"arguments": {
"featureNewAvgReviewCountAtLeastLte": 500,
"limit": 25,
"nicheBrandCountLte": 20,
"nicheSearchVolumeYoyChangePctAtLeastGte": 100
}
}
}MCP 2025-11-25 · Streamable HTTPProgress is delivered on the original POST SSE response. GET SSE carries notifications; reconnecting must query existing asynchronous work rather than submit again.
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
amazonDomain | string | optional | Amazon site code (closed enumeration), currently only supports `US`; if not specified, only the US site will be checked by default. Example: {} |
limit | integer | optional | Returns the upper limit of the number of items; without the `page` parameter, the most recent N items are returned in reverse order of collection time. Example: {} |
keyword | string | optional | Search keyword text fragments (LIKE fuzzy matching). Example: {} |
nicheName | string | optional | Track normalized name fragment (LIKE, snake_case lowercase), suitable for track timing comparison. Example: {} |
nicheRevenue360dMinUsdAtLeastGte | number | optional | The minimum value of the 360-day market revenue lower bound (USD). Example: {} |
nicheRevenue360dMinUsdAtLeastLte | number | optional | The maximum value of the 360-day market revenue lower bound (USD). Example: {} |
nicheRevenue360dMaxUsdAtLeastGte | number | optional | The minimum value of the 360-day market revenue upper bound (USD). Example: {} |
nicheRevenue360dMaxUsdAtLeastLte | number | optional | The maximum value of the 360-day market revenue upper bound (USD). Example: {} |
nichePeakSearchVolumeAtLeastGte | integer | optional | Lower bound for peak monthly search volume. Example: {} |
nichePeakSearchVolumeAtLeastLte | integer | optional | The upper bound of peak monthly search volume. Example: {} |
nicheSearchVolumeYoyChangePctAtLeastGte | number | optional | The lower limit of the year-on-year change rate of search volume (%, signed). Example: {} |
nicheSearchVolumeYoyChangePctAtLeastLte | number | optional | The upper limit of the year-over-year change rate of search volume (%, signed). Example: {} |
nichePeakMonthGte | integer | optional | Search peak month lower limit. Example: {} |
nichePeakMonthLte | integer | optional | Search peak month cap. Example: {} |
nicheBrandCountGte | integer | optional | Minimum number of active brands. Example: {} |
nicheBrandCountLte | integer | optional | Maximum number of active brands. Example: {} |
nicheBrandCountYoyChangePctAtLeastGte | number | optional | The lower limit of the year-on-year change rate of the number of brands (%, with sign). Example: {} |
nicheBrandCountYoyChangePctAtLeastLte | number | optional | The upper limit of the year-on-year change rate of the number of brands (%, with sign). Example: {} |
nicheTop5ProductClickSharePctAtLeastGte | number | optional | The lower limit for the click share of the top 5 products. Example: {} |
nicheTop5ProductClickSharePctAtLeastLte | number | optional | The upper limit of the click share of the top 5 products. Example: {} |
featureTop5BrandSharePctAtLeastGte | number | optional | The lower limit of the total share of the top 5 brands. Example: {} |
featureTop5BrandSharePctAtLeastLte | number | optional | The upper limit of the total share of the top 5 brands. Example: {} |
featureTopBrandsContains | string | optional | Top 3 brand name fragments (original text LIKE, case sensitive). Example: {} |
priceMinUsdGte | number | optional | The lowest product price limit on the track (USD). Example: {} |
priceMinUsdLte | number | optional | The track’s minimum product price limit (USD). Example: {} |
priceMaxUsdGte | number | optional | The track’s maximum product price limit (USD). Example: {} |
priceMaxUsdLte | number | optional | The track’s maximum product price limit (USD). Example: {} |
priceSweetSpotMinUsdGte | number | optional | The lower bound of the Sweet Spot lower limit (USD). Example: {} |
priceSweetSpotMinUsdLte | number | optional | The upper bound of the Sweet Spot lower limit (USD). Example: {} |
priceSweetSpotMaxUsdGte | number | optional | Lower bound of Sweet Spot upper limit (USD). Example: {} |
priceSweetSpotMaxUsdLte | number | optional | The upper bound of the Sweet Spot limit (USD). Example: {} |
priceEntryClickSharePctAtLeastGte | number | optional | Minimum click share for entry-level users. Example: {} |
priceEntryClickSharePctAtLeastLte | number | optional | The entry level click share limit. Example: {} |
priceMidClickSharePctAtLeastGte | number | optional | Mid-range click share floor. Example: {} |
priceMidClickSharePctAtLeastLte | number | optional | Mid-range click share cap. Example: {} |
priceHighClickSharePctAtLeastGte | number | optional | The lower limit of click share for high-end products. Example: {} |
priceHighClickSharePctAtLeastLte | number | optional | High-end click share limit. Example: {} |
demoPrimaryAgeMinGte | integer | optional | The minimum value of the lower bound of the age of the main population. Example: {} |
demoPrimaryAgeMinLte | integer | optional | The maximum value of the lower bound of the age of the host group. Example: {} |
demoPrimaryAgeMaxGte | integer | optional | The minimum value of the upper bound of the age of the main population. Example: {} |
demoPrimaryAgeMaxLte | integer | optional | The maximum value of the upper bound of the age of the host group. Example: {} |
demoGenderDominant | string | optional | Gender dominant (closed enumeration): `female` / `male` / `mixed` / `unspecified`. Example: {} |
demoPrimaryIncomeTier | string | optional | Income file (closed enumeration): `low` / `middle_low` / `middle` / `middle_upper` / `upper_middle` / `high`. Example: {} |
demoLifeStageTagsContains | string | optional | Life stage tag fragment (snake_case, LIKE), such as `parent`, `student`, `retiree`, `athlete`. Example: {} |
featureNewAvgReviewCountAtLeastGte | integer | optional | The lower limit for the average number of reviews for new products. Example: {} |
featureNewAvgReviewCountAtLeastLte | integer | optional | The upper limit of the average number of reviews for new products. Example: {} |
featureEstablishedAvgReviewCountAtLeastGte | integer | optional | The lower limit of the average number of comments for mature and old products. Example: {} |
featureEstablishedAvgReviewCountAtLeastLte | integer | optional | The upper limit of the average number of comments for mature and old products. Example: {} |
featureEmergingTrendTagsContains | string | optional | Emerging trend feature tag fragments (snake_case, LIKE), such as `cordless`, `portable`, `smart`. Example: {} |
featureUncommonFeatureTagsContains | string | optional | Rare differentiation feature tag fragments (snake_case, LIKE), such as `hema_free`, `medical_grade_silicone`. Example: {} |
searchTopCategory1Label | string | optional | Search traffic first type target tag fragment (snake_case, LIKE), such as `core_product_terms`, `set_kit_configurations`. Example: {} |
reviewPositiveTop1Topic | string | optional | Like #1 theme snippets (snake_case, LIKE), such as `comfort`, `quality_overall_generic`. Example: {} |
reviewPositiveTop1PctAtLeastGte | number | optional | The lower limit of the proportion of positive #1 topics (the proportion of positive comments). Example: {} |
reviewPositiveTop1PctAtLeastLte | number | optional | The upper limit of the proportion of positive #1 topics. Example: {} |
reviewNegativeTop1Topic | string | optional | Negative review #1 topic snippet (snake_case, LIKE), such as `size`, `quality`, `durability`. Example: {} |
reviewNegativeTop1PctAtLeastGte | number | optional | The lower limit of negative review #1 topic proportion (proportion of negative reviews). Example: {} |
reviewNegativeTop1PctAtLeastLte | number | optional | The upper limit for the proportion of negative review #1 topics. Example: {} |
reviewNegativeTop2Topic | string | optional | Negative review #2 topic snippet (snake_case, LIKE). Example: {} |
reviewStrategicInsightTagsContains | string | optional | Comment policy suggests tag snippets (snake_case, LIKE), such as `sizing_clarity`, `material_transparency`. Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
code | string | optional | Response code, `200` is successful. Example: {} |
msg | string | optional | Prompt information, success is `ok`, failure is error description. Example: {} |
data | array | optional | Keyword indicator record array, each corresponding to a (site, keyword) combination, about 37 fields, in reverse order of collection time. Example: {} |
amazonDomain | string | optional | Site code, currently fixed to `US`. Example: {} |
keyword | string | optional | Original search keyword. Example: {} |
nicheName | string | optional | Track normalized name (snake_case). Example: {} |
nichePeakSearchVolumeAtLeast | integer | optional | Peak monthly search volume. Example: {} |
nichePeakMonth | integer | optional | Peak search months (1-12). Example: {} |
nicheSearchVolumeYoyChangePctAtLeast | number | optional | Search volume year-over-year change rate (%, signed). Example: {} |
nicheTop5ProductClickSharePctAtLeast | number | optional | Top5 product click share (0-100). Example: {} |
featureTop5BrandSharePctAtLeast | number | optional | Total share of top 5 brands (0-100). Example: {} |
featureTopBrands | array | optional | Top3 brand name list (original text). Example: {} |
demoGenderDominant | string | optional | Gender Dominant (`female` / `male` / `mixed` / `unspecified`). Example: {} |
demoPrimaryIncomeTier | string | optional | Income bracket of the core population. Example: {} |
demoLifeStageTags | array | optional | List of life stage tags. Example: {} |
searchTopCategory1Label | string | optional | Normalized label of the first category of traffic. Example: {} |
reviewStrategicInsightTags | array | optional | Comment policy suggestion tags. Example: {} |
Examples
Example arguments
{
"featureNewAvgReviewCountAtLeastLte": 500,
"limit": 25,
"nicheBrandCountLte": 20,
"nicheSearchVolumeYoyChangePctAtLeastGte": 100
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}