Skip to main content
Glama

Bottom Products by Profit

get_bottom_products
Read-onlyIdempotent

Get the bottom N products ranked by profit or margin. Useful for finding SKUs that are losing money. Supports a minimum units filter to drop low-volume noise.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of products to return (default 10, hard-capped at 50).
rank_byYesMetric to rank products by, lowest first: net profit after overhead allocation, or net margin percentage.
end_dateYesEnd of the date range in YYYY-MM-DD format, resolved in the tenant's timezone (inclusive).
start_dateYesStart of the date range in YYYY-MM-DD format, resolved in the tenant's timezone (inclusive).
exclude_below_unitsNoDrop products that sold fewer than this many units in the period, to filter out low-volume noise (default 0, meaning no filter).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
_metaNo
periodNo
rank_byNo
_messageNo
productsNo
_truncatedNo
_tenant_contextNo
min_units_filterNoProducts below this unit count were excluded, so a low-volume loser may be absent.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds context about low-volume noise filtering, but this is already largely present in the schema description for exclude_below_units, and no additional behavioral details like tie-handling or data completeness are provided.

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?

Three concise sentences, front-loaded with the core purpose, followed by rationale and a key filtering capability. Every sentence contributes meaningful information with no fluff.

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?

Given a simple list-style tool, a full output schema, and rich parameter descriptions, the description is nearly complete. It could slightly improve by explicitly contrasting with get_top_products, but nothing essential is missing for correct invocation.

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%, with each parameter already well-described including formats, defaults, and semantics. The description's mention of a 'minimum units filter' and 'bottom N' adds narrative framing but no new technical details 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?

The description states a specific verb ('Get'), a concrete resource ('bottom N products'), and the ranking basis ('by profit or margin'). It clearly identifies the tool's purpose of finding losing SKUs and implicitly differentiates itself from siblings like get_top_products.

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

Usage Guidelines4/5

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

It provides a clear use case: 'Useful for finding SKUs that are losing money,' which tells an agent when to call this tool. However, it doesn't explicitly name alternatives or state when not to use it, so it lacks exclusionary guidance.

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