Skip to main content
Glama
torob-mcp

torob-mcp

by sepehr071

Compare products

tb_compare
Read-onlyIdempotent

Compare 2–5 products side by side to show only differing specs, the price window, and a cost ranking.

Instructions

Side-by-side comparison of 2-5 products: only the specs that differ, the price window, and which is cheapest.

differences maps a spec to its values in products order (null = not listed).

Input Schema

NameRequiredDescriptionDefault
productsYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.2.0
    • removedInput schema / properties / products / description
      Removed value: -"2 to 5 product ids, paths or URLs."
    • changedInput schema / properties / products / items / description
      Previous value: -"Product id (the UUID from search cards, e.g. '57ea65ae-0798-4cd0-96a7-38d8af180345'), a '/p/<id>/...' path or a full torob.com product URL."New value: +"Product id (UUID) or torob.com product URL."
  2. First observedv0.1.1

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, open-world, so the description is not required to explain safety. It adds genuinely new behavioral context: the result is filtered to only differing specs, includes a price window, and the `differences` map carries null for unlisted values. That last detail is important, because null would otherwise be ambiguous between 'not listed' and 'unknown'.

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 compact sentences: the first front-loads the operation and the output summary, the second handles the one non-obvious return-value convention. Nothing is repeated from the schema or title, and no sentence is 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 single-parameter, read-only tool with no output schema, the definition covers input cardinality, input format (via schema), and the shape of the response, including null semantics. The remaining gap is failure behavior: it doesn't say what happens when an id is invalid, a product has no offers, or fewer than 2 valid products resolve.

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?

Reported coverage is 0% (the schema's own description text is minimal), and the schema already encodes minItems 2 / maxItems 5; the description reinforces the 2-5 range in prose. More importantly, it explains that values in `differences` follow the `products` argument order, so the order in which the caller supplies ids is semantically meaningful. That is meaning beyond the schema, though it doesn't say whether duplicate ids are rejected or normalized.

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 names a specific operation ('side-by-side comparison of 2-5 products') and enumerates what it returns: differing specs, price window, cheapest pick. That is far more specific than the title 'Compare products'. It does not, however, distinguish itself from close siblings such as tb_cheapest, tb_best_value, or tb_products_batch, which an agent could plausibly pick for the same intent.

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 2-5 product cardinality and the comparison framing, so an agent can infer 'use when the user wants several products contrasted'. There is no explicit when-to-use statement, no exclusion of tb_cheapest/tb_best_value (whose purposes overlap with 'which is cheapest'), and no note on what happens for a single product or unknown ids.

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