/** * MCP tools for the Wildberries Seller API. * * Tools are declared as JSON Schema (converted to Zod at registration, see * schema.ts) and dispatched by `handleTool`. Every API call is routed to the * correct per-category host via `HOSTS` (see client.ts) — Wildberries splits * its API across content-api / marketplace-api / statistics-api / etc. */ import { type WBClient } from "./client.js"; export declare const toolDefinitions: { readonly list_products: { readonly description: "List seller products (cards) with pagination and optional text search"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly limit: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 100; readonly description: "Number of cards to return (max 100)"; }; readonly cursor: { readonly type: "string"; readonly description: "Pagination cursor (updatedAt from previous response)"; }; readonly textSearch: { readonly type: "string"; readonly description: "Search text filter"; }; }; }; }; readonly get_product: { readonly description: "Get detailed info for specific product cards by nm IDs"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly nmIDs: { readonly type: "array"; readonly items: { readonly type: "integer"; }; readonly minItems: 1; readonly maxItems: 100; readonly description: "Array of nomenclature IDs (max 100)"; }; }; readonly required: readonly ["nmIDs"]; }; }; readonly update_prices: { readonly description: "Update product prices (creates an async upload task)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly prices: { readonly type: "array"; readonly minItems: 1; readonly items: { readonly type: "object"; readonly properties: { readonly nmID: { readonly type: "integer"; readonly description: "Nomenclature ID"; }; readonly price: { readonly type: "integer"; readonly minimum: 0; readonly description: "New price in rubles"; }; }; readonly required: readonly ["nmID", "price"]; }; readonly description: "Array of price updates"; }; }; readonly required: readonly ["prices"]; }; }; readonly update_stocks: { readonly description: "Update FBS product stocks at a specific warehouse"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly warehouseId: { readonly type: "integer"; readonly description: "Warehouse ID (use get_warehouses)"; }; readonly stocks: { readonly type: "array"; readonly minItems: 1; readonly items: { readonly type: "object"; readonly properties: { readonly sku: { readonly type: "string"; readonly description: "Barcode/SKU"; }; readonly amount: { readonly type: "integer"; readonly minimum: 0; readonly description: "Stock quantity"; }; }; readonly required: readonly ["sku", "amount"]; }; readonly description: "Array of stock updates"; }; }; readonly required: readonly ["warehouseId", "stocks"]; }; }; readonly get_stocks: { readonly description: "Get current FBS stock levels for a specific warehouse"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly warehouseId: { readonly type: "integer"; readonly description: "Warehouse ID (use get_warehouses to get IDs)"; }; readonly skus: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Array of barcodes/SKUs to check (leave empty for all stocks)"; }; }; readonly required: readonly ["warehouseId"]; }; }; readonly get_orders: { readonly description: "Get FBS orders list with filters"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly limit: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 1000; readonly description: "Number of orders (max 1000)"; }; readonly next: { readonly type: "integer"; readonly description: "Pagination cursor"; }; readonly dateFrom: { readonly type: "string"; readonly description: "Date from (RFC3339, e.g. 2024-01-01T00:00:00Z)"; }; readonly dateTo: { readonly type: "string"; readonly description: "Date to (RFC3339)"; }; }; }; }; readonly get_new_orders: { readonly description: "Get new (unprocessed) FBS orders"; readonly inputSchema: { readonly type: "object"; readonly properties: {}; }; }; readonly get_sales: { readonly description: "Get sales report"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Date from (RFC3339)"; }; readonly dateTo: { readonly type: "string"; readonly description: "Date to (RFC3339)"; }; readonly flag: { readonly type: "integer"; readonly minimum: 0; readonly maximum: 1; readonly description: "0 = all, 1 = only new since last request"; }; }; readonly required: readonly ["dateFrom"]; }; }; readonly get_incomes: { readonly description: "Get FBW supply incomes (deliveries to WB warehouses) since a date"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Date from (RFC3339)"; }; }; readonly required: readonly ["dateFrom"]; }; }; readonly get_fbw_stocks: { readonly description: "Get FBW stock levels (goods stored at WB warehouses) since a date"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Date from (RFC3339)"; }; }; readonly required: readonly ["dateFrom"]; }; }; readonly get_warehouses: { readonly description: "Get list of WB warehouses (offices)"; readonly inputSchema: { readonly type: "object"; readonly properties: {}; }; }; readonly get_supply: { readonly description: "Get FBS supplies (deliveries) list with pagination"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly limit: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 1000; readonly description: "Number of supplies"; }; readonly next: { readonly type: "integer"; readonly description: "Pagination cursor"; }; }; }; }; readonly create_supply: { readonly description: "Create a new FBS supply (delivery)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly name: { readonly type: "string"; readonly description: "Supply name"; }; }; readonly required: readonly ["name"]; }; }; readonly add_orders_to_supply: { readonly description: "Attach one or more assembly orders to an FBS supply"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly supplyId: { readonly type: "string"; readonly description: "Supply ID (e.g. WB-GI-1234567)"; }; readonly orderIds: { readonly type: "array"; readonly items: { readonly type: "integer"; }; readonly minItems: 1; readonly description: "Assembly order IDs to attach"; }; }; readonly required: readonly ["supplyId", "orderIds"]; }; }; readonly deliver_supply: { readonly description: "Close an FBS supply and send it to delivery (orders move to 'in delivery')"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly supplyId: { readonly type: "string"; readonly description: "Supply ID"; }; }; readonly required: readonly ["supplyId"]; }; }; readonly get_supply_barcode: { readonly description: "Get the QR barcode for an FBS supply (available after deliver_supply)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly supplyId: { readonly type: "string"; readonly description: "Supply ID"; }; readonly type: { readonly type: "string"; readonly enum: readonly ["svg", "zpl", "png"]; readonly description: "Barcode format (default svg)"; }; }; readonly required: readonly ["supplyId"]; }; }; readonly get_statistics: { readonly description: "Get detailed realization (sales) report by period"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Start date (RFC3339)"; }; readonly dateTo: { readonly type: "string"; readonly description: "End date (RFC3339)"; }; readonly limit: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 100000; readonly description: "Number of records"; }; readonly rrdid: { readonly type: "integer"; readonly description: "Pagination cursor (last rrd_id from previous response)"; }; }; readonly required: readonly ["dateFrom", "dateTo"]; }; }; readonly get_abc_analysis: { readonly description: "Compute ABC analysis of products by sales revenue (Pareto). A = products making up the top 80% of revenue, B = next 15%, C = bottom 5%. Identifies best-sellers and slow movers."; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Start date (RFC3339, e.g. 2025-01-01T00:00:00Z)"; }; readonly dateTo: { readonly type: "string"; readonly description: "End date (RFC3339)"; }; }; readonly required: readonly ["dateFrom", "dateTo"]; }; }; readonly get_funnel: { readonly description: "Get the product sales funnel (views, add-to-cart, orders, buyouts) by period"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Start date (YYYY-MM-DD)"; }; readonly dateTo: { readonly type: "string"; readonly description: "End date (YYYY-MM-DD)"; }; readonly page: { readonly type: "integer"; readonly minimum: 1; readonly description: "Page number (default 1)"; }; readonly nmIDs: { readonly type: "array"; readonly items: { readonly type: "integer"; }; readonly description: "Filter by nomenclature IDs"; }; }; readonly required: readonly ["dateFrom", "dateTo"]; }; }; readonly get_paid_storage: { readonly description: "Get the paid storage cost report for a period (async report: created, polled, then downloaded)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly dateFrom: { readonly type: "string"; readonly description: "Start date (RFC3339)"; }; readonly dateTo: { readonly type: "string"; readonly description: "End date (RFC3339)"; }; }; readonly required: readonly ["dateFrom", "dateTo"]; }; }; readonly get_commission: { readonly description: "Get WB commission rates per category (subject)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly locale: { readonly type: "string"; readonly enum: readonly ["ru", "en", "zh"]; readonly description: "Locale for category names (default ru)"; }; }; }; }; readonly get_tariffs: { readonly description: "Get WB box (logistics & storage) tariffs for a date"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly date: { readonly type: "string"; readonly description: "Date (YYYY-MM-DD, default today)"; }; }; }; }; readonly get_feedbacks: { readonly description: "Get product feedbacks (reviews)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly isAnswered: { readonly type: "boolean"; readonly description: "Filter by answered status"; }; readonly take: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 5000; readonly description: "Number of feedbacks to return"; }; readonly skip: { readonly type: "integer"; readonly minimum: 0; readonly description: "Number of feedbacks to skip"; }; readonly order: { readonly type: "string"; readonly enum: readonly ["dateAsc", "dateDesc"]; readonly description: "Sort order"; }; }; }; }; readonly reply_feedback: { readonly description: "Post a reply to a customer review on Wildberries"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly id: { readonly type: "string"; readonly description: "Feedback ID"; }; readonly text: { readonly type: "string"; readonly description: "Reply text"; }; }; readonly required: readonly ["id", "text"]; }; }; readonly get_questions: { readonly description: "Get customer questions about products"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly isAnswered: { readonly type: "boolean"; readonly description: "Filter by answered status (default false)"; }; readonly take: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 10000; readonly description: "Number to return (default 100)"; }; readonly skip: { readonly type: "integer"; readonly minimum: 0; readonly description: "Number to skip (default 0)"; }; readonly order: { readonly type: "string"; readonly enum: readonly ["dateAsc", "dateDesc"]; readonly description: "Sort order"; }; }; }; }; readonly reply_question: { readonly description: "Post an answer to a customer question on Wildberries"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly id: { readonly type: "string"; readonly description: "Question ID"; }; readonly text: { readonly type: "string"; readonly description: "Answer text"; }; readonly state: { readonly type: "string"; readonly description: "Answer state (default 'wbRu' = publish). VERIFY accepted values."; }; }; readonly required: readonly ["id", "text"]; }; }; readonly get_returns: { readonly description: "Get buyer return claims (requests to return goods)"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly isArchive: { readonly type: "boolean"; readonly description: "Get archived claims instead of active (default false)"; }; readonly limit: { readonly type: "integer"; readonly minimum: 1; readonly maximum: 200; readonly description: "Number of claims (max 200)"; }; readonly offset: { readonly type: "integer"; readonly minimum: 0; readonly description: "Offset for pagination"; }; readonly nmId: { readonly type: "integer"; readonly description: "Filter by nomenclature ID"; }; }; }; }; readonly get_balance: { readonly description: "Get advertising account balance (balance, net account, bonuses)"; readonly inputSchema: { readonly type: "object"; readonly properties: {}; }; }; readonly list_campaigns: { readonly description: "List advertising campaigns grouped by type and status (counts + IDs)"; readonly inputSchema: { readonly type: "object"; readonly properties: {}; }; }; readonly get_campaign_stats: { readonly description: "Get full advertising statistics for one or more campaigns over a date range"; readonly inputSchema: { readonly type: "object"; readonly properties: { readonly campaignIds: { readonly type: "array"; readonly items: { readonly type: "integer"; }; readonly minItems: 1; readonly description: "Advertising campaign IDs"; }; readonly dateFrom: { readonly type: "string"; readonly description: "Start date (YYYY-MM-DD)"; }; readonly dateTo: { readonly type: "string"; readonly description: "End date (YYYY-MM-DD)"; }; }; readonly required: readonly ["campaignIds", "dateFrom", "dateTo"]; }; }; }; export type ToolName = keyof typeof toolDefinitions; export declare function handleTool(client: WBClient, name: ToolName, args: Record): Promise; //# sourceMappingURL=tools.d.ts.map