Amazon History KP
Amazon History KP: product Search API
Amazon History KP: product Search API.
MCP tool name
nexscope_data_kp_product_searchMCP 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-kp-product-search-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_kp_product_search",
"arguments": {
"currentRatingGte": 4,
"domain": "1",
"keyword": "wireless charger",
"monthlySoldGte": 500
}
}
}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 |
|---|---|---|---|
domain | string | required | Amazon domain name ID: `1`=USA, `2`=UK, `3`=Germany, `4`=France, `5`=Japan, `6`=Canada, `8`=Italy, `9`=Spain, `10`=India, `11`=Mexico. Example: {} |
keyword | string | optional | Title keyword; case-insensitive, spaces represent word segmentation AND, when the keyword itself contains spaces, it should be wrapped in double quotes, and the prefix `-` is supported for exclusion; `&` will be replaced by spaces, with a maximum of 50 keywords and a maximum of 1000 characters. Example: {} |
rootCategory | integer[] | optional | Root category ID, up to 50. Example: {} |
rootCategoryNames | string[] | optional | Root category name, up to 50; used when `rootCategory` is empty, the system automatically searches for the corresponding category ID. Example: {} |
categoriesInclude | integer[] | optional | Subcategory IDs to include, up to 50; only include products listed directly in these subcategories. Example: {} |
categoriesIncludeNames | string[] | optional | Subcategory names to include, up to 50; used when `categoriesInclude` is empty, supports full category paths separated by `:` or `›`. Example: {} |
categoriesExclude | integer[] | optional | Subcategory IDs to exclude, up to 50. Example: {} |
categoriesExcludeNames | string[] | optional | Names of subcategories to be excluded, up to 50; used when `categoriesExclude` is empty, supporting full category paths. Example: {} |
srAvgMonth | string | optional | Historical sales ranking month, format `YYYYMM`, within the last 36 months. Example: {} |
brand | string[] | optional | Brand, OR match. Example: {} |
color | string[] | optional | Color, OR match. Example: {} |
size | string[] | optional | Size, OR match. Example: {} |
buyBoxIsAmazon | boolean | optional | Whether the Buy Box seller is Amazon. Example: {} |
buyBoxIsFBA | boolean | optional | Whether the Buy Box is FBA. Example: {} |
isHazMat | boolean | optional | Whether it is dangerous goods. Example: {} |
singleVariation | boolean | optional | Only one variant is returned; when set to `true`, only one variant is returned for multi-variant products. Example: {} |
productType | integer[] | optional | Product Types: `0`=Standard Product, `1`=Downloadable Product, `2`=Ebook, `5`=Variant Parent ASIN. Example: [
0,
1,
2
] |
history | integer | optional | Whether the return value contains historical data/historical sales volume: `1`=obtain, `0`=not obtain. Example: 0 |
rating | integer | optional | Whether to obtain rating information: `1`=obtain, `0`=not obtain. Example: 1 |
page | integer | optional | Page number, starting from 1. Example: 1 |
perPage | integer | optional | The maximum number of results returned per page, minimum 50, maximum 100. Example: 50 |
sort | object[] | optional | Maximum of 3 collations; each contains `{"fieldName":"...","sortDirection":"asc\|desc"}`. Sortable fields: `availableDate`, `currentSales`, `monthlySold`, `currentRating`, `currentCountReviews`, `currentBuyBoxShipping`, `currentNew`. Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
total | integer | optional | Total number of rows. Example: {} |
perPage | integer | optional | Quantity per page. Example: {} |
currentPage | integer | optional | Current page number. Example: {} |
totalCount | integer | optional | Total quantity. Example: {} |
sourceType | string | optional | Source type: `kp`. Example: {} |
type | string | optional | Rendering style. Example: {} |
columns | array | optional | Rendered columns. Example: {} |
costToken | integer | optional | Consume token. Example: {} |
products | array | optional | Product list, element fields are shown in the table below. Example: {} |
asin | string | optional | ASIN。 Example: {} |
title | string | optional | Product title. Example: {} |
brand | string | optional | brand. Example: {} |
manufacturer | string | optional | manufacturer. Example: {} |
model | string | optional | model. Example: {} |
price | number | optional | Current price in local currency. Example: {} |
primePrice | number | optional | Prime Price. Example: {} |
currency | string | optional | Currency. Example: {} |
salesRank | integer | optional | Sales ranking. Example: {} |
salesRank30 | integer | optional | Average sales rank over the past 30 days. Example: {} |
salesRank90 | integer | optional | Average sales rank over the last 90 days. Example: {} |
salesRank180 | integer | optional | Average sales rank over the last 180 days. Example: {} |
monthlySalesUnits | integer | optional | Monthly sales volume. Example: {} |
monthlySalesRevenue | number | optional | Monthly sales. Example: {} |
rating | number | optional | Current rating (0.0-5.0). Example: {} |
ratings | integer | optional | Number of ratings. Example: {} |
reviewCount | integer | optional | Number of comments. Example: {} |
availableDate | string | optional | Shelf time (`yyyy-MM-dd HH:mm:ss`). Example: {} |
lastUpdate | string | optional | Last updated time (`yyyy-MM-dd HH:mm:ss`). Example: {} |
imageUrl | string | optional | Image URL (request address). Example: {} |
productImageUrls | array | optional | List of product images. Example: {} |
asinUrl | string | optional | Amazon ASIN details URL. Example: {} |
categoryTree | string | optional | Category tree. Example: {} |
categoryTreeId | string | optional | Category tree ID. Example: {} |
rootCategory | integer | optional | Root category ID. Example: {} |
subcategories | array | optional | Subcategory list, including `code` (category ID), `rank` (ranking), `label` (category name). Example: {} |
fulfillment | string | optional | Delivery method: `AMZ`, `FBA`, `FBM`. Example: {} |
buyBoxSellerId | string | optional | Buy button seller ID. Example: {} |
sellerNum | integer | optional | Number of sellers. Example: {} |
parentAsin | string | optional | Parent ASIN. Example: {} |
variationNum | integer | optional | Number of variants. Example: {} |
color | string | optional | color. Example: {} |
dimension | string | optional | size. Example: {} |
dimensionsType | string | optional | Size type. Example: {} |
material | string | optional | The material of a product refers to the main materials used in its construction. Example: {} |
weight | string | optional | Weight (grams). Example: {} |
packageWeight | string | optional | Packing weight (grams). Example: {} |
packageLength | integer | optional | Package length (mm). Example: {} |
packageWidth | integer | optional | Package width (mm). Example: {} |
packageHeight | integer | optional | Package height (mm). Example: {} |
packageDimensions | string | optional | Packaging size. Example: {} |
packageQuantity | integer | optional | The quantity of the item in the package, or 0 or -1 if not available. Example: {} |
itemLength | integer | optional | Product length in millimeters, 0 or -1 if not available. Example: {} |
itemWidth | integer | optional | Product width (mm), 0 or -1 if not available. Example: {} |
itemHeight | integer | optional | Product height in millimeters, 0 or -1 if not available. Example: {} |
isAdultProduct | boolean | optional | Whether it is an adult product. Example: {} |
isHazmat | boolean | optional | Whether it is dangerous goods. Example: {} |
referralFeePercentage | number | optional | Referral fee percentage. Example: {} |
fbaFees | number | optional | FBA fulfillment fee in local currency. Example: {} |
profit | number | optional | Profit margin (percentage, such as 25.5 for 25.5%). Example: {} |
urlSlug | string | optional | URL Slug。 Example: {} |
sourceType | string | optional | Source type: `kp`. Example: {} |
code | — | optional | Category ID; element type shall be subject to the source file or upstream official documentation. Example: {} |
rank | — | optional | Ranking; element type shall be based on the source file or upstream official documentation. Example: {} |
label | — | optional | Category name; element type shall be subject to the source file or upstream official documentation. Example: {} |
Examples
Example arguments
{
"currentRatingGte": 4,
"domain": "1",
"keyword": "wireless charger",
"monthlySoldGte": 500
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}