Skip to main content
Glama

Bestshopping Cashback — IT, DE, FR

Server Details

Find merchants in Italy, Germany and France. Prepare cashback links for the user to click.

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
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 3 tools

Disambiguation4/5

search_merchants (catalog discovery by name/domain/ID) and get_merchant (detailed info for a known merchant) share the merchant domain but have distinguishable intent, and prepare_cashback_link is clearly a distinct action. The boundary between searching and fetching merchant detail is explicit enough in the descriptions that misselection is unlikely.

Naming Consistency5/5

All three tools use a consistent snake_case verb_noun pattern: get_merchant, search_merchants, prepare_cashback_link. The verb choices (get/search/prepare) map predictably onto read vs. discover vs. construct semantics.

Tool Count4/5

Three tools is deliberately minimal but each maps to a real step in the discover-info-generate-link workflow, so nothing feels redundant. It sits on the lean side, though the tightly scoped read-only purpose justifies it.

Completeness3/5

The surface covers catalog search, merchant detail and link generation, but there is no way to check whether a prepared link's cashback was actually tracked or to browse categories/gift cards beyond flat search. Agents can work around these gaps by pointing users to the Bestshopping site, but the lifecycle has a visible tail missing.

Available Tools

3 tools
get_merchantA
Read-onlyIdempotent
Inspect

Read current public merchant information, cashback conditions and browser tracking rules. Exact cashback rates must be checked on the returned Bestshopping page; this tool does not provide a personalized quote or access an account.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketNoBestshopping ACCOUNT market: it (Italy), de (Germany), fr (France). Ask the user if missing or ambiguous; never infer it from language or reuse IDs across markets.it
merchant_idYesMerchant ID returned by search_merchants. Never guess or reuse IDs from another market.

Output Schema

ParametersJSON Schema
NameRequiredDescription
merchantYes
checked_atYes
conditionsYes
descriptionYes
rate_noticeYes
cashback_rateYes
tracking_rulesYes

TDQS

A4/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 behavioral context by stating the data is public-only (no account access) and that rates are not a personalized quote. It does not describe pagination or rate limits, but for a read-only lookup that is a minor omission.

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, zero redundancy: the scope of returned data leads, and the caveats about rates and account access follow. Every clause carries information the agent would not otherwise have.

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, return-value details need no explanation, and the annotations cover the safety profile; the description fills the remaining gaps (public-only data, no personalized quote). Only the explicit search_merchants → get_merchant sequencing is missing, a small residual gap.

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% and the schema itself carries strong warnings ('never guess or reuse IDs from another market', market default 'it'), so the description need not repeat them. The description adds no parameter-level meaning beyond the schema, which is the baseline 3 case.

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 verb ('Read') and resource ('merchant information'), and enumerates the payload (cashback conditions, browser tracking rules), which lets an agent distinguish it from search_merchants and prepare_cashback_link. It stops short of explicitly labeling it as the detail-lookup step after a search, so sibling differentiation is implied rather than stated.

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 sets clear boundaries: exact rates must be read off the returned page, and the tool gives neither a personalized quote nor account access — useful when-not signals against expect-a-quote or account-scoped siblings. However it never explicitly says 'call this after search_merchants to expand a merchant_id', leaving the workflow linkage to the schema description.

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

search_merchantsA
Read-onlyIdempotent
Inspect

Search the current Bestshopping merchant catalog for the selected account market by name, domain or ID. Distinguishes online cashback, gift cards and top-ups. Does not activate tracking or visit merchants.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYesMerchant name, website domain or ID. Empty string lists the catalog.
marketNoBestshopping ACCOUNT market: it (Italy), de (Germany), fr (France). Ask the user if missing or ambiguous; never infer it from language or reuse IDs across markets.it
offsetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
queryYes
totalYes
marketYes
offsetYes
merchantsYes
checked_atYes
next_offsetYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, closed-world and non-destructive, so safety is covered. The description adds genuine behavioral context beyond them: no tracking activation and no merchant visits are side-effect disclosures an agent would otherwise have to guess.

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?

Three short sentences, no filler, with the core action and scope front-loaded and the negative side-effect constraint placed last as a clarifier.

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-value explanation is unnecessary, and the market parameter carries rich in-schema guidance. The only real omission is pagination behavior for limit/offset, which leaves a small gap for a search tool.

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 50%: query and market are well documented in the schema, and the description reinforces them ('by name, domain or ID', 'selected account market'). The limit and offset pagination parameters are documented nowhere, and the description does not compensate for that gap.

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 gives a precise verb+resource ('Search the current Bestshopping merchant catalog') plus the searchable keys (name, domain, ID) and entity subtypes (online cashback, gift cards, top-ups). The closing clause functionally separates it from prepare_cashback_link, though it does not name siblings explicitly.

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 establishes the operating context ('selected account market') and a clear negative condition ('does not activate tracking or visit merchants'), which steers agents away from the link-preparation flow. It stops short of naming the alternative tool or stating prerequisites explicitly.

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. 3 tool updates
    • Changedget_merchant3 fields changed
      • changedInput schema / properties / market / description
        Previous value: -"Bestshopping market. Only Italy is enabled."New value: +"Bestshopping ACCOUNT market: it (Italy), de (Germany), fr (France). Ask the user if missing or ambiguous; never infer it from language or reuse IDs across markets."
      • removedOutput schema / properties / merchant / properties / market / const
        Removed value: -"it"
      • addedOutput schema / properties / merchant / properties / market / enum
        Added value: +[
        +  "it"
        +]
    • Changedprepare_cashback_link4 fields changed
      • changedInput schema / properties / market / description
        Previous value: -"Bestshopping market. Only Italy is enabled."New value: +"Bestshopping ACCOUNT market: it (Italy), de (Germany), fr (France). Ask the user if missing or ambiguous; never infer it from language or reuse IDs across markets."
      • changedInput schema / properties / nickname / description
        Previous value: -"Exact Bestshopping Italy nickname explicitly supplied by the user. Ask if missing. Never request a password."New value: +"Exact nickname for the selected Bestshopping market explicitly supplied by the user. Ask if missing. Never request a password."
      • removedOutput schema / properties / merchant / properties / market / const
        Removed value: -"it"
      • addedOutput schema / properties / merchant / properties / market / enum
        Added value: +[
        +  "it"
        +]
    • Changedsearch_merchants5 fields changed
      • changedInput schema / properties / market / description
        Previous value: -"Bestshopping market. Only Italy is enabled."New value: +"Bestshopping ACCOUNT market: it (Italy), de (Germany), fr (France). Ask the user if missing or ambiguous; never infer it from language or reuse IDs across markets."
      • removedOutput schema / properties / market / const
        Removed value: -"it"
      • addedOutput schema / properties / market / enum
        Added value: +[
        +  "it"
        +]
      • removedOutput schema / properties / merchants / items / properties / market / const
        Removed value: -"it"
      • addedOutput schema / properties / merchants / items / properties / market / enum
        Added value: +[
        +  "it"
        +]
  2. 3 tool updates
    • First observedget_merchant
    • First observedprepare_cashback_link
    • First observedsearch_merchants

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to search products and generate affiliate links across European and global affiliate networks, automating product discovery and link creation for monetization.
    5
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI models to find the best online deals by browsing and interacting with multiple shopping platforms like Amazon and eBay across various regions. It uses Playwright to automate searches and retrieve product information from compatible e-commerce and deal-tracking websites.
    30 npm
    3
    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).
    19
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Agentic commerce infrastructure for AI agents. MCP-native product discovery, contextual ad matching, and purchase facilitation with European privacy compliance (nDSG/GDPR).
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources