Skip to main content
Glama

Gridly — AI copilot for WooCommerce

Best and worst sellers

top_products
Read-only

Ranks products by revenue or units sold in a period. 'bottom' lists the slowest sellers among products that sold at least once.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "top_products"
  }
}

Input Schema

NameRequiredDescriptionDefault
byNorevenue
limitNoHow many rows to return (max 100).
orderNotop
storeNoStore address or id. Leave empty if you have only one store.
periodNotoday, yesterday, this_week, last_week, this_month, last_month, last_7_days, last_30_days, last_90_days, this_year, last_year — or YYYY-MM-DD..YYYY-MM-DD. Uses the store's own timezone.last_30_days

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description's real contribution is the disclosure that 'bottom' excludes never-sold products — a genuine behavioral trait beyond the annotations — but it says nothing about multi-store behavior, ranking ties, or result shape.

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

Conciseness5/5

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

Two short sentences, front-loaded with the core action and followed immediately by the one non-obvious rule. Every sentence earns its place; there is no filler.

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?

For a zero-required-param, read-only ranking tool with no output schema and annotations covering safety, this is close to sufficient. The remaining minor gaps are what the return rows look like and how `store` interacts with `period` timezone handling in multi-store accounts, both of which are recoverable from the schema.

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?

At 60% schema coverage, the undocumented enums (`by`, `order`) are the gap, and the description does add meaning for both: 'revenue or units' glosses `by`, and the 'bottom' sentence defines the semantics of `order=bottom`. That is real value, but it does not compensate for the undocumented `store` scoping behavior or the absence of any note about combining `store` with `period` across stores.

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?

States a specific verb and resource — 'Ranks products by revenue or units sold in a period' — which is concrete enough to distinguish it from aggregation/report siblings like margin_report or low_stock_report. It stops short of naming an alternative outright, so sibling differentiation is by implication rather than explicit.

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?

Usage is implied by the ranking framing but there is no explicit when-to-use or when-not-to-use guidance, and no pointer to related siblings such as compare_periods or find_products. The one clarifying rule it does give ('bottom' considers only products that sold at least once) is about semantics, not tool selection.

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