bulk_update_product_status
bulk_update_product_status MCP tool: confirm or reject products of an e-commerce project in bulk, up to 50 per call, with per-item errors. Inputs, response shape, JSON example.
Updated 2026-10-08
bulk_update_product_status sets the status of several products of an e-commerce project in one call: CONFIRMED, SUGGESTED or REJECTED.
Products seen only in answer text arrive as SUGGESTED. Products from your catalog or from a structured product card (Copilot, ChatGPT shopping) arrive as CONFIRMED. A rejection is final: the product stays rejected and is never recreated, even when engines keep naming it.
When to use
Call it after list_products with filters.status: ["SUGGESTED"] to review new products in batches: confirm the real ranges, reject what is not a product (a generic category, a store name, a misread brand).
Input
| Field | Type | Default | Description |
|---|---|---|---|
projectId |
string (CUID) | required | Project of the products. |
updates |
array (1-50) | required | One entry per product. |
updates[].productId |
string (CUID) | required | Product id from list_products. |
updates[].status |
CONFIRMED, SUGGESTED, REJECTED |
required | New status. |
Response
{
"success": false,
"updated": 2,
"failed": 1,
"results": [
{ "productId": "clpr1...", "status": "success" },
{ "productId": "clpr2...", "status": "success" },
{ "productId": "clpr9...", "status": "error", "error": "product_not_found" }
]
}
successistrueonly when every update went through.results: one entry per update, in the input order. An invalid id fails on its own without blocking the rest of the batch.
Error code per item: product_not_found (unknown id or another project).
Tips and patterns
- Rejected products leave the default listing. Pass
filters.status: ["REJECTED"]tolist_productsto review them, andSUGGESTEDorCONFIRMEDhere to bring one back. - Before rejecting a product that looks like a duplicate, merge it with
merge_products: its mentions then count for the right product instead of disappearing.
Related tools
list_products: every product of the projectmerge_products: merge duplicatesupdate_product: rename a product or change its brandbulk_update_competitor_status: the same for competitors