Skip to main content
Glama

Bikefuchs — Bike Parts Price Comparison

Resolve Product URL

resolve_product
Read-onlyIdempotent

Turn a product page URL from a supported shop into structured product data — EAN barcode, price, stock status, and a purchase link — so the EAN can then be used with get_best_price or optimize_cart. Multi-variant product families return a labeled candidate list (size/colour, price, EAN per variant): ask the user to pick a variant, then use that exact variant's EAN with the other tools.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesProduct page URL from a supported shop (e.g. 'https://www.bike24.de/p2462871.html')
countryNoCountry for pricing (DE or AT, default DE)DE

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
eanNo
axisNoVariant axis of the options: 'size', 'colour', 'mixed', 'size_name' or 'name'.
shopYes
brandNo
priceNo
statusNo'not_resolved' when the exact variant could not be determined; 'pick_variant' when labeled variant options are returned to choose from.
messageNo
optionsNoVariants of ONE product. Ask the user to pick one, then use that variant's EAN.
resolvedNo
family_urlNoBranded /go/ link to the product family page so the user can pick the variant.
product_nameYes
affiliate_urlNoAffiliate link for this product.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint and idempotentHint; description adds context like returning labeled candidate lists for variants and that it is a safe read operation. No contradiction.

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 sentences, front-loaded with main function, then multi-variant guidance. No redundancy, every sentence earns its place.

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

Completeness5/5

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

Fully covers input, output, and edge cases (multi-variant) despite presence of output schema. Agent has all needed information to use tool correctly.

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?

Schema coverage is 100% with descriptions; description adds meaning by explaining 'supported shop' for URL and 'pricing' for country. Also contextualizes multi-variant handling beyond 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 uses a specific verb ('Turn a product page URL') and resource ('structured product data') with clear outputs (EAN, price, stock, purchase link). It distinguishes from siblings by explaining the EAN usage with other tools like get_best_price or optimize_cart.

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

Usage Guidelines5/5

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

Explicitly states when to use: to get EAN for downstream tools. For multi-variant products, it instructs to ask user to pick a variant and use that EAN with other tools, providing clear alternatives.

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.

TDQS

A4.1/5.0
Disambiguation2/5

The tools 'find_alternatives_for_product' and 'get_best_price' have nearly identical descriptions, both retrieving price and availability for a product by EAN. This creates confusion and likely causes misselection. Other tools are distinct, but this overlap significantly reduces clarity.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (e.g., get_best_price, resolve_product, search_product). No mixing of conventions or irregular naming.

Tool Count5/5

With 7 tools, the set is well-scoped for a bike parts price comparison server. Each tool serves a clear purpose in the shopping workflow, and the count is neither excessive nor insufficient.

Completeness4/5

The tool surface covers the core workflow: searching, resolving URLs, looking up by EAN, obtaining shipping info, and optimizing cart splits. The only minor gap is the redundancy between two nearly identical tools, but no essential operations are missing.