# SellerSmart MCP SellerSmart is an Amazon seller platform. This server gives AI assistants read-only access to one SellerSmart organisation's data: orders, inventory, shipments, returns, reimbursements, removal orders, costs, analytics, forecasts and workspace tasks. Nothing needs to be installed. There is no package to download. Point any MCP client at the URL below and authenticate. ## Connection - MCP endpoint: https://mcp.sellersmart.io/mcp - Transport: Streamable HTTP (JSON-RPC over HTTP POST). Stateless: no session id. - Send `Accept: application/json, text/event-stream` and `Content-Type: application/json`. - Every request needs `Authorization: Bearer `. - Access is read-only. No tool changes listings, prices, costs, settings or any other data. ## Authentication A token belongs to one SellerSmart organisation. Every tool call returns that organisation's data only. You never pass an organisation id, and you cannot read another organisation with the same token. There are two ways to get a token. ### 1. Access token from SellerSmart Settings For Claude Code, Codex, custom agents and anything that accepts a bearer header. 1. A signed-in SellerSmart user opens https://app.sellersmart.io/settings and finds "AI MCP". 2. They choose their agent and click "Create access token". 3. The token starts with `ssmcp_` and is shown once. SellerSmart stores only a hash. 4. Send it as `Authorization: Bearer ssmcp_...` on every request. Tokens do not expire. The user can disconnect a token at any time in the same Settings panel; it stops working immediately. Treat the token like a password: do not print it, log it or commit it. ### 2. Connector sign-in (OAuth) For Claude and ChatGPT custom connectors. The user never handles a token. 1. The user adds https://mcp.sellersmart.io/mcp as a custom connector. 2. The assistant opens SellerSmart in the browser. The user signs in and approves. 3. The browser returns to the assistant, which receives the token itself. OAuth details for client developers: - Protected resource metadata: https://mcp.sellersmart.io/.well-known/oauth-protected-resource - Authorization server metadata: https://mcp.sellersmart.io/.well-known/oauth-authorization-server - Dynamic client registration: POST https://mcp.sellersmart.io/register (public clients only) - Authorization endpoint: https://mcp.sellersmart.io/authorize - Token endpoint: https://mcp.sellersmart.io/token (form-encoded, authorization_code grant) - PKCE with S256 is required. Scope: `mcp.read`. - Redirect URIs must be HTTPS, or HTTP on a loopback IP such as 127.0.0.1. `http://localhost` is not accepted. ### When authentication fails A missing, wrong or disconnected token gets HTTP 401 with a `WWW-Authenticate` header pointing to the protected resource metadata. Ask the user to create a new token or reconnect the connector. Do not retry the same token. ## Setup by agent ### Claude (web and desktop) Settings > Connectors > Add custom connector. Paste the MCP endpoint. Click Connect and approve in SellerSmart. ### ChatGPT Settings > Apps & Connectors. Turn on developer mode under Advanced settings, choose Create, paste the MCP endpoint, choose OAuth and approve in SellerSmart. ### Claude Code ``` claude mcp add --transport http sellersmart https://mcp.sellersmart.io/mcp --header "Authorization: Bearer " ``` Then restart Claude Code. ### Codex ``` export SELLERSMART_MCP_TOKEN="" # add to your shell profile codex mcp add sellersmart --url https://mcp.sellersmart.io/mcp --bearer-token-env-var SELLERSMART_MCP_TOKEN ``` Then restart Codex. ### Any other MCP client or your own agent - Name: sellersmart - Transport: Streamable HTTP - URL: https://mcp.sellersmart.io/mcp - Header: `Authorization: Bearer ` Raw request, for testing or a custom integration: ``` curl -X POST https://mcp.sellersmart.io/mcp \ -H "Authorization: Bearer " \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' ``` Call a tool with method `tools/call` and params `{"name":"","arguments":{...}}`. ## How to use the tools 1. Call `get_sellersmart_mcp_guide` first for usage and safety notes. 2. Call `dashboard` for account totals before anything specific. 3. Each domain tool (`dashboard`, `orders`, `inventory`, `shipments`, `returns`, `reimbursements`, `removal_orders`, `costs`) takes a `view` argument that picks what it returns: a list or search view for rows, and overview, stats or trends views for totals. Leave `view` out to get the tool's default view. `analytics` takes stats or forecast. `replensmart` and `todos` have a single result and take no view argument. 4. For one ASIN or SKU, call `product` with `identifier` to get its inventory, orders, costs and returns in a single call. 5. For scans, `brandscan` lists tasks then returns one task's results (`taskId`), and `brandwatch` lists watches, one watch's results (`watchId`) or the `feed` of new results `since` a time. `wholesale_scan` and `rivalradar` list tasks and rivals with links only. Scans are started in SellerSmart, never through this server. 6. Tell the user which date range and filters you used. Conventions: - Arguments that do not apply to the chosen view are ignored. Each tool below lists its views and the arguments every view takes. - `startDate` and `endDate` are Unix timestamps in milliseconds. If you leave them out you get a recent default window. Very long ranges are shortened. Send JSON numbers, not ISO strings or Unix seconds. Convert an ISO date with its timezone using Date.parse(), or multiply Unix seconds by 1000. For a requested local calendar day, convert its timezone boundaries first. - `period` is a number of days to look back, used when `startDate` is left out. - Results are bounded. Paged views take `page` (starting at 1) and `pageSize`; top-N views take `limit`. Row views return about 10 rows by default. Do not assume one call returned everything. - Rows carry only business fields. Each view below lists its `Row fields`; pass `fields` with some of those names to get only those. - A null cost or profit means the cost is still pending. Report it as pending, never as zero. - For analytics, null figures are unknown and truncated figures are incomplete. Sales, COGS and profit cover cost-complete orders; check calcCoveragePct (a 0 to 1 ratio). Forecasts are estimates, not guaranteed payouts or profit. - Scan tasks, watches, rivals and results carry `url`, their page in SellerSmart. Show it to the user next to what you report. - Reading scans never marks anything as seen in SellerSmart. Examples of tools/call params: - September 2026 UTC financial breakdown (dates are milliseconds): {"name":"analytics","arguments":{"view":"stats","startDate":1788220800000,"endDate":1790812799999}} - Project 14 days ahead (horizon is a day count, not a timestamp): {"name":"analytics","arguments":{"view":"forecast","horizon":14}} - Outstanding high-priority tasks (completed is a JSON boolean): {"name":"todos","arguments":{"completed":false,"priority":"high","limit":10,"fields":["text","priority","dueDate"]}} - Profitable Brand Watch finds since 1 October 2026 UTC, best ROI first: {"name":"brandwatch","arguments":{"view":"feed","since":1790812800000,"profitableOnly":true,"sortBy":"roi"}} ## Tools (17) - dashboard Headline dashboard figures for the authenticated workspace. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - stats (default): Headline revenue, order, profit and inventory totals for the whole account. Arguments: startDate, endDate (default: this month). - trends: Sales velocity with the change against the previous period. Arguments: startDate, endDate. - revenue: Revenue cards with the change against the previous period of the same length. Arguments: startDate, endDate. - profit: Profit cards for the period. Arguments: startDate, endDate. - inventory: Low-stock count and average days of supply cards. No arguments. Arguments: view, startDate, endDate - orders Amazon orders: rows, totals, trends and best sellers. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - list (default): Order rows, newest first. line_total_cost, profit, profit_converted, margin and roi are null while the cost is pending, and profit_pending is true on those rows; report them as pending, never as zero. fees_estimated is true while amazon_fees is an estimate that Amazon has not yet confirmed; say so when quoting fees or profit for that row. With no arguments it returns the most recent orders of the last 30 days. Arguments: search, status, startDate, endDate, page, pageSize (default 10, max 100), fields. Row fields: amazon_order_id, order_item_id, purchase_date, last_updated_date, order_status, asin, sku, product_name, quantity, fulfillment_channel, sales_channel, marketplace_id, is_business_order, item_price, item_tax, shipping_price, promotion_discount, order_total, currency, amazon_fees, fees_estimated, line_total_cost, revenue, profit, profit_converted, base_currency, margin, roi, profit_pending. - stats: Order count, revenue, profit and average order value. Arguments: startDate, endDate, status. - trends: Daily order, revenue and unit trends with day-of-week, hour-of-day and velocity metrics. Arguments: startDate, endDate, fields. Row fields (data): date, daily_sku_count, daily_revenue, daily_orders. - top_products: Top selling products. Arguments: startDate, endDate, sortBy (default sales), limit (default 10, max 50), fields. Row fields: asin, title, Units, Sales, Profit, average_selling_price. - high_volume: Most recent orders containing three or more units. Arguments: startDate, endDate, limit (default 5, max 20), fields. Row fields (data): amazon_order_id, purchase_date, order_status, fulfillment_channel, order_total, highVolumeItems. Row fields (data.highVolumeItems): asin, sku, title, quantity, item_price, unit_price, is_price_estimated. - stale_listings: Listings flagged as stale, with zero-stock, old-listing and no-sales counts for the returned page. Arguments: page, pageSize (default 10, max 100), fields. Row fields (listings): sku, asin, fnsku, product_name, brand, marketplace_id, fulfillment_channel, sellable_quantity, total_quantity, inbound_quantity, current_selling_price, currency, stale_reasons, days_since_listed, days_since_last_sale, listing_date, last_sale_date, has_any_stock. Arguments: view, search, status, startDate, endDate, page, pageSize, sortBy, limit, fields - inventory Amazon inventory: totals, item lookup, low stock, highest value, brands and value distribution. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - overview (default): Inventory totals: sellable, inbound, reserved and unfulfillable units and estimated value. No arguments. - search: Inventory rows whose SKU, ASIN or product title contains the search text; without search it lists all inventory. Arguments: search, page, pageSize (default 10, max 100), sortBy (default updated_at), sortOrder (default desc), fields. Row fields (data): sku, asin, product_name, sellable_quantity, total_quantity, inbound_quantity, reserved_quantity, unfulfillable_quantity, current_selling_price, currency. - low_stock: Items with sellable stock above zero and at or below the threshold. Arguments: threshold (default 5, max 1000), fields. Row fields (data): sku, asin, product_name, sellable_quantity, inbound_quantity, current_selling_price, currency. - high_value: Highest estimated-value inventory items. Cost is today's cost period for the SKU on the item's marketplace, in the seller's base currency; profit, margin and ROI need that cost and a price in the same currency. cost_status is costed or pending; a pending item's cost and profit are null and its sellable units count as cost_pending_units. Report those as pending, never as £0. Arguments: limit (default 10, max 50), fields. Row fields (data.items): sku, asin, product_name, sellable_quantity, current_selling_price, estimated_value, line_total_cost, total_cost, estimated_profit, margin_percent, roi_percent, cost_status, cost_pending_units, currency. - top_brands: Top brands by estimated stock value, each with up to three sample products. Arguments: limit (default 10, max 20), fields. Row fields (data.brands): brand, item_count, total_units, total_value, sample_products. Row fields (data.brands.sample_products): asin, sku, product_name, total_quantity, item_value. - distribution: Stock value distribution buckets plus sellable, stranded and unfulfillable summaries. No arguments. Arguments: view, search, page, pageSize, sortBy, sortOrder, threshold, limit, fields - shipments FBA inbound shipments: rows with items, counts, trends and shipped against received. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - list (default): FBA inbound shipments with their items, newest first. Every item of a shipment is returned. Arguments: search, status, startDate, endDate, page, pageSize (default 10, max 100), fields. Row fields (data): shipment_id, shipment_name, shipment_status, destination_fulfillment_center_id, marketplace_id, shipment_creation_date, confirmed_need_by_date, last_updated_date, items_count, total_quantity, total_quantity_received, case_id, case_status, items. Row fields (data.items): sku, asin, fnsku, quantity, quantity_received, quantity_damaged, quantity_difference. - overview: Shipment count with the earliest and latest shipment dates. Arguments: startDate, endDate, period. - trends: Daily shipment count, shipped quantity and received quantity. Arguments: startDate, endDate, period (default 90). - performance: Total units shipped against total units received. Arguments: startDate, endDate, period. - by_status: Shipment counts per shipment status. Arguments: startDate, endDate, period, fields. Row fields (data): status, count. Arguments: view, search, status, startDate, endDate, period, page, pageSize, fields - returns Amazon customer returns: rows, totals, trends and reasons. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - list (default): Return rows, newest first (search results are ranked by relevance). This view is not paged. Arguments: search, status, startDate, endDate, limit (default 10, max 500), fields. Row fields (data): amazon_order_id, asin, sku, product_name, marketplace_id, return_date, return_status, return_reason, quantity, quantity_returned, quantity_received, refund_amount, restocking_fee, amazon_return_fee, return_shipping_fee, refund_administration_fee, returns_processing_fee, currency, condition_on_return, detailed_disposition, customer_comment, resolution, processed_date, return_authorization_id, license_plate_number. - overview: Return totals, refund amount, return rate, top reasons and the 10 most recent returns. Arguments: startDate, endDate, period, fields. Row fields (recent_returns): amazon_order_id, asin, sku, product_name, marketplace_id, return_date, return_status, return_reason, quantity, quantity_returned, quantity_received, refund_amount, restocking_fee, amazon_return_fee, return_shipping_fee, refund_administration_fee, returns_processing_fee, currency, condition_on_return, detailed_disposition, customer_comment, resolution, processed_date, return_authorization_id, license_plate_number. - trends: Daily returns, quantity and refund amount. Arguments: startDate, endDate. - reasons: Return counts per reason across the 500 most recent returns in the range. Arguments: startDate, endDate, fields. Row fields (data): reason, count. Arguments: view, search, status, startDate, endDate, period, limit, fields - reimbursements Amazon reimbursements and claims: rows, totals, trends and reasons. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - list (default): Reimbursement rows, newest first. Only the first page is available, so raise pageSize or narrow the dates instead. Arguments: search, startDate, endDate, pageSize (default 10, max 200), fields. Row fields (page): reimbursement_id, original_reimbursement_id, original_reimbursement_type, case_id, amazon_order_id, fba_shipment_id, asin, sku, fnsku, product_name, marketplace_id, approval_date, reason, condition, recovery_sign, quantity_reimbursed_cash, quantity_reimbursed_inventory, quantity_reimbursed_total, amount_total, currency, base_currency, base_currency_amount. - overview: Reimbursement totals, amount, profit, reasons, daily data and the 10 most recent reimbursements. total_reimbursements, total_amount and total_profit count only reimbursements whose cash is booked. A reimbursement is cash income with no cost. Reimbursements whose cash is not booked yet (no base-currency amount) are reported separately as pending_reimbursements, pending_amount and cost_pending_reimbursements: their profit is not final. When the totals are 0 and the pending figures are not, there are reimbursements and they are pending; never report that as no reimbursements. Arguments: startDate, endDate, period, reason, marketplace, limit (reimbursements analysed, default 100, max 500), fields. Row fields (recent_reimbursements): reimbursement_id, original_reimbursement_id, original_reimbursement_type, case_id, amazon_order_id, fba_shipment_id, asin, sku, fnsku, product_name, marketplace_id, approval_date, reason, condition, recovery_sign, quantity_reimbursed_cash, quantity_reimbursed_inventory, quantity_reimbursed_total, amount_total, currency, base_currency, base_currency_amount. - claims: Amazon claim tracking records with status, case ids, amounts and resolution fields. Arguments: status, page, pageSize (default 10, max 100), fields. Row fields (claims): source, status, reason, asin, sku, fba_shipment_id, amazon_order_id, reference_id, quantity, calc_amount, currency, case_id, case_status, case_category, case_notes, filed_at, resolved_at, expected_resolution_date. - trends: Daily reimbursement count and amount. Arguments: startDate, endDate, reason, marketplace. - reasons: Reimbursement count and amount per reason. Arguments: startDate, endDate, reason, marketplace. Arguments: view, search, status, startDate, endDate, period, reason, marketplace, page, pageSize, limit, fields - removal_orders FBA removal orders: rows, totals, trends, fees and status counts. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - list (default): Removal order rows, newest first. Only the first page is available, so raise pageSize or narrow the dates instead. Arguments: search, status, startDate, endDate, pageSize (default 10, max 100), fields. Row fields (page): removal_order_id, amazon_order_id, order_status, order_type, disposition, service_speed, asin, sku, fnsku, product_name, marketplace_id, request_date, last_updated_date, requested_quantity, cancelled_quantity, shipped_quantity, received_quantity, in_process_quantity, disposed_quantity, total_fee, currency, received, received_date, quantity_discrepancy, resolution. - overview: Removal order totals, units, fees, status counts, daily data and recent removals. Arguments: startDate, endDate, period, status, limit (recent removals returned, default 10, max 200), fields. Row fields (removalOrders): removal_order_id, amazon_order_id, order_status, order_type, disposition, service_speed, asin, sku, fnsku, product_name, marketplace_id, request_date, last_updated_date, requested_quantity, cancelled_quantity, shipped_quantity, received_quantity, in_process_quantity, disposed_quantity, total_fee, currency, received, received_date, quantity_discrepancy, resolution. - trends: Daily removal order count, fees and units. Arguments: startDate, endDate, status. - costs: Removal fees, order count and units per order type. Arguments: startDate, endDate, status, fields. Row fields: order_type, total_orders, total_items, total_fees, avg_fee_per_order. - by_status: Removal order count, units and fees per status. Arguments: startDate, endDate, status, fields. Row fields: status, count, total_items, total_fees. Arguments: view, search, status, startDate, endDate, period, pageSize, limit, fields - costs Product cost periods and the costs that are still pending. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - table (default): Cost periods for one fulfilment type: one row per SKU, marketplace and effective_date (null = the first period, covering all history), each applying until the next. Costs are per unit in buy_currency. cost_status pending means no cost entered: its cost fields are null; report it as pending, never as £0. Arguments: type (default fba), search, missingOnly, page, pageSize (default 10, max 100), sortBy (default updated_at), sortOrder (default desc), fields. Row fields (costs): kind, sku, asin, fnsku, product_name, marketplace_id, effective_date, cost_status, buy_cost_gross, buy_prep_fee, buy_misc_fee, buy_cost_total_gross, buy_vat_rate, prep_vat_included, misc_vat_included, buy_currency, cost_notes. - missing: Cost periods with no cost entered (cost_status pending), per SKU, marketplace and effective_date (null = from the start of history). Sales, losses and stock dated in them have no cost or profit yet: report them as pending, never as £0. truncated is true when more exist than were read. Arguments: type (omit for both), fields. Row fields (items): sku, asin, product_name, channel, marketplace_id, effective_date, cost_status. Arguments: view, type, search, missingOnly, page, pageSize, sortBy, sortOrder, fields - replensmart ReplenSmart restock forecasting. Returns ReplenSmart forecast rows per ASIN with restock urgency, reorder quantity, days of supply and sales velocity. Sorting and stats.needRestock (the count that needs restocking) cover the 100 most recently updated forecasts, not only the rows returned. Arguments: limit (default 10, max 100), sortBy, sortOrder (default desc), fields. Row fields (data): asin, product_name, brand, associated_skus, target_marketplace, target_currency, target_price, restock_urgency, reorder_quantity, reorder_cost, reorder_date, stockout_date, days_of_supply, current_inventory, inbound_inventory, sales_velocity, sales_last_7_days, sales_last_30_days, sales_last_90_days, sales_last_180_days, last_sold_date, purchased, purchased_quantity, purchased_date. Arguments: limit, sortBy, sortOrder, fields - analytics Detailed seller financial analytics and pace-based forecasting. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - stats (default): Sales, COGS, fees, refunds, reimbursements and profit, with fee/cost breakdowns and previous-period totals. Sales, COGS and profit cover cost-complete orders only; calcCoveragePct is a ratio from 0 to 1 indicating that coverage. marginPct and roiPct are also ratios, not percentages. A null figure is unknown, never zero. fees, refundsAmount and the fee breakdown come from Account Profit, which books order fees on the order date and account charges (storage, subscription, ads) on their posting date; while it is being rebuilt they are null and unavailable says why. The Unmapped fee item is Amazon money the money map has no type for yet. truncated means the units count reached the backend read cap and is incomplete; cost-component breakdowns are estimated from sampled completed orders. Arguments: startDate, endDate (default last 30 days, max 365 days). - forecast: Month-to-date actuals, projected remaining-period figures and combined forecast totals using recent daily pace. These are estimates, not guaranteed results. horizon overrides remaining days (0 to 90); omit for days left in the current UTC month. Profit forecasts use cost-complete sales history and may exclude pending orders. Preserve null figures and truncated flags as unknown/incomplete; payout is month-to-date only, not a payout forecast. marginPct and roiPct are ratios, not percentages. Arguments: horizon. Arguments: view, startDate, endDate, horizon - todos Read SellerSmart workspace tasks. Workspace tasks in stored ascending index order, optionally filtered by completion and priority. This is a bounded list, not a full task count. Arguments: completed, priority, limit (default 10, max 100), fields. Row fields: text, completed, order, priority, link, dueDate, createdAt. Arguments: completed, priority, limit, fields - brandscan Read Brand Scan tasks and their results. Read-only: tasks are started in SellerSmart. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - tasks (default): Brand Scan tasks, newest first, with brand, status, marketplace and result count. task_id feeds the results view; url opens the task in SellerSmart. Arguments: search (brand), status, page, pageSize (default 10, max 100), fields. Only the 200 newest tasks are listed. Row fields (tasks): task_id, brand, status, marketplace, result_count, started_at, completed_at, url. - results: One Brand Scan task's current results, best profit first. Results replaced by a newer run of the task are not returned. profit, roi, margin, fees and buy_price come from the best marketplace to buy from (the one with the highest profit, or the highest ROI when minRoi or sortBy roi is given), named by buy_marketplace and buy_from (buy_url links to it); a null figure is unknown, never zero. found_at and changed_at are Unix milliseconds. url opens the result's page in SellerSmart; show it to the user. Arguments: taskId (required, from the tasks view), search (ASIN, brand or title), profitableOnly, minRoi (percent), sortBy (profit, roi or rank; default profit), sortOrder (default desc, asc for rank), page, pageSize (default 10, max 100), fields. Row fields (items): task_id, watch_id, brand_name, asin, title, brand, marketplace, sell_price, current_price, sales_rank, monthly_sold, amazon_on_listing, buy_marketplace, buy_from, buy_url, buy_price, fees, profit, roi, margin, found_at, changed_at, url. Arguments: view, taskId, search, status, profitableOnly, minRoi, sortBy, sortOrder, page, pageSize, fields - brandwatch Read Brand Watch watches, their results and the feed of new results. Read-only: watches are set up in SellerSmart. Choose what to return with view; arguments that do not apply to the chosen view are ignored. Views: - watches (default): Brand Watch watches with brand, status, marketplaces, result count and last scan time. watch_id feeds the results view; url opens the watch in SellerSmart. Arguments: search (brand), page, pageSize (default 10, max 100), fields. Row fields (watches): watch_id, brand, status, marketplaces, result_count, last_scanned, url. - results: One watch's current results, best profit first. profit, roi, margin, fees and buy_price come from the best marketplace to buy from (the one with the highest profit, or the highest ROI when minRoi or sortBy roi is given), named by buy_marketplace and buy_from (buy_url links to it); a null figure is unknown, never zero. found_at and changed_at are Unix milliseconds. url opens the result's page in SellerSmart; show it to the user. Arguments: watchId (required, from the watches view), search, profitableOnly, minRoi (percent), sortBy, sortOrder, page, pageSize (default 10, max 100), fields. Row fields (items): task_id, watch_id, brand_name, asin, title, brand, marketplace, sell_price, current_price, sales_rank, monthly_sold, amazon_on_listing, buy_marketplace, buy_from, buy_url, buy_price, fees, profit, roi, margin, found_at, changed_at, url. - feed: Results across every watch, most recently changed first unless sortBy is given, one row per watch and ASIN. Use since to get only results found or changed after a time, for example since the last run of a scheduled agent; a found_at at or after since marks a new find. Reading never marks anything as seen in SellerSmart. profit, roi, margin, fees and buy_price come from the best marketplace to buy from (the one with the highest profit, or the highest ROI when minRoi or sortBy roi is given), named by buy_marketplace and buy_from (buy_url links to it); a null figure is unknown, never zero. found_at and changed_at are Unix milliseconds. url opens the result's page in SellerSmart; show it to the user. Arguments: since (Unix milliseconds), search, profitableOnly, minRoi (percent), sortBy, sortOrder, page, pageSize (default 10, max 100), fields. Row fields (items): task_id, watch_id, brand_name, asin, title, brand, marketplace, sell_price, current_price, sales_rank, monthly_sold, amazon_on_listing, buy_marketplace, buy_from, buy_url, buy_price, fees, profit, roi, margin, found_at, changed_at, url. Arguments: view, watchId, since, search, profitableOnly, minRoi, sortBy, sortOrder, page, pageSize, fields - wholesale_scan List Wholesale Scan tasks with links to them in SellerSmart. Read-only. Wholesale Scan tasks, newest first, with name, status, start time and result_count, the products matched on Amazon. Results are not returned; url opens the task in SellerSmart, so show it to the user. Arguments: search (name), page, pageSize (default 10, max 100), fields. Row fields (items): task_id, name, status, result_count, started_at, url. Arguments: search, page, pageSize, fields - rivalradar List the RivalRadar rivals the workspace tracks, with links to them in SellerSmart. Read-only. RivalRadar rivals the workspace tracks, with seller name, marketplace, whether they are monitored and listing count. Their products and changes are not returned; url opens the rival in SellerSmart, so show it to the user. Arguments: search (seller name), page, pageSize (default 10, max 100), fields. Row fields (items): rival_id, seller_name, marketplace, is_monitored, status, total_listings, url. Arguments: search, page, pageSize, fields - product Everything about one product in a single call. Returns { identifier, inventory, orders, costs, returns }: the inventory search, orders list, FBA cost periods table and returns list for that ASIN or SKU, each with the Row fields and default size of that view. With fields, a part that has none of those fields is left out. A part that fails is returned as { error } while the others still load. A null cost or profit means cost pending, never zero. Arguments: identifier (required), fields - get_sellersmart_mcp_guide Return usage guidance, safety notes and suggested first calls for the SellerSmart MCP. Arguments: none ## What this server cannot do - It cannot create, edit or delete anything in SellerSmart or on Amazon. - It does not expose credentials, other organisations or user accounts. - It only covers the tools listed above, not every screen in SellerSmart. Health check: https://mcp.sellersmart.io/health