Ozon Intelligence SR
Ozon Intelligence SR: ozon/product Report Search API
Ozon Intelligence SR: ozon/product Report Search API.
MCP tool name
nexscope_data_sr_ozon_product_report_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-sr-ozon-product-report-search-1",
"method": "tools/call",
"params": {
"name": "nexscope_data_sr_ozon_product_report_search",
"arguments": {
"page": {
"orders": [
{
"direction": "DESC",
"field": "sales"
}
],
"page": 1,
"pageSize": 3
}
}
}
}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 |
|---|---|---|---|
page | object | required | Paging and sorting: `{page, pageSize, orders[]}`. Example: {} |
page.page | integer | optional | Page number, starting from 1. Example: 1 |
page.pageSize | integer | optional | Number of items per page. Example: 20 |
page.orders | array | optional | Sorting rule, the element is `{field, direction}`; `direction` takes `DESC` or `ASC`, `field` can be `sales`, `revenue`, `price`, `reviewRating`, `reviewCount`, `salesRate` and other response indicator fields. Example: {} |
skus | integer[] | optional | SKU array, up to 10, used to accurately query specified products. Example: {} |
keywords | string[] | optional | Array of keywords filtered by product title. Example: {} |
categoryIds | string[] | optional | SR Array of category IDs, not category names. Example: {} |
sellerName | string[] | optional | Array of seller names. Example: {} |
brand | object | optional | Brand filter: `{brandName: array<string>, type: integer}`; `type` is `0` included, `1` excluded, `2` unbranded. Example: {} |
fulfillment | string[] | optional | Shipping method array: `OZON`, `FBO`, `FBS`, `RFBS`, `FBP`. Example: {} |
labels | integer[] | optional | Tag array: `0` New, `1` Authentic, `2` Best Seller. Example: {} |
creationDate | integer | optional | Shelf time filtering (months): `1`, `3`, `6`, `12`, `24`. Example: {} |
variationsMerge | integer | optional | Whether to merge variants: `0` is not merged, `1` is merged. Example: {} |
searchDate | string | optional | Query date, the format is `yyyy-MM-dd`; for example, `2026-04-01` is used to query data in March 2026. Example: {} |
tag | string | optional | tag word. Example: {} |
uId | string | optional | User ID. Example: {} |
memberId | string | optional | Member ID; the data is attributed to this member. Example: {} |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Description |
|---|---|---|---|
code | string | optional | Return code, `"200"` indicates success; returned when successful. Example: {} |
errcode | integer | optional | Error code, `200` indicates success; only this field may be returned when there is a business error. Example: {} |
msg | string | optional | Message; Success was `ok`. Example: {} |
errmsg | string | optional | Error message; success is `ok`, business error is a reason description. Example: {} |
total | integer | optional | The total number of matching records, not the number of entries on the current page; it may reach tens of millions without filtering. Example: {} |
data | array | optional | Product report data, element fields are shown in the multiple field tables below. Example: {} |
products | array | optional | Product report data is completely consistent with the content of `data`. Example: {} |
columns | array | optional | Column definition, elements containing `field`, `title`, `cellType`, `sortable`, `filterable`. Example: {} |
type | string | optional | Response display type, such as `productWorkbenches`. Example: {} |
costTime | integer | optional | The interface consumes time in milliseconds. Example: {} |
costToken | integer | optional | The number of tokens consumed. Example: {} |
sku | integer | optional | Product SKU. Example: {} |
productId | integer | optional | Unified product ID, equal to `sku`. Example: {} |
title | string | optional | Product title, original Russian text. Example: {} |
imageUrl | string | optional | Product main image URL. Example: {} |
productUrl | string | optional | Product link. Example: {} |
productPageUrl | string | optional | Unified product page URL, equal to `productUrl`. Example: {} |
currency | string | optional | Currency, fixed to `₽`. Example: {} |
sourceType | string | optional | Data source, fixed to `ozon`. Example: {} |
sales | integer | optional | Monthly sales volume. Example: {} |
monthlySalesUnits | integer | optional | The unified monthly sales volume is equal to `sales`. Example: {} |
revenue | number | optional | Monthly sales in rubles. Example: {} |
monthlySalesRevenue | number | optional | Unified monthly sales, equal to `revenue`. Example: {} |
missedRevenue | number | optional | Lost sales in rubles. Example: {} |
price | number | optional | Price in rubles. Example: {} |
convToCartPdp | number | optional | Shopping cart conversion rate, percentage. Example: {} |
orderConversionRate | number | optional | Order conversion rate, percentage. Example: {} |
salesRate | number | optional | Sales growth rate, percentage. Example: {} |
revenueRate | number | optional | Sales growth rate, percentage. Example: {} |
drr | number | optional | Advertising cost share, ratio. Example: {} |
grossMargin | number | optional | Gross profit margin, percentage. Example: {} |
returnCancellationRate | number | optional | Return cancellation rate, percentage. Example: {} |
views | integer | optional | Views. Example: {} |
reviewRating | number | optional | Rating, 0–5. Example: {} |
rating | number | optional | Unified rating, equal to `reviewRating`. Example: {} |
reviewCount | integer | optional | Number of comments. Example: {} |
questionsAndAnswers | integer | optional | QA quantity. Example: {} |
variants | integer | optional | Number of variants. Example: {} |
fulfillment | array<string> | optional | Delivery method: `OZON`, `FBO`, `FBS`, `RFBS`, `FBP`. Example: {} |
weight | number | optional | Weight, unit g. Example: {} |
volume | number | optional | Volume, unit L. Example: {} |
upTime | integer | optional | Listing timestamp, milliseconds. Example: {} |
upDays | integer | optional | Number of days on shelf. Example: {} |
upMonths | integer | optional | Number of months on shelves. Example: {} |
brandName | string | optional | Brand name. Example: {} |
brand | string | optional | Unified brand, equal to `brandName`. Example: {} |
brandId | integer | optional | Brand ID. Example: {} |
brandUrl | string | optional | Brand link. Example: {} |
sellerName | string | optional | Seller name. Example: {} |
sellerId | integer | optional | Seller ID; Ozon self-operated may be negative. Example: {} |
categoryInfo | object | optional | Category information and structure are shown in the table below. Example: {} |
cnTitlePath | string | optional | Chinese category path. Example: {} |
enTitlePath | string | optional | English category path. Example: {} |
titlePath | string | optional | Russian category path. Example: {} |
fullCategoryId | array<string> | optional | A hierarchical array of complete category IDs. Example: {} |
category | object | optional | Category nodes, including `cnTitle`, `enTitle`, `title`, `level`, `id`, `pid`, `crossBorderSellable`, `disabled`. Example: {} |
Examples
Example arguments
{
"page": {
"orders": [
{
"direction": "DESC",
"field": "sales"
}
],
"page": 1,
"pageSize": 3
}
}Example structuredContent
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}