Skip to main content
Glama

Bikefuchs — Bike Parts Price Comparison

Server Details

Price comparison & cart optimizer for bike parts across German & Austrian shops

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 73 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
bikefuchs/bikefuchs-mcp-stub
GitHub Stars
0
Server Listing
bikefuchs-mcp-stub

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation3/5

find_alternatives_for_product and get_best_price are nearly indistinguishable in practice: both take an EAN and return per-shop prices with stock and links, sorted cheapest-first. Descriptions offer hints ("use get_best_price instead" for search_product), but the duplication between the two EAN lookup tools invites misselection. The shipping tools and resolve/search/optimize are otherwise clearly separated.

Naming Consistency5/5

All seven tools follow a consistent snake_case verb_noun pattern (get_best_price, search_product, resolve_product, optimize_cart, get_shop_info). The one longer name, find_alternatives_for_product, still fits the same verb_object convention with a clarifying qualifier.

Tool Count5/5

Seven tools is well-scoped for a price-comparison server, covering discovery, lookup, shipping, and cart optimization without bloat. Each tool maps to a distinct step in the shopping workflow.

Completeness4/5

The lifecycle is largely covered: search by name, resolve a shop URL to an EAN, look up prices across shops, understand shipping tiers, and optimize a multi-item cart. Minor gaps remain (no price history/alerting or direct product-to-product comparison), and the redundant alternatives tool suggests a slightly unresolved surface rather than a missing capability.

Available Tools

7 tools
find_alternatives_for_productFind Alternative ShopsA
Read-onlyIdempotent
Inspect

Given a product's EAN barcode, return every shop that carries it with prices and availability, sorted cheapest-first.

NameRequiredDescriptionDefault
eanYesEAN barcode (8–14 digits, e.g. '4524667749493')
countryNoCountry for pricing (DE or AT, default DE)DE

Output Schema

NameRequiredDescription
eanYes
disclosureNo
alternativesYes
product_nameYes
refresh_pendingNo
retry_after_secondsNo
cheapest_price_staleNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is fully covered by structured data. The description adds one genuine behavioral trait beyond that: results are sorted cheapest-first, which tells the agent how to interpret ordering without post-processing. It says nothing about result caps, pagination, or staleness of prices.

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?

A single sentence that front-loads the input (EAN barcode) and then the output contract (shops, prices, availability, sort order). No filler, no restatement of the title or name.

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?

With an output schema present, the description need not enumerate return fields, and annotations cover the safety profile, so what remains is mostly covered. The one gap is that openWorldHint=false combined with a cross-shop lookup could mislead an agent about where the data comes from, and there is no note on result volume or freshness.

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 both ean (pattern, example) and country (enum, default) fully documented in the schema. The description restates the EAN input but adds nothing about the country parameter or its DE/AT pricing effect. Baseline 3 is correct when the schema carries the parameter burden.

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?

States a specific verb and resource with explicit scope: given an EAN, return every shop carrying it with prices and availability, sorted cheapest-first. This clearly separates it from search_product and resolve_product, which operate on product identity rather than shop listings. It does not explicitly contrast with get_best_price, which is the closest sibling by output, so sibling differentiation is only partial.

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?

The input precondition (an EAN barcode) is stated, so usage is implied, but there is no when-to-use vs when-not guidance and no mention of the obvious alternative get_best_price for agents that only need the cheapest offer. The agent must infer the routing decision from sibling names alone.

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

get_best_priceGet Best Price by EANA
Read-onlyIdempotent
Inspect

Look up a single product by its EAN barcode and return the price at every shop that carries it, sorted cheapest-first, with stock status and direct purchase links.

NameRequiredDescriptionDefault
eanYesEAN barcode (8–14 digits, e.g. '4524667749493')
countryNoCountry for pricing (DE or AT, default DE)DE
reference_shopNoShop id or display name to compare against. When set, the response states how much cheaper the cheapest shop is vs. this shop.

Output Schema

NameRequiredDescription
eanYes
pricesYes
next_stepNo
disclosureNo
product_nameYes
cheapest_shopYes
cheapest_priceYes
refresh_pendingNo
retry_after_secondsNo
cheapest_price_staleNo
reference_comparisonNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and destructiveHint=false, covering the safety profile. The description adds sorting, stock status, and purchase links, but an output schema exists so those return details are redundant. No additional behavioral context such as auth or rate limits is provided. Baseline 3 is appropriate.

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?

A single, front-loaded sentence that packs purpose, scope, and output shape with zero wasted words.

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?

Given 100% schema coverage, an output schema, and annotations that fully cover safety, the description provides sufficient context. An agent has everything needed to select and invoke the tool correctly.

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%, and the schema documents all three parameters including the enum for country and the reference_shop comparison behavior. The description does not mention any parameters, so it adds no meaning beyond the schema. Baseline 3.

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?

States a specific verb ('Look up'), resource ('single product by its EAN barcode'), and scope (price at every shop, sorted cheapest-first). It clearly distinguishes from siblings like search_product or resolve_product by requiring an EAN and returning a price comparison.

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?

The description implies usage (look up by EAN for price comparison), but does not explicitly say when to use this tool versus alternatives like search_product or resolve_product. No exclusions or alternatives are named.

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

get_shipping_breakdownGet Shipping CostA
Read-onlyIdempotent
Inspect

Return the exact shipping cost for a specific shop, country, and cart value, including all shipping tiers and how much more is needed to reach the next free-shipping threshold.

NameRequiredDescriptionDefault
shopYesShop name or ID (e.g. 'rosebikes', 'boc24', 'bike24', 'fahrradteile', 'Rose Bikes')
countryYesCountry (DE or AT)
cart_valueYesTotal cart value in EUR (e.g. 49.99)

Output Schema

NameRequiredDescription
shopYes
countryYes
currencyYes
cart_valueYes
shipping_costYes
free_shipping_thresholdNo

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, and the description adds no further side-effect or operational context such as costs, errors, or special cases. The mention of tiers and the free-shipping threshold describes output content rather than a behavioral trait, so no significant extra value beyond the safety annotations is added.

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?

A single, front-loaded sentence starts with the action ('Return the exact shipping cost') and packs the required parameters and outputs into one efficient clause. There is no filler, repetition, or tangential information.

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?

For a three-parameter read-only tool with a full input schema, complete annotations, and an output schema available, the description supplies all context an agent needs to decide and invoke correctly. It explains the key derived output, the free-shipping threshold gap, that a caller would otherwise not anticipate.

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 coverage is 100% with detailed descriptions for all three parameters, so the schema carries the meaning. The description restates the parameter concepts but adds no new format, unit, or edge-case information 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 names a precise action (return exact shipping cost), a clear resource (a specific shop, country, and cart value), and the distinct outputs (all shipping tiers and the gap to free-shipping). This differentiates it from sibling tools such as get_best_price, which concern product pricing rather than shipping cost.

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 clearly implies when to use the tool: whenever the agent needs the shipping cost for a known shop, country, and cart value. It doesn't explicitly list alternatives or exclusion conditions, but the strong context makes the intended use obvious.

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

get_shop_infoGet Shop OverviewA
Read-onlyIdempotent
Inspect

Return an overview of the supported shops, including their shipping cost tiers, free-shipping thresholds, and supported countries (DE and AT).

NameRequiredDescriptionDefault
countryNoFilter output to a specific country (optional — omit for both DE and AT)

Output Schema

NameRequiredDescription
shopsYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds content-level context but no additional behavioral traits such as rate limits, required permissions, or data-source caveats. This is acceptable given the strong annotation coverage.

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 filler or redundant information. Every clause adds value: the resource, the nature of the output, and the specific countries covered are all stated efficiently.

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?

This is a simple read-only tool with one optional parameter, a rich schema, an output schema, and strong annotations. The description provides enough detail about the returned content and the supported countries for an agent to invoke it correctly without further clarification.

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 the schema already documenting the optional country parameter and its DE/AT restriction. The tool description reinforces that DE and AT are the supported countries but does not add new meaning beyond the schema, so the baseline score of 3 is appropriate.

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 and resource ('Return an overview of the supported shops') and enumerates concrete contents: shipping cost tiers, free-shipping thresholds, and countries DE/AT. This clearly differentiates it from siblings like get_shipping_breakdown or get_best_price, which focus on transactional or pricing details rather than shop-level overviews.

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?

The description says what the tool returns but gives no guidance on when to prefer it over alternatives or when not to use it. It does not mention any sibling tools or conditions that would route an agent to get_shipping_breakdown, get_best_price, or optimize_cart instead.

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

optimize_cartOptimize Shopping CartA
Read-onlyIdempotent
Inspect

Find the cheapest way to buy multiple products together: computes the optimal split across shops — which items to order from which shop — accounting for each shop's shipping costs and free-shipping thresholds, and returns the lowest achievable total including shipping. Takes an array of EAN barcodes. For accurate results, call get_best_price for each EAN first, then call optimize_cart.

NameRequiredDescriptionDefault
eansYesArray of EAN barcodes (8–14 digit numbers as strings, e.g. '4524667749493'). NOT URLs.
countryNoCountry for pricing and shipping (DE or AT, default DE)DE

Output Schema

NameRequiredDescription
disclosureNo
optimizationYes
savings_infoNo
stale_cache_warningNo
excluded_stale_offersNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so the safety profile is covered. The description adds real behavioral context: it accounts for shipping costs and free-shipping thresholds and guarantees the lowest achievable total including shipping, which is more than the annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core behavior, then the input, then the prerequisite workflow. It stays efficient, though the first sentence's clauses are dense enough that the 'what it returns' point could be sharper.

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?

An output schema exists, so return values don't need explaining, and the description supplies the key workflow context that would otherwise be missing. It doesn't mention that only DE/AT are supported or the 20-EAN cap, but the schema covers both.

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 coverage is 100%, so both the eans array and the country enum are fully documented in the schema. The description only repeats that it takes an array of EAN barcodes and says nothing extra about country or the 20-item cap, so baseline 3 is appropriate.

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 and resource — it computes the cheapest way to split a multi-item purchase across shops and returns the lowest total including shipping. It clearly distinguishes itself from siblings like get_best_price (single-item pricing) and get_shipping_breakdown (per-shop cost detail).

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 gives an explicit prerequisite: call get_best_price for each EAN first, then call optimize_cart. That sequencing guidance is concrete, though it doesn't say when *not* to use this tool or how it relates to get_shipping_breakdown for a detailed breakdown.

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

resolve_productResolve Product URLA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
urlYesProduct page URL from a supported shop (e.g. 'https://www.rosebikes.de/p/<product-name>-<id>')
countryNoCountry for pricing (DE or AT, default DE)DE

Output Schema

NameRequiredDescription
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
min_priceNo
disclosureNo
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.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds genuinely new behavior beyond that: multi-variant families return a labeled candidate list rather than a single product, and the agent must ask the user to pick before proceeding. It does not mention failure modes for unsupported shops or ambiguous URLs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly packed sentences with the core capability front-loaded and the variant-handling caveat second. Dense but every clause carries information; no filler or repetition of the title.

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?

An output schema exists, so return values need not be re-explained, and annotations cover the safety profile. The description supplies the one non-obvious piece an agent needs — the multi-variant candidate-list flow and the required user confirmation step — which would otherwise cause incorrect downstream EAN usage.

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% and both parameters (url, country) are documented in the schema with format and enum. The description only loosely restates 'URL from a supported shop' and says nothing about the country parameter, so it adds little beyond the schema. Baseline 3 applies.

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?

States a specific verb+resource ('Turn a product page URL ... into structured product data') and enumerates the outputs (EAN, price, stock status, purchase link). It also positions itself against siblings by naming get_best_price and optimize_cart as the downstream consumers of the EAN.

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?

Clearly frames when to use it (you have a product URL and need an EAN) and names the downstream alternatives to hand off to. It also gives a concrete branching instruction for multi-variant families. It stops short of stating a when-not case, e.g. that an already-known EAN should skip this tool.

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

search_productSearch Bike ProductsA
Read-onlyIdempotent
Inspect

Search for bicycle parts, components, accessories, and cycling clothing by name, brand, or model number. Returns matching products sorted cheapest-first, each with its price, stock status, EAN barcode, and a direct purchase link. Supports DE and AT pricing. If you already have a product's EAN, use get_best_price instead.

NameRequiredDescriptionDefault
qYesSearch keyword, min 2 chars. Multi-word queries use AND logic across product names (e.g. 'shimano xt bremsbeläge')
shopNoRestrict results to a single supported shop (by id or name)
countryNoCountry for pricing (DE or AT, default DE)DE
categoryNoFilter by merchant category (partial match, e.g. 'Fahrräder' or 'Bremsen')
in_stockNoOnly return in-stock products (default true)
max_priceNoUpper price bound in EUR (inclusive)
max_resultsNoMax results (1–20, default 10)

Output Schema

NameRequiredDescription
queryYes
resultsYes
disclosureNo
next_stepsNo
total_resultsYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive, and closed-world behavior. The description adds useful behavioral detail: results are sorted cheapest-first and pricing supports DE and AT. It does not disclose rate limits or default stock filtering, but those are either schema-covered or minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded and mostly efficient, with the alternative tool named at the end. The sentence listing returned fields is slightly redundant because an output schema exists, though the cheapest-first sorting detail still 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?

Given annotations, full schema coverage, and an output schema, the description provides enough context to call the tool correctly: it covers purpose, result ordering, country support, and the key alternative sibling. Nothing essential is missing for an agent deciding whether to invoke it.

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%, so the schema already explains all seven parameters in detail. The description adds only modest meaning, mainly that the query may target a brand or model number and that pricing supports DE/AT; it does not add syntax or filtering semantics 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?

It states a specific verb and resource: searching bicycle products by name, brand, or model number across clearly named categories. It also distinguishes itself from the closest pricing sibling by telling the agent to use get_best_price when an EAN is already known.

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?

The description says when to use it (searching parts/components/accessories/clothing by name, brand, or model number) and names the explicit alternative when an EAN is already available. This is a clear routing rule, not just implied guidance.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedsearch_product1 field changed
      • changedInput schema / properties / q / description
        Previous value: -"Search keyword, min 2 chars. Multi-word queries use AND logic across product name, description, and specifications (e.g. 'shimano xt bremsbeläge')"New value: +"Search keyword, min 2 chars. Multi-word queries use AND logic across product names (e.g. 'shimano xt bremsbeläge')"
  2. 3 tool updates
    • Changedfind_alternatives_for_product5 fields changed
      • addedOutput schema / properties / alternatives / items / properties / price_as_of
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / alternatives / items / properties / price_stale
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / cheapest_price_stale
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / refresh_pending
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / retry_after_seconds
        Added value: +{
        +  "type": "number"
        +}
    • Changedget_best_price5 fields changed
      • addedOutput schema / properties / cheapest_price_stale
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / prices / items / properties / price_as_of
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / prices / items / properties / price_stale
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / refresh_pending
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / retry_after_seconds
        Added value: +{
        +  "type": "number"
        +}
    • Changedoptimize_cart1 field changed
      • addedOutput schema / properties / excluded_stale_offers
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "count": {
        +      "type": "number"
        +    },
        +    "shops": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "count",
        +    "shops"
        +  ],
        +  "type": "object"
        +}
  3. 1 tool update
    • Changedresolve_product5 fields changed
      • addedOutput schema / properties / min_price
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "number"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / options / items / properties / ean / anyOf
        Added value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / options / items / properties / ean / description
        Previous value: -"EAN of this exact variant — use it with get_best_price / optimize_cart."New value: +"EAN of this exact variant; null when the shop has no barcode for this size — then there is no price comparison, use product_url."
      • removedOutput schema / properties / options / items / properties / ean / type
        Removed value: -"string"
      • addedOutput schema / properties / options / items / properties / product_url
        Added value: +{
        +  "description": "Direct /go/ link to this exact size at the input shop.",
        +  "type": "string"
        +}
  4. 5 tool updates
    • Changedfind_alternatives_for_product1 field changed
      • addedOutput schema / properties / disclosure
        Added value: +{
        +  "type": "string"
        +}
    • Changedget_best_price1 field changed
      • addedOutput schema / properties / disclosure
        Added value: +{
        +  "type": "string"
        +}
    • Changedoptimize_cart1 field changed
      • addedOutput schema / properties / disclosure
        Added value: +{
        +  "type": "string"
        +}
    • Changedresolve_product1 field changed
      • addedOutput schema / properties / disclosure
        Added value: +{
        +  "type": "string"
        +}
    • Changedsearch_product1 field changed
      • addedOutput schema / properties / disclosure
        Added value: +{
        +  "type": "string"
        +}
  5. 1 tool update
    • Changedresolve_product1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Product page URL from a supported shop (e.g. 'https://www.rosebikes.de/p/sram-pc-951-9-fach-kette-159128')"New value: +"Product page URL from a supported shop (e.g. 'https://www.rosebikes.de/p/<product-name>-<id>')"
  6. 1 tool update
    • Changedresolve_product1 field changed
      • changedInput schema / properties / url / description
        Previous value: -"Product page URL from a supported shop (e.g. 'https://www.bike24.de/p2462871.html')"New value: +"Product page URL from a supported shop (e.g. 'https://www.rosebikes.de/p/sram-pc-951-9-fach-kette-159128')"
  7. 1 tool update
    • Changedresolve_product2 fields changed
      • changedOutput schema / properties / axis / description
        Previous value: -"Variant axis of the options: 'size', 'colour', 'mixed' or 'size_name'."New value: +"Variant axis of the options: 'size', 'colour', 'mixed', 'size_name' or 'name'."
      • addedOutput schema / properties / options / items / properties / product_name
        Added value: +{
        +  "description": "Verbatim product name for a flat name-axis option; use as the choice label when present.",
        +  "type": "string"
        +}
  8. 1 tool update
    • Changedresolve_product7 fields changed
      • addedOutput schema / properties / options / items / properties / in_stock / anyOf
        Added value: +[
        +  {
        +    "type": "boolean"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / options / items / properties / in_stock / description
        Added value: +"Stock at the input shop; null when unknown per variant."
      • removedOutput schema / properties / options / items / properties / in_stock / type
        Removed value: -"boolean"
      • addedOutput schema / properties / options / items / properties / price / anyOf
        Added value: +[
        +  {
        +    "type": "number"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / options / items / properties / price / description
        Added value: +"Price at the input shop; null when only a family-level page price exists."
      • removedOutput schema / properties / options / items / properties / price / type
        Removed value: -"number"
      • changedOutput schema / properties / options / items / required
        Previous value: -[
        -  "ean",
        -  "price",
        -  "in_stock"
        -]New value: +[
        +  "ean"
        +]
  9. 1 tool update
    • Changedresolve_product2 fields changed
      • changedOutput schema / properties / axis / description
        Previous value: -"Variant axis of the options: 'size', 'colour' or 'mixed'."New value: +"Variant axis of the options: 'size', 'colour', 'mixed' or 'size_name'."
      • addedOutput schema / properties / options / items / properties / donor_label
        Added value: +{
        +  "description": "Verbatim variant/product name; use as the choice label when present.",
        +  "type": "string"
        +}
  10. 1 tool update
    • Changedresolve_product3 fields changed
      • addedOutput schema / properties / axis
        Added value: +{
        +  "description": "Variant axis of the options: 'size', 'colour' or 'mixed'.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / options
        Added value: +{
        +  "description": "Variants of ONE product. Ask the user to pick one, then use that variant's EAN.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "colour": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "ean": {
        +        "description": "EAN of this exact variant — use it with get_best_price / optimize_cart.",
        +        "type": "string"
        +      },
        +      "in_stock": {
        +        "type": "boolean"
        +      },
        +      "price": {
        +        "type": "number"
        +      },
        +      "size": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      }
        +    },
        +    "required": [
        +      "ean",
        +      "price",
        +      "in_stock"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / status / description
        Previous value: -"'not_resolved' when the exact variant could not be determined."New value: +"'not_resolved' when the exact variant could not be determined; 'pick_variant' when labeled variant options are returned to choose from."
  11. 1 tool update
    • Changedresolve_product4 fields changed
      • addedOutput schema / properties / family_url
        Added value: +{
        +  "description": "Branded /go/ link to the product family page so the user can pick the variant.",
        +  "type": "string"
        +}
      • addedOutput schema / properties / message
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / resolved
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "description": "'not_resolved' when the exact variant could not be determined.",
        +  "type": "string"
        +}
  12. 7 tool updates
    • First observedfind_alternatives_for_product
    • First observedget_best_price
    • First observedget_shipping_breakdown
    • First observedget_shop_info
    • First observedoptimize_cart
    • First observedresolve_product
    • First observedsearch_product

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    Enables users to search parts and products across German and global retailers, inspect item details, and manage per-store shopping carts with accurate shipping, pickup options, and free-shipping thresholds.
    11
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables product search, price comparison, and price history analysis across 6 European marketplaces (DE, AT, GB, FR, IT, ES).
    21
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI to search Geizhals price-comparison data, including products, best prices, price history, ratings, categories, and deals.
    6
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables real-time multi-merchant price comparison, coupon stacking, delivery-speed trade-offs, stock volatility tracking, and optimal purchase routing for cross-platform commerce inventory arbitrage.
    7
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.