Skip to main content
Glama

compare_products

Read-only

Compare 2-5 products in the same category using objective attributes, sales conditions, and review-derived experiential topics to make informed decisions.

Instructions

같은 카테고리의 2~5개 상품을 객관 속성·판매 요약·체감 토픽으로 비교한다.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
product_idsYes
attribute_keysNo
experience_topicsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/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=false, covering the safety profile. The description adds the comparison dimensions (objective attributes, sales summary, experiential topics), which is useful context beyond annotations. However, it does not disclose any additional behavioral traits such as auth requirements, rate limits, or data freshness.

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?

The description is a single front-loaded sentence with no redundant or filler text. It efficiently communicates the core action, scope, and comparison dimensions.

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

Completeness3/5

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

An output schema exists, so the description need not explain return values, and annotations cover the safety profile. However, with 0% parameter description coverage and no usage guidance, the description leaves significant gaps for an agent to correctly invoke the tool, especially regarding the nested experience_topics parameter and attribute_keys format.

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

Parameters2/5

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

Schema description coverage is 0%, so the input schema provides no semantic descriptions for any of the three parameters. The description mentions '2~5개 상품' (mapping to product_ids min/max) and the three comparison aspects (loosely mapping to attribute_keys and experience_topics), but it does not explain what attribute_keys expects, what the nested ExperienceTopic fields mean, or how sales summary is controlled. This is insufficient to compensate for the complete lack of schema documentation.

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 states a specific verb '비교한다' (compare), resource '상품' (products), and scope '같은 카테고리의 2~5개' (same category, 2-5). It also names three comparison dimensions: objective attributes, sales summary, and experiential topics. This differentiates it from search_products and get_product_details implicitly, though no sibling is named explicitly.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus alternatives like get_product_details or search_products, nor any prerequisites, exclusions, or when-not conditions. The constraints (same category, 2-5 products) give minimal context but do not rise to clear usage guidance.

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