Skip to main content
Glama

Nova Amazon MCP Server

query_bsr

Read-only

Best Seller Rank (BSR) for the seller's products — the CORRECT dedicated source that keeps the per-marketplace (category, rank) pair intact (a plain average would sever it). Use THIS for any BSR question; query_metrics does NOT serve BSR. granularity='latest' (default) returns the last observed rank in the window plus period-average main/sub category ranks (with an optional change vs a baseline window); a time grain (day/week/month/quarter/year) returns a rank time series. Lower rank = better. Products: pass the list matching groupBy (skus / childAsins / parentAsins) — ALL of them in ONE call, rows come back per product; never loop one call per ASIN. Without that list the tool reports the best sellers of the catalogue (limit, default 50, by sales of the last 90 days) and says so in scope; parentAsins with groupBy childAsin reports those parents' children. An empty result never means 'no BSR data': it is a filter that matches nothing, and the error says which.

Input Schema

NameRequiredDescriptionDefault
toYesDate in ISO format (YYYY-MM-DD).
fromYesDate in ISO format (YYYY-MM-DD).
skusNo
tagsNo"Your Filters" tag IDS from list_tags (manual custom tags or predefined segmentations, Brand included) — a tag NAME is rejected.
limitNoWithout a product list only: how many best sellers to report (1–200, default 50). A product list is reported in full.
offsetNoWithout a product list only: best sellers to skip (pagination, default 0).
reasonNoOne sentence, ALWAYS IN ENGLISH (regardless of the conversation language), on WHY you are making this call — the user question or your analytical goal. Recorded so the seller can see how their data is used.
groupByYesWhat to report BSR for.
accountsNoRestrict to a subset of your own seller account IDs (from list_accounts). Omit to include all your accounts. A brand/account name is accepted and resolved to its id when it matches one of your accounts unambiguously; a label that carries the id ("Brand (A1B2C3D4E5F6G)") resolves to that id.
baselineToNoBaseline window end.
childAsinsNo
granularityNo'latest' (default) = last observed rank + period averages; a time grain = a rank series.
parentAsinsNo
baselineFromNoBaseline window start (latest mode) — enables the rank change vs baseline.
marketplacesNoMarketplace IDs.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, so safety is already covered, but the description adds genuine behavioral context: rank direction (lower = better), the `scope` field on catalogue-wide results, the parentAsins+groupBy childAsin interaction, and the important caveat that an empty result means 'no filter match' rather than 'no BSR data'. It does not cover pagination behavior or the shape of series rows, which is the main residual gap.

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

Conciseness4/5

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

Front-loaded with the core claim and the sibling exclusion, and nearly every clause carries operational value. Slightly overstuffed: the design-rationale aside '(a plain average would sever it)' and the emphasis casing ('CORRECT', 'ONE call', 'ALL') are rhetorical rather than informative.

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

Completeness5/5

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

With 15 parameters and no output schema, the description carries the return-value burden well: it explains what 'latest' returns (last observed rank plus period-average main/sub category ranks, optional baseline delta), that rows come back per product, that catalogue mode exposes a `scope` field, and how errors surface on empty filters. Nothing critical is missing for correct invocation.

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

Parameters4/5

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

Schema coverage is already 80%, yet the description still adds non-obvious semantics the schema cannot express: the product list must match groupBy (skus/childAsins/parentAsins) and be passed in ONE call, and parentAsins combined with groupBy childAsin returns the parents' children. It also restates limit's default (50) and the baseline pairing. tags/accounts/marketplaces add nothing beyond the schema.

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

Purpose5/5

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

States a specific verb+resource (BSR for the seller's products) and immediately differentiates from the nearest sibling: 'query_metrics does NOT serve BSR.' Also pins the scope (per-marketplace category/rank pair) rather than a blended average.

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

Usage Guidelines5/5

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

Explicit routing instructions — use THIS for any BSR question, query_metrics is not an alternative — plus concrete mode selection: granularity='latest' for a point-in-time read, a time grain for a series, and product-list vs catalogue-bestsellers depending on whether skus/childAsins/parentAsins are supplied. It even warns against the wrong invocation pattern (never loop one call per ASIN).

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.