List products and prices
list_productsEverything an agent can buy from Ace, with Stripe-verified prices, billing terms, delivery and live availability.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
list_productsEverything an agent can buy from Ace, with Stripe-verified prices, billing terms, delivery and live availability.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds meaningful behavioral detail: prices are Stripe-verified, billing terms and delivery are included, and availability is live. This enriches what an agent knows beyond the annotations, without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, information-dense sentence with no filler. The key selling point ('everything an agent can buy') is front-loaded, followed by essential attributes (prices, billing, delivery, availability). Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list-only tool with no parameters and no output schema, the description covers the essential behavioral scope: what is listed (products), key attributes (prices, billing, delivery), and the dynamic nature (live availability). It does not explicitly state the return format, but that is implied by the tool's nature and the openWorldHint. Slightly more could be said about sorting or filtering, but it is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema covers 100% of the interface trivially. The description adds no parameter details because none are needed. The baseline for 0 params is 4, and the description does not detract from that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the resource ('everything an agent can buy from Ace') and implies the verb (list). It distinguishes from sibling tools like create_checkout and get_checkout by focusing on the catalog of purchasable items, so an agent can immediately tell when this tool is relevant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'everything an agent can buy' provides clear context for when to use the tool (i.e., to discover available products before purchase). It does not explicitly name alternatives or exclusions, but the sibling names (checkout, pages, site info) make the separation intuitive. No explicit when-not guidance, so a point is withheld.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.