Skip to main content
Glama

openapi_v2_markets_profile

  1. Function

Get a comprehensive category market profile: full-market Listing counts, monthly unit sales and revenue, plus leading-sample per-Listing means for price, star rating, rating count, monthly unit sales and monthly revenue. Includes brands, sellers, content adoption, new-product windows and Top 3/5/10/20 concentration summaries for products, brands, sellers and seller countries.

  1. Use cases

Build a category market profile from full-market size and leading-sample sales, prices, ratings and new-product metrics; compare demand scale and competitive characteristics across candidate markets.

  1. Example

{"categoryIds":["679399011"],"sampleType":"unitSalesTop100"}

  1. Data range

US marketplace only. Each category is analyzed independently; product coverage can include or exclude descendants. Missing metrics remain null. Market size describes the full category market; other profile metrics describe a leading sample of up to 100 Listings selected by monthly unit sales or revenue. Omit the date for the latest available snapshot. An explicit date requires a published snapshot on that day; otherwise return no data. Use the resolvedDate returned by market search to query the same snapshot. Before querying, balance must cover the distinct requested market count at the endpoint unit price; this check does not deduct credits. Billing counts distinct returned markets (site and category ID); empty data costs zero.

Input Schema

NameRequiredDescriptionDefault
dateNoPublished snapshot date (YYYY-MM-DD). Omit for the latest available common snapshot; an unpublished explicit date returns no data. Use the resolvedDate returned by market search to query the same snapshot.
sampleTypeNounitSalesTop100 selects up to 100 Amazon Listings by monthly unit sales; revenueTop100 selects up to 100 by monthly revenue. Concentration analysis uses the same metric to rank products, brands or sellers and calculate their sample shares.unitSalesTop100
categoryIdsYesReal category IDs; each ID selects an independent market.
marketplaceNoMarketplace code; currently US only.US
includeDescendantCategoryProductsNotrue includes products from this category and its descendants; false counts only directly assigned products. Controls product statistics, not market-row selection.

Output Schema

NameRequiredDescriptionDefault
dataNoResponse data payload
metaYesResponse metadata including pagination info
errorNoError details if request failed
successNoWhether the request was successful

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / date / description
      Previous value: -"Exact published snapshot date (YYYY-MM-DD); omitted selects the latest available common published snapshot. An unpublished explicit date returns no data."New value: +"Published snapshot date (YYYY-MM-DD). Omit for the latest available common snapshot; an unpublished explicit date returns no data. Use the resolvedDate returned by market search to query the same snapshot."
    • changedInput schema / properties / sampleType / description
      Previous value: -"unitSalesTop100 selects up to 100 Listings by monthly unit sales; revenueTop100 selects up to 100 by monthly revenue."New value: +"unitSalesTop100 selects up to 100 Amazon Listings by monthly unit sales; revenueTop100 selects up to 100 by monthly revenue. Concentration analysis uses the same metric to rank products, brands or sellers and calculate their sample shares."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$defs": {
      +    "ConcentrationProfile": {
      +      "properties": {
      +        "topnBrandMetrics": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/TopNBrandProfile"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top 3/5/10/20 brand summaries within the selected sample, ordered by topN.",
      +          "title": "Topnbrandmetrics"
      +        },
      +        "topnProductMetrics": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/TopNProductProfile"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top 3/5/10/20 product summaries within the selected sample, ordered by topN.",
      +          "title": "Topnproductmetrics"
      +        },
      +        "topnSellerCountryMetrics": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/TopNSellerProfile"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top 3/5/10/20 seller-country summaries within the selected sample, ordered by topN.",
      +          "title": "Topnsellercountrymetrics"
      +        },
      +        "topnSellerMetrics": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/TopNSellerProfile"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top 3/5/10/20 seller summaries within the selected sample, ordered by topN.",
      +          "title": "Topnsellermetrics"
      +        }
      +      },
      +      "title": "ConcentrationProfile",
      +      "type": "object"
      +    },
      +    "ErrorDetail": {
      +      "description": "Error detail structure.",
      +      "properties": {
      +        "code": {
      +          "description": "Error code identifier",
      +          "title": "Code",
      +          "type": "string"
      +        },
      +        "details": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": true,
      +              "type": "object"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Additional error details",
      +          "title": "Details"
      +        },
      +        "message": {
      +          "description": "Human-readable error message",
      +          "title": "Message",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "code",
      +        "message"
      +      ],
      +      "title": "ErrorDetail",
      +      "type": "object"
      +    },
      +    "MarketProfile": {
      +      "properties": {
      +        "categoryId": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Amazon category ID identifying this market.",
      +          "title": "Categoryid"
      +        },
      +        "categoryIdPath": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Real category IDs aligned with categoryPath, from root to current category.",
      +          "title": "Categoryidpath"
      +        },
      +        "categoryName": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Name of the current market category.",
      +          "title": "Categoryname"
      +        },
      +        "categoryPath": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Category names ordered from the root through the current category.",
      +          "title": "Categorypath"
      +        },
      +        "currency": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Currency of monetary metrics; USD for the US marketplace.",
      +          "title": "Currency"
      +        },
      +        "includeDescendantCategoryProducts": {
      +          "anyOf": [
      +            {
      +              "type": "boolean"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "true includes products in this category and its descendants; false counts only directly assigned products.",
      +          "title": "Includedescendantcategoryproducts"
      +        },
      +        "marketSize": {
      +          "anyOf": [
      +            {
      +              "$ref": "#/$defs/MarketSize"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market Listing count, monthly sales and revenue, plus available new-product windows."
      +        },
      +        "resolvedDate": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Data snapshot date actually selected for this query (YYYY-MM-DD); not the ETL run date or data production date.",
      +          "title": "Resolveddate"
      +        },
      +        "sampleProfile": {
      +          "anyOf": [
      +            {
      +              "$ref": "#/$defs/SampleProfile"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected Listing sample totals, per-Listing averages, prices, ratings and available sample subprofiles."
      +        },
      +        "sampleType": {
      +          "anyOf": [
      +            {
      +              "enum": [
      +                "unitSalesTop100",
      +                "revenueTop100"
      +              ],
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "unitSalesTop100 selects up to 100 Listings by monthly unit sales; revenueTop100 selects up to 100 by monthly revenue. Top N ranking uses the selected metric.",
      +          "title": "Sampletype"
      +        },
      +        "site": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Amazon site, currently amazon.com.",
      +          "title": "Site"
      +        }
      +      },
      +      "title": "MarketProfile",
      +      "type": "object"
      +    },
      +    "MarketSize": {
      +      "properties": {
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "newProductProfile": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/MarketSizeNewProductWindow"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "New-product statistics for the preceding 1, 3, 6 and 12 calendar months relative to resolvedDate; each window uses the enclosing group's products.",
      +          "title": "Newproductprofile"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market: Listing count.",
      +          "title": "Productcount"
      +        }
      +      },
      +      "title": "MarketSize",
      +      "type": "object"
      +    },
      +    "MarketSizeNewProductWindow": {
      +      "properties": {
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market new products in this calendar-month window: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market new products in this calendar-month window: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Full-market new products in this calendar-month window: Listing count.",
      +          "title": "Productcount"
      +        },
      +        "productRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "New-product Listing count in this window divided by marketSize.productCount (0–1).",
      +          "title": "Productrate"
      +        },
      +        "windowMonths": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Preceding calendar-month window relative to resolvedDate: 1, 3, 6 or 12; launch dates are after the lower date boundary and on or before resolvedDate.",
      +          "title": "Windowmonths"
      +        }
      +      },
      +      "title": "MarketSizeNewProductWindow",
      +      "type": "object"
      +    },
      +    "ResponseMeta": {
      +      "description": "Metadata for API responses.\n\nCredit fields follow the ADR-0003 parallel-fields strategy (Option 3):\n- `credits_remaining` / `credits_consumed` (int): legacy fields, rounded\n  to whole credits, kept for zero-breaking-change to existing SDK clients.\n- `credits_remaining_exact` / `credits_consumed_exact` (float): new\n  precision-aware fields for clients that opt in to decimal credits.\n\nSee ADR-0003 decision 5 and the §8 deprecation timeline.\n\nTODO(2026-11, ADR-0003 §8 +6mo): mark `credits_remaining` /\n`credits_consumed` as `deprecated=True` in their Field() definitions\nand announce in customer changelog.\nTODO(2027-05, ADR-0003 §8 +12mo): remove the legacy int fields via a\nmajor-version bump of the OpenAPI surface.",
      +      "properties": {
      +        "creditsConsumed": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Credits consumed by this request (rounded; see creditsConsumedExact for precise value)",
      +          "title": "Creditsconsumed"
      +        },
      +        "creditsConsumedExact": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Credits consumed by this request, precise to 1 decimal place",
      +          "title": "Creditsconsumedexact"
      +        },
      +        "creditsRemaining": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Remaining API credits (rounded to whole credits; see creditsRemainingExact for precise value)",
      +          "title": "Creditsremaining"
      +        },
      +        "creditsRemainingExact": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Remaining API credits, precise to 1 decimal place",
      +          "title": "Creditsremainingexact"
      +        },
      +        "page": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Current page number",
      +          "title": "Page"
      +        },
      +        "pageSize": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Number of records per page",
      +          "title": "Pagesize"
      +        },
      +        "requestId": {
      +          "description": "Unique request identifier",
      +          "title": "Requestid",
      +          "type": "string"
      +        },
      +        "timestamp": {
      +          "description": "Response timestamp in ISO 8601 format",
      +          "title": "Timestamp",
      +          "type": "string"
      +        },
      +        "tokensUsage": {
      +          "anyOf": [
      +            {
      +              "$ref": "#/$defs/TokensUsage"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Provider token-usage block — populated on terminal video polls only, null on every non-video endpoint. See TokensUsage for its fields."
      +        },
      +        "total": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Total number of records",
      +          "title": "Total"
      +        },
      +        "totalPages": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Total number of pages",
      +          "title": "Totalpages"
      +        }
      +      },
      +      "required": [
      +        "requestId",
      +        "timestamp"
      +      ],
      +      "title": "ResponseMeta",
      +      "type": "object"
      +    },
      +    "SampleNewProductWindow": {
      +      "properties": {
      +        "avgMonthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly revenue per Amazon Listing in this new-product window within the selected sample, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlyrevenue"
      +        },
      +        "avgMonthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly unit sales per Amazon Listing in this new-product window within the selected sample. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlysales"
      +        },
      +        "avgPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day prices across Amazon Listings in this new-product window within the selected sample, in USD. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgprice"
      +        },
      +        "avgRating": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average star ratings across Amazon Listings in this new-product window within the selected sample (0–5). Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgrating"
      +        },
      +        "avgRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average rating counts per Amazon Listing in this new-product window within the selected sample; not written-review counts. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgratingcount"
      +        },
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Sample new products in this calendar-month window: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlyRevenueRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Window new-product monthly revenue divided by sampleProfile.monthlyRevenue (0–1).",
      +          "title": "Monthlyrevenuerate"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Sample new products in this calendar-month window: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "monthlySalesRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Window new-product monthly unit sales divided by sampleProfile.monthlySales (0–1).",
      +          "title": "Monthlysalesrate"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Sample new products in this calendar-month window: Listing count.",
      +          "title": "Productcount"
      +        },
      +        "productRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "New-product Listing count in this window divided by sampleProfile.productCount (0–1).",
      +          "title": "Productrate"
      +        },
      +        "windowMonths": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Preceding calendar-month window relative to resolvedDate: 1, 3, 6 or 12; launch dates are after the lower date boundary and on or before resolvedDate.",
      +          "title": "Windowmonths"
      +        }
      +      },
      +      "title": "SampleNewProductWindow",
      +      "type": "object"
      +    },
      +    "SampleProfile": {
      +      "properties": {
      +        "aPlusProductCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Number of sample Listings with A+ content.",
      +          "title": "Aplusproductcount"
      +        },
      +        "aPlusProductRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Number of sample Listings with A+ content divided by sampleProductCount (0–1).",
      +          "title": "Aplusproductrate"
      +        },
      +        "avgBigBsr30d": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day best-seller rank in the large category across sample Listings; smaller ranks are better.",
      +          "title": "Avgbigbsr30D"
      +        },
      +        "avgGrossMarginRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average gross margin rate across sample Listings, as a fraction rather than a percentage.",
      +          "title": "Avggrossmarginrate"
      +        },
      +        "avgMonthlyNewRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly new-rating count per sample Listing.",
      +          "title": "Avgmonthlynewratingcount"
      +        },
      +        "avgMonthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly revenue per Amazon Listing in the selected sample, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlyrevenue"
      +        },
      +        "avgMonthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly unit sales per Amazon Listing in the selected sample. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlysales"
      +        },
      +        "avgPackageVolumeIn3": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average package volume across sample Listings, in cubic inches (in³).",
      +          "title": "Avgpackagevolumein3"
      +        },
      +        "avgPackageWeightOz": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average package weight across sample Listings, in ounces (oz).",
      +          "title": "Avgpackageweightoz"
      +        },
      +        "avgPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day prices across Amazon Listings in the selected sample, in USD. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgprice"
      +        },
      +        "avgRating": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average star ratings across Amazon Listings in the selected sample (0–5). Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgrating"
      +        },
      +        "avgRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average rating counts per Amazon Listing in the selected sample; not written-review counts. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgratingcount"
      +        },
      +        "avgSellerCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average observed seller count per sample Listing.",
      +          "title": "Avgsellercount"
      +        },
      +        "brandCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected sample: distinct brand count.",
      +          "title": "Brandcount"
      +        },
      +        "concentrationProfile": {
      +          "anyOf": [
      +            {
      +              "$ref": "#/$defs/ConcentrationProfile"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top 3/5/10/20 concentration summaries for products, brands, sellers and seller countries in the selected sample."
      +        },
      +        "medianProductPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Median 30-day price across sample Listings, in USD.",
      +          "title": "Medianproductprice"
      +        },
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected sample: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected sample: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "newProductProfile": {
      +          "anyOf": [
      +            {
      +              "items": {
      +                "$ref": "#/$defs/SampleNewProductWindow"
      +              },
      +              "type": "array"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "New-product statistics for the preceding 1, 3, 6 and 12 calendar months relative to resolvedDate; each window uses the enclosing group's products.",
      +          "title": "Newproductprofile"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected sample: Listing count.",
      +          "title": "Productcount"
      +        },
      +        "sellerCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Selected sample: distinct observed seller count.",
      +          "title": "Sellercount"
      +        },
      +        "videoProductCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Number of sample Listings with product videos.",
      +          "title": "Videoproductcount"
      +        },
      +        "videoProductRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Number of sample Listings with product videos divided by sampleProductCount (0–1).",
      +          "title": "Videoproductrate"
      +        }
      +      },
      +      "title": "SampleProfile",
      +      "type": "object"
      +    },
      +    "TokensUsage": {
      +      "additionalProperties": true,
      +      "description": "Provider token-usage block surfaced on `meta.tokensUsage`.\n\nModeled fields use camelCase aliases to match the V2 envelope\nconvention (`requestId`, `creditsRemaining`, `tokensUsage` itself);\nthe upstream snake_case names (`completion_tokens`, `total_tokens`)\nare still accepted on input via `populate_by_name=True` so the\nBytePlus raw `usage` dict can be passed to `model_validate()`\nunchanged.\n\nToken *counts* only — never a USD amount; the customer derives USD\ncost from these counts times the published per-token rate.\n`extra=\"allow\"` keeps any additional upstream usage field reaching\nthe customer without a redeploy (those extras pass through under\nwhatever name the provider sent them with).",
      +      "properties": {
      +        "completionTokens": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Tokens the provider generated for the task — the billing basis. Multiply by the published per-token rate for the (model, resolution, input-video) combination to get the USD cost. Present on a successful terminal poll.",
      +          "title": "Completiontokens"
      +        },
      +        "totalTokens": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Total tokens attributed to the task (input + output). For current video models this equals `completionTokens`; may be absent if the provider does not report it.",
      +          "title": "Totaltokens"
      +        }
      +      },
      +      "title": "TokensUsage",
      +      "type": "object"
      +    },
      +    "TopNBrandProfile": {
      +      "properties": {
      +        "avgMonthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly revenue per Amazon Listing in this Top N brand group, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlyrevenue"
      +        },
      +        "avgMonthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly unit sales per Amazon Listing in this Top N brand group. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlysales"
      +        },
      +        "avgPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day prices across Amazon Listings in this Top N brand group, in USD. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgprice"
      +        },
      +        "avgRating": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average star ratings across Amazon Listings in this Top N brand group (0–5). Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgrating"
      +        },
      +        "avgRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average rating counts per Amazon Listing in this Top N brand group; not written-review counts. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgratingcount"
      +        },
      +        "bigCategoryAvgBsr": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average large-category best-seller rank across this Top N group's Listings.",
      +          "title": "Bigcategoryavgbsr"
      +        },
      +        "brandCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: distinct brand count.",
      +          "title": "Brandcount"
      +        },
      +        "concentrationRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N share of the enclosing sample's selected metric: monthly unit sales for unitSalesTop100, monthly revenue for revenueTop100 (0–1); null when undefined.",
      +          "title": "Concentrationrate"
      +        },
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: Listing count.",
      +          "title": "Productcount"
      +        },
      +        "topN": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N cutoff for this group: 3, 5, 10 or 20.",
      +          "title": "Topn"
      +        }
      +      },
      +      "title": "TopNBrandProfile",
      +      "type": "object"
      +    },
      +    "TopNProductProfile": {
      +      "properties": {
      +        "avgMonthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly revenue per Amazon Listing in this Top N product group, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlyrevenue"
      +        },
      +        "avgMonthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly unit sales per Amazon Listing in this Top N product group. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlysales"
      +        },
      +        "avgPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day prices across Amazon Listings in this Top N product group, in USD. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgprice"
      +        },
      +        "avgRating": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average star ratings across Amazon Listings in this Top N product group (0–5). Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgrating"
      +        },
      +        "avgRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average rating counts per Amazon Listing in this Top N product group; not written-review counts. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgratingcount"
      +        },
      +        "bigCategoryAvgBsr": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average large-category best-seller rank across this Top N group's Listings.",
      +          "title": "Bigcategoryavgbsr"
      +        },
      +        "brandCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: distinct brand count.",
      +          "title": "Brandcount"
      +        },
      +        "concentrationRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N share of the enclosing sample's selected metric: monthly unit sales for unitSalesTop100, monthly revenue for revenueTop100 (0–1); null when undefined.",
      +          "title": "Concentrationrate"
      +        },
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: monthly revenue total, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: monthly unit-sales total. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "productCount": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "This Top N group within the selected sample: Listing count.",
      +          "title": "Productcount"
      +        },
      +        "smallCategoryAvgBsr": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average small-category best-seller rank across this Top N group's Listings.",
      +          "title": "Smallcategoryavgbsr"
      +        },
      +        "topN": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N cutoff for this group: 3, 5, 10 or 20.",
      +          "title": "Topn"
      +        }
      +      },
      +      "title": "TopNProductProfile",
      +      "type": "object"
      +    },
      +    "TopNSellerProfile": {
      +      "properties": {
      +        "avgMonthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly revenue per Amazon Listing in this Top N seller or seller-country group, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlyrevenue"
      +        },
      +        "avgMonthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average monthly unit sales per Amazon Listing in this Top N seller or seller-country group. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Avgmonthlysales"
      +        },
      +        "avgPrice": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average 30-day prices across Amazon Listings in this Top N seller or seller-country group, in USD. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgprice"
      +        },
      +        "avgRating": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average star ratings across Amazon Listings in this Top N seller or seller-country group (0–5). Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgrating"
      +        },
      +        "avgRatingCount": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Average rating counts per Amazon Listing in this Top N seller or seller-country group; not written-review counts. Excludes Listings whose corresponding metric is null; zeros participate. The denominator can differ from other means; no valid values returns null.",
      +          "title": "Avgratingcount"
      +        },
      +        "concentrationRate": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N share of the enclosing sample's selected metric: monthly unit sales for unitSalesTop100, monthly revenue for revenueTop100 (0–1); null when undefined.",
      +          "title": "Concentrationrate"
      +        },
      +        "monthlyRevenue": {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Monthly revenue total of this Top N group within the selected sample, in USD. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlyrevenue"
      +        },
      +        "monthlySales": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Monthly unit-sales total of this Top N group within the selected sample. Sales cover the trailing 30 days at this data snapshot, not cumulative sales over a launch-age window or requested date range.",
      +          "title": "Monthlysales"
      +        },
      +        "topN": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Top N cutoff for this group: 3, 5, 10 or 20.",
      +          "title": "Topn"
      +        }
      +      },
      +      "title": "TopNSellerProfile",
      +      "type": "object"
      +    }
      +  },
      +  "examples": [],
      +  "properties": {
      +    "data": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "$ref": "#/$defs/MarketProfile"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Response data payload",
      +      "title": "Data"
      +    },
      +    "error": {
      +      "anyOf": [
      +        {
      +          "$ref": "#/$defs/ErrorDetail"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Error details if request failed"
      +    },
      +    "meta": {
      +      "$ref": "#/$defs/ResponseMeta",
      +      "description": "Response metadata including pagination info"
      +    },
      +    "success": {
      +      "default": true,
      +      "description": "Whether the request was successful",
      +      "title": "Success",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "meta"
      +  ],
      +  "title": "OpenApiResponse[list[MarketProfile]]",
      +  "type": "object"
      +}
  2. Added

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and largely delivers: US-only scope, null semantics for missing metrics, full-market vs up-to-100-Listing leading sample, the explicit-date-must-be-published rule with a no-data failure mode, and detailed billing behavior (pre-query balance check at unit price, billing by distinct returned market, empty data costs zero). Auth requirements and any rate limits are the notable omissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The numbered sections and the worked JSON example are genuinely helpful and the purpose is front-loaded. But the description is long and repeats the full-market vs leading-sample distinction in two places ('full-market Listing counts... plus leading-sample per-Listing means' and again in Data range), so several sentences do not earn their place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the description covers the remaining operational questions an agent needs: date resolution, marketplace constraint, sample selection, null handling, and billing. For a read-only multi-parameter data query this is close to complete, with only auth/permission prerequisites and pagination unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents date, sampleType, categoryIds, marketplace and includeDescendantCategoryProducts, and it even explains the concentration-ranking behavior of sampleType. The description adds only marginal framing ('each category is analyzed independently; product coverage can include or exclude descendants'), which is close to what the schema fields already state, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource — 'Get a comprehensive category market profile' — and enumerates exactly what the profile contains (market size, leading-sample means, concentration summaries). It is clearly distinguishable from a generic getter, but it never names or contrasts the many sibling endpoints (brand_concentrations, seller_concentrations, distributions, history) that return overlapping sub-metrics, so an agent must infer the boundary itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Use cases' section gives context ('build a category market profile... compare demand scale and competitive characteristics'), and the data-range section usefully points at market search's resolvedDate for snapshot consistency. However there is no explicit when-to-use-this-vs-alternatives guidance against the distribution/concentration siblings, and no statement of when this tool is the wrong choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources