Amazon Research ST
Amazon Research ST: amazon/product Query API
Amazon Research ST: amazon/product Query API.
MCP tool name
nexscope_data_st_amazon_product_queryMCP 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-st-amazon-product-query-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_st_amazon_product_query",
"arguments": {
"marketplace": "us",
"queryMode": 1,
"queryType": 2,
"queryValue": "3743561"
}
}
}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 |
|---|---|---|---|
marketplace | string | required | Amazon site codes: `us`, `gb`, `de`, `fr`, `in`, `ca`, `jp`, `es`, `it`, `mx`, `ae`, `au`, `br`, `sa`. UK uses `gb`. AU, BR, and IN do not support historical review. Example: {} |
queryMode | integer | optional | Query method: `1` single condition, `2` multi-condition combination (AND). Example: 1 |
queryType | integer | optional | Single condition query type, range 1-16; invalid when `queryMode=2`. See table below. Example: {} |
queryValue | string | optional | Query value, the format is determined by `queryType`; when `queryMode=2`, the JSON condition array string is passed in. Example: {} |
page | integer | optional | Page numbers; maximum 100 products per page, maximum 200 pages. Example: 1 |
queryMonth | string | optional | Historical snapshot month, format `yyyy-MM`; query real-time data if not specified, supported from 2024-01. Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
code | integer | optional | Response code, `200` indicates success. Example: {} |
msg | string | optional | Respond to the message. Example: {} |
total | integer | optional | Total number of results. Example: {} |
page | integer | optional | Current page number. Example: {} |
pageCount | integer | optional | Total number of pages, up to 200 pages. Example: {} |
costTime | integer | optional | Time taken, unit ms. Example: {} |
costToken | integer | optional | The number of tokens consumed. Example: {} |
requestConsumed | integer | optional | The number of requests consumed. Example: {} |
type | string | optional | Rendering style. Example: {} |
columns | array | optional | Render the column. 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: {} |
asinUrl | string | optional | Amazon Listing detail page URL. Example: {} |
imageUrl | string | optional | Main image URL. Example: {} |
productImageUrls | array | optional | All product image URLs. Example: {} |
parentAsin | string | optional | Parent ASIN; `null` if no child. Example: {} |
variationNum | integer | optional | Number of variants. Example: {} |
weight | string | optional | Weight, unit g. Example: {} |
size | array | optional | Outer packaging dimensions `[longest side, second longest side, shortest side]`, unit cm. Example: {} |
price | number | optional | Current price, before coupons, in local currency. Example: {} |
oldPrice | number | optional | Strikethrough price in local currency. Example: {} |
salesPrice | number | optional | Price after deducting coupons, in local currency. Example: {} |
coupon | integer | optional | Coupon policy; non-negative value is the discount amount, negative value is the discount percentage. Example: {} |
fbaFees | number | optional | FBA fees in local currency. Example: {} |
fbaDetail | array | optional | FBA Details. Example: {} |
platformFee | number | optional | Platform commission, in local currency. Example: {} |
profitAmount | number | optional | Profit, calculated as received price - FBA fee - commission, in local currency. Example: {} |
profitRate | number | optional | Profit margin, for example `25.83` means 25.83%. Example: {} |
monthlySalesUnits | integer | optional | Listing monthly sales in the past 30 days; `-1` indicates that it cannot be estimated. Example: {} |
monthlySalesRevenue | number | optional | Estimated monthly sales in local currency; `-1` means cannot be estimated. Example: {} |
listingSalesVolumeOfDaily | integer | optional | Listing daily sales volume; `-1` means it cannot be estimated. Example: {} |
listingSalesOfDaily | number | optional | Listing daily sales, in local currency; `-1` means it cannot be estimated. Example: {} |
salesRank | integer | optional | BSR category rankings. The lower the value, the better the ranking. Example: {} |
category | array | optional | Category `[category name, NodeId]`. Example: {} |
bsrCategory | array | optional | Small category ranking list, elements include `nodeId`, `name`, `rank`, `date` (`yyyyMMdd`). Example: {} |
rating | number | optional | Current rating, range 0.0-5.0. Example: {} |
ratings | integer | optional | Number of ratings. Example: {} |
availableDate | string | optional | Shelf time, format `yyyy-MM-dd`. Example: {} |
onlineDays | integer | optional | Number of days on shelf. Example: {} |
buyboxSeller | string | optional | Buybox seller name. Example: {} |
buyBoxSellerId | string | optional | Buybox seller ID. Example: {} |
buyboxSellerAddress | string | optional | The two-digit code of the Buybox seller's country/region; when Amazon is self-operated, it is `null`. Example: {} |
isFBA | boolean | optional | Do Buybox sellers use FBA. Example: {} |
sellerNum | integer | optional | Number of sellers. Example: {} |
aPlus | boolean | optional | A+ or not. Example: {} |
hasVideo | boolean | optional | Is there a video. Example: {} |
hasBrandStore | boolean | optional | Is there a brand store? Example: {} |
Examples
Example arguments
{
"marketplace": "us",
"queryMode": 1,
"queryType": 2,
"queryValue": "3743561"
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}