Skip to main content
Glama

Server Details

Pay-per-call Swiss retail price intelligence (22 retailers). $0.01 USDC via x402.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 7 of 7 tools scored.

Server CoherenceA
Disambiguation4/5

Tools have distinct purposes, but 'browse_deals' (retailer-specific) and 'search_deals' (all retailers) could be confused if descriptions are not read carefully. Overall, the boundaries are clear.

Naming Consistency5/5

All tool names use consistent lowercase snake_case with a verb_noun pattern (e.g., browse_deals, compare_prices). 'nutrition_info' is noun_noun but follows the same style. No mixing of conventions.

Tool Count5/5

7 tools are well-scoped for a deals/prices/nutrition server. Each tool addresses a distinct need, and the count is neither too sparse nor too heavy.

Completeness4/5

Core functionalities (browsing, searching, comparing, historical data, nutrition) are covered. A potential gap is a tool to list retailers, but it's not essential for primary use cases.

Available Tools

7 tools
browse_dealsA
Read-onlyIdempotent
Inspect

Browse current deals at a specific retailer. Optionally filter by search query. Returns paginated results sorted by discount %. Use this to answer 'What's on sale at Migros this week?' Free — no credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryNoOptional text filter within the retailer's deals
regionNoSwiss canton for region-specific deals
retailerYesRetailer name (lowercase): migros, coop, denner, aldi, lidl, spar, volg, ottos, landi, mediamarkt, galaxus, manor, mueller, fust, douglas, interdiscount, marionnaud, importparfumerie, toppharm, redcare, amavita, zurrose
Behavior4/5

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

Annotations already indicate read-only and idempotent. The description adds that results are paginated and sorted by discount %, and that it is free (no credits). This adds useful behavioral context beyond the annotations.

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 three concise sentences. The first states the core purpose, the second adds optional filtering, and the third gives a practical example and cost note. No wasted words, front-loaded with key information.

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 browse tool with 4 parameters and no output schema, the description covers the main use case, pagination, sorting, and cost. However, it lacks clarification on when to use this over sibling 'search_deals', which could lead to confusion in tool selection.

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 75%, so baseline is 3. The description mentions 'optionally filter by search query' and 'paginated results', which relate to query and limit, but does not add significant new semantics beyond what the schema already provides for each parameter (e.g., retailer list, region enum).

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 clearly states it browses deals at a specific retailer, with optional filtering and pagination sorted by discount. It provides a concrete example 'What's on sale at Migros this week?'. However, it does not explicitly differentiate from the sibling tool 'search_deals', which may have a similar purpose.

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 via the example 'What's on sale at Migros this week?', but does not specify when to use this over alternatives like search_deals or when not to use it. No exclusions or comparisons are provided.

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

compare_pricesA
Read-onlyIdempotent
Inspect

Compare a product's price across all Swiss retailers. Requires a product name or EAN barcode. Returns current price, original price, 30-day average, 90-day minimum, and promotion status per retailer. Uses the canonical product database — only works for products matched via EAN barcode. Free — does not consume credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
barcodeNoEAN barcode (8-13 digits) for exact product match
product_nameNoProduct name to compare, e.g. 'Emmi Caffè Latte 230ml'
Behavior5/5

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

Adds details about return data (current price, original price, averages, promotion status) and states free usage, complementing readOnlyHint and idempotentHint annotations without 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?

Four concise sentences with no redundancy, front-loaded with the main purpose.

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?

Covers input requirements, limitations, output fields, and cost, compensating for the absence of an output schema.

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?

Reinforces schema descriptions by noting EAN barcode requirement and product name, providing context beyond the schema's field descriptions.

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?

Clearly states 'Compare a product's price across all Swiss retailers.' Uses specific verb (compare) and resource (product prices), and differentiates from siblings like 'price_history' and 'browse_deals'.

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?

Specifies required inputs (product name or EAN barcode) and notes EAN-only limitation, but does not explicitly mention when to avoid using this tool or suggest alternatives.

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

nutrition_infoA
Read-onlyIdempotent
Inspect

Look up nutrition data for a product: Nutriscore (A-E), Nova group (1-4), Ecoscore, and EU Big 7 macros (energy, fat, saturated fat, sugars, fiber, proteins, salt per 100g). Also returns allergens, ingredients, and labels. Search by product name or EAN barcode. Free — no credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
barcodeNoEAN barcode for exact match
product_nameNoProduct name to look up
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, destructiveHint=false. The description adds that the tool is free and searches by name or barcode, which is useful. No contradictions, but no additional behavioral traits like rate limits are disclosed.

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 three sentences, front-loaded with the main purpose and data types, then search methods, then free status. No wasted words.

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?

No output schema, but the description comprehensively lists returned data (scores, macros, allergens, etc.) and search options. It adequately covers the tool's functionality for a lookup tool, though limitations like data availability are not mentioned.

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 clear descriptions for barcode and product_name. The description reiterates the search methods but does not add significant meaning beyond the schema. 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 clearly states the tool looks up nutrition data for a product and lists specific data types (Nutriscore, Nova group, Ecoscore, EU Big 7 macros, allergens, ingredients, labels). It distinguishes from sibling tools like browse_deals, compare_prices, etc., which focus on prices and deals.

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?

The description indicates use by product name or EAN barcode, implying when to use. Sibling tools have different purposes, so context is clear. However, it does not explicitly state when not to use or mention alternatives.

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

price_historyA
Read-onlyIdempotent
Inspect

Get price history for a product over time (default 90 days). Shows how the price changed at each retailer, whether it was on promotion, and price-per-unit. Useful for spotting trends and determining if a current deal is actually good. Free — no credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoNumber of days of history to return
monthsNoMonths of history (alternative to days, capped per spec §10.5)
retailerNoFilter to a single retailer, e.g. 'migros' or 'coop'
product_nameYesProduct name, e.g. 'Barilla Spaghetti No.5'
Behavior4/5

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

Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint false. Description adds that it's free and no credits, and describes the output nature (price changes, promotions). No contradictions.

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 sentences cover purpose, details, and cost. No redundant information. Front-loaded with core action.

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?

No output schema, but description explains what is shown (price changes, promotions, per-unit price). With strong annotations and clear usage context, it is sufficiently complete for selection.

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 detailed parameter descriptions. Description mentions default 90 days (already in schema) and notes months alternative, but adds minimal extra value 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?

Description explicitly states 'Get price history for a product over time (default 90 days)' and details what is shown (price changes, promotion status, price-per-unit). It clearly differentiates from sibling tools like compare_prices and browse_deals.

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?

Description indicates use case: 'spotting trends and determining if a current deal is actually good.' It lacks explicit exclusion or alternative suggestions, but context from sibling tools makes usage clear.

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

scan_barcodeA
Read-onlyIdempotent
Inspect

Look up a product by EAN barcode (8-13 digits) and find prices across Swiss retailers. Consumes 1 barcode credit.

ParametersJSON Schema
NameRequiredDescriptionDefault
barcodeYes
Behavior4/5

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

Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds the behavioral trait 'Consumes 1 barcode credit,' which goes beyond annotations and informs the agent of a non-obvious side effect.

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 very concise (two sentences), front-loaded with the primary action, and contains no superfluous content. Every sentence contributes value.

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?

With no output schema and only one parameter, the description does not explain the return format or what data is fetched. It covers the input well but omits output details, which is a gap for a lookup 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?

The schema has 0% coverage, but the description adds the context 'EAN barcode (8-13 digits)' which aligns with the schema's pattern. However, it does not elaborate on format or meaning beyond what is already in 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 clearly states the action ('Look up a product by EAN barcode') and specifies the resource ('prices across Swiss retailers'). It also mentions a credit cost, which is additional context. This distinguishes it from sibling tools like search_products or compare_prices.

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?

The description implies usage for barcode-based lookup with specific digit range (8-13). It provides clear context on what input is required, but does not explicitly mention when not to use it or how it differs from alternatives.

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

search_dealsA
Read-onlyIdempotent
Inspect

Search current promotions (Aktionen) across all 22 Swiss retailers. Uses full-text search + trigram matching directly on the deals database. Free — does not consume search credits. Returns product name, price, original price, discount %, retailer, category, and validity dates.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYesSearch term, e.g. 'Emmi Caffè Latte' or 'Bio Milch'
regionNoSwiss canton for region-specific deals
languageNode
Behavior5/5

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

Annotations already indicate readOnlyHint=true and idempotentHint=true. The description adds behavioral details: it uses full-text search + trigram matching directly on the deals database, is free, and returns specific fields. No contradictions.

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 with no wasted words. The first sentence covers purpose and method, the second adds cost and output details.

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 no output schema, the description fully enumerates returned fields (product name, price, discount %, etc.) and mentions the scope (22 retailers, free). All critical aspects are covered.

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 50% (query and region described; limit and language have defaults but no descriptions). The description adds examples for query parameter (e.g., 'Emmi Caffè Latte'), improving clarity. It doesn't add detail for limit or language.

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 clearly states it searches current promotions across 22 Swiss retailers using full-text search and trigram matching, and lists the returned fields. It distinguishes itself from sibling tools like browse_deals or compare_prices.

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?

The description explicitly mentions it's free and does not consume search credits, which guides usage. However, it does not directly compare with sibling tools or state when to use this vs. alternatives like search_products.

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

search_productsA
Read-onlyIdempotent
Inspect

Search for product prices across Swiss retailers. Returns products with prices, retailers, and availability. Includes weekly promotions. Consumes 1 search credit.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes
regionNo
languageNode
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral context: 'Includes weekly promotions' and 'Consumes 1 search credit.' No contradictions.

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 very concise with two sentences that front-load the core purpose. Every sentence adds value, though a bit more structure (e.g., separate lines) could help readability.

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?

Given no output schema, the description partially covers return values (products, prices, retailers, availability). However, it omits details like pagination, sorting, or response size limits. Annotations fill safety gaps but behavioral completeness is moderate.

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%, and the description does not explain the meaning of the parameters (e.g., query, region, language) beyond what the schema provides. This leaves ambiguity about how to use each parameter.

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 clearly states the tool searches for product prices across Swiss retailers, specifying outputs (prices, retailers, availability, promotions). It distinguishes from siblings like browse_deals (browsing vs searching) and search_deals (possibly different scope).

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 use for searching products but does not provide explicit guidance on when to use this tool versus alternatives such as browse_deals or compare_prices. No exclusions or when-not-to-use.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources