Ozon Marketplace
Ozon Category Search MCP Tool
Seerfar Ozon category product search: fetches the product list for a given Ozon category ID, returning category-level aggregates (total sales, total revenue, average price, average rating, seasonality) and per-product sales, price, rating, review count, brand, seller, and fulfillment method. Use for category selection analysis, category bestseller mining, category capacity and price band analysis, seasonality assessment.
nexscope_ozon_category_searchhttps://claw-callback.nexscope.ai/api/skill-api/v1/skills/ozon-category-search/runtools/callAuthentication
Send the user API key as a bearer token on every MCP JSON-RPC request.
Authorization: Bearer nk_xxxxxxxxxxxxxxxxxIf authentication is missing or invalid, ask the user to open API Access and copy a valid key before calling this tool.
Call this MCP tool
Use tools/call with the MCP tool name below. The arguments object should match the table on this page.
{
"jsonrpc": "2.0",
"id": "ozon-category-search-1",
"method": "tools/call",
"params": {
"name": "nexscope_ozon_category_search",
"arguments": {
"categoryId": "15621042_17028650_97011",
"date": "2026-01",
"page": {
"pageSize": 10,
"page": 1
}
}
}
}POST /api/skill-api/v1/runhttps://claw-callback.nexscope.ai/api/skill-api/v1/skills/ozon-category-search/runhttps://www.nexscope.ai/mcp-map/ozon-category-searchArguments
| Name | Type | Required | Meaning |
|---|---|---|---|
categoryId | string | required | Ozon category ID, obtained from Ozon category documentation or other Seerfar Ozon tools. Format like 15621032_15621049_115951147 (multi-level categories joined by _) Example: 15621042_17028650_97011 |
page | object | required | Pagination & sorting: {page, pageSize, orders[]} Example: {
"pageSize": 10,
"page": 1
} |
page.page | integer | optional | Page number, starting from 1, default 1 Example: 1 |
page.pageSize | integer | optional | Items per page, default 20, maximum 20 (exceeding returns errcode 1002) Example: 1 |
page.orders | array | optional | Sort rules, elements {field, direction} (both required); direction takes DESC (descending) / ASC (ascending). Common sort fields: sales, price, revenue, reviewRating Example: [] |
date | string | optional | Query historical month, format yyyy-MM (e.g., 2026-02); defaults to last 30 days if omitted Example: 2026-01 |
fulfillment | string | optional | Fulfillment method filter, fixed options: FBO, FBS, RFBS, FBP, OZON; queries all if omitted. Note: single string, not an array Example: {} |
uId | string | optional | User ID (max 1000) Example: example-id |
memberId | string | optional | Member ID (a unique member identifier; a user can belong to multiple teams; data is attributed to memberId, max 1000) Example: example-id |
Response fields
Treat structuredContent as the programmatic API response payload.
| Name | Type | Required | Meaning |
|---|---|---|---|
code | string | optional | Return code, "200" indicates success (returned on success) Example: {} |
errcode | integer | optional | Error code, 200 indicates success; only returned on business errors (coexists with code on success) Example: 1 |
msg | string | optional | Message; ok for success Example: {} |
errmsg | string | optional | Error message; ok for success, reason description on business error Example: {} |
id | string | optional | Echoed category ID Example: example-id |
total | integer | optional | Number of records returned on this page (equals the current page data count, not total category product count) Example: 1 |
totalSales | integer | optional | Total category sales volume (within the statistics interval) Example: 1 |
totalRevenue | number | optional | Total category sales revenue (RUB) Example: 1 |
avgPrice | number | optional | Average category product price (RUB) Example: 1 |
rating | number | optional | Average category product rating Example: 1 |
products[].seasonalityAmplitude | string | optional | Seasonality intensity, e.g., STRONG_SEASONALITY Example: {} |
products[].seasonalityCoef | string | optional | Seasonality phase, e.g., OFF_SEASON Example: {} |
startDate | string | optional | Statistics start date Example: 2026-01-01 |
endDate | string | optional | Statistics end date Example: 2026-01-01 |
sellerType | object | optional | Fulfillment method distribution (not seller domestic/cross-border type), keys are fulfillment methods and values are product counts for that method, e.g., {"FBO":218,"RFBS":528,"FBP":5,"FBS":240,"OZON":1} Example: {} |
categoryInfo | object | optional | Category metadata, structure see "categoryInfo Structure" below Example: {} |
data | array | optional | Category product list (see details below) Example: [] |
products | array | optional | Category product list, content identical to data Example: [] |
hasNextPage | boolean | optional | Whether there is a next page Example: false |
columns | array | optional | Column definitions, elements contain {field, title, cellType, sortable, filterable} Example: [] |
type | string | optional | Response display type Example: {} |
costTime | integer | optional | API latency (milliseconds) Example: 1 |
costToken | integer | optional | Tokens consumed Example: 1 |
data[].sku | integer | optional | Product SKU Example: 1 |
data[].productId | integer | optional | Unified product ID, mapped from sku Example: 1 |
data[].title | string | optional | Product title Example: {} |
data[].price | number | optional | Product price (RUB) Example: 1 |
data[].currency | string | optional | Currency, always ₽ Example: {} |
data[].sales | integer | optional | Product sales volume Example: 1 |
data[].monthlySalesUnits | integer | optional | Unified monthly sales, mapped from sales Example: 1 |
data[].revenue | number | optional | Product sales revenue Example: 1 |
data[].monthlySalesRevenue | number | optional | Unified monthly revenue, mapped from revenue Example: 1 |
data[].reviewRating | number | optional | Product rating Example: 1 |
data[].rating | number | optional | Unified rating, mapped from reviewRating Example: 1 |
data[].reviewCount | integer | optional | Number of reviews Example: 1 |
data[].brandName | string | optional | Brand name Example: {} |
data[].brand | string | optional | Unified brand, mapped from brandName Example: {} |
data[].sellerName | string | optional | Seller name Example: {} |
data[].fulfillment | array | optional | Product fulfillment methods, e.g., ["FBO"], may contain multiple values Example: [] |
data[].imageUrl | string | optional | Product image URL Example: https://example.com/image.jpg |
data[].productUrl | string | optional | Product URL Example: https://example.com/image.jpg |
data[].productPageUrl | string | optional | Unified product page URL, mapped from productUrl Example: https://example.com/image.jpg |
data[].categoryInfo | object | optional | Product category attribution information, structure see "categoryInfo Structure" below Example: {} |
data[].sourceType | string | optional | Data source, always ozon Example: {} |
data[].sourceTool | string | optional | Source tool, e.g., Seerfar-Ozon-查类目 Example: {} |
products[].cnTitlePath | string | optional | Chinese category path, e.g., 鞋类 > 运动鞋和工作鞋 > 举重鞋 Example: {} |
products[].enTitlePath | string | optional | English category path, e.g., Footwear > Sports and Work Footwear > Weightlifting Shoes Example: {} |
products[].titlePath | string | optional | Russian (front-end) category path, e.g., Обувь > Спортивная и рабочая обувь > Штангетки Example: {} |
products[].fullCategoryId | array | optional | Array of category IDs at each level, e.g., ["15621032","15621032_15621049","15621032_15621049_115951147"] Example: [] |
products[].category | object | optional | Terminal category object, containing cnTitle/enTitle/title(Russian)/level/crossBorderSellable(whether cross-border sales are allowed)/pid/disabled/id Example: {} |
message | string | optional | Provider-specific message. Example: {} |
title | string | optional | Provider-specific response title. Example: {} |
sourceType | string | optional | Provider-specific source platform type. Example: {} |
sourceTool | string | optional | Provider-specific source tool name. Example: {} |
page | integer | optional | Current page returned by the upstream provider. Example: {} |
pageSize | integer | optional | Page size returned by the upstream provider. Example: {} |
pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: {} |
totalPage | integer | optional | Total page count returned by the upstream provider. Example: {} |
dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: {} |
Examples
Example arguments
{
"categoryId": "15621042_17028650_97011",
"date": "2026-01",
"page": {
"pageSize": 10,
"page": 1
}
}Example structuredContent
{
"errcode": 1,
"id": "example-id",
"total": 1,
"totalSales": 1,
"totalRevenue": 1,
"avgPrice": 1,
"rating": 1,
"startDate": "2026-01-01",
"endDate": "2026-01-01",
"sellerType": {},
"categoryInfo": {},
"data": [
{
"sku": 1,
"productId": 1,
"price": 1,
"sales": 1,
"monthlySalesUnits": 1,
"revenue": 1,
"monthlySalesRevenue": 1,
"reviewRating": 1,
"rating": 1,
"reviewCount": 1,
"fulfillment": [],
"imageUrl": "https://example.com/image.jpg",
"productUrl": "https://example.com/image.jpg",
"productPageUrl": "https://example.com/image.jpg",
"categoryInfo": {}
}
],
"products": [
{
"fullCategoryId": [],
"category": {}
}
],
"hasNextPage": false,
"columns": [],
"costTime": 1,
"costToken": 1
}