Supplementenscanner
Server Details
Cheapest supplements by normalized price per kg, serving or capsule, across Dutch stores.
- Status
- Healthy
- Uptime
- 99.7% over 23 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool targets a clearly distinct purpose: discovery (list_categories), category-based price comparison (find_cheapest), catalog text search (search_products), and single-item detail (get_product). Descriptions explicitly disambiguate the one potential overlap, telling users to prefer find_cheapest over search_products when the category is known.
All four tools follow a consistent verb_noun snake_case pattern (find_cheapest, get_product, list_categories, search_products). No deviations or mixed conventions.
Four tools is a tight, focused set that covers discovery, search, comparison, and detail for a read-only scanner. It sits at the lower end of the well-scoped 3-15 range, so it is reasonable but somewhat lean.
The read-only comparison lifecycle is well covered: category discovery, cheapest-per-unit lookup, typo-tolerant search, and full product detail with price history and bulk tiers. Minor gaps exist (e.g. listing all products in a category or browsing price history across items), but core workflows are fully served.
Available Tools
4 toolsfind_cheapestFind cheapest productsRead-onlyIdempotentInspect
Find the cheapest supplements by normalized price-per-unit within a category (and all its subcategories). This is the primary tool for "what is the cheapest X?" questions. Use list_categories first to pick a valid category_slug.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of products to return (1-50). | |
| market | No | Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected. | |
| category_slug | Yes | The category to search within, e.g. "whey-protein" or "creatine". Products in every subcategory are included, so a parent slug like "protein-powder" works too. Get valid slugs from list_categories. | |
| in_stock_only | No | When true, only return products currently in stock. |
get_productGet product detailsRead-onlyIdempotentInspect
Get full detail for one product by its id: price, normalized unit price, size, bulk/staffel tiers, buy link, and recent price history. Use the id returned by find_cheapest or search_products.
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected. | |
| product_id | Yes | The numeric product id, as returned in the `id` field by find_cheapest or search_products. |
list_categoriesList categoriesRead-onlyIdempotentInspect
List the supplement categories that currently hold priced products, each with a live product count, store count, lowest normalized unit price, and its comparison basis (per_kg / per_serving / per_capsule). Use this to discover a valid category_slug for find_cheapest.
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected. |
search_productsSearch productsRead-onlyIdempotentInspect
Search the whole supplement catalog by product name or brand. Typo-tolerant (e.g. "kreatine", "theanin" still match). Results are ordered by relevance, then cheapest normalized price-per-unit. Use find_cheapest instead when you already know the category.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of products to return (1-50). | |
| query | Yes | The product name or brand to search for, e.g. "whey isolaat" or "magnesium bisglycinaat". | |
| market | No | Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected. | |
| category_slug | No | Optional: restrict results to this category and all of its subcategories, e.g. "protein-powder". Must be a slug from list_categories; an unknown slug is rejected. | |
| in_stock_only | No | When true, only return products currently in stock. | |
| max_unit_price_cents | No | Optional: only return products whose normalized unit price is at or below this many cents. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- Changed
find_cheapest1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected."
- Changed
get_product1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected."
- Changed
list_categories1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected."
- Changed
search_products1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to nl, the market this endpoint answers for. Any other value is rejected."
4 tool updates
- Changed
find_cheapest1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."
- Changed
get_product1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."
- Changed
list_categories1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."
- Changed
search_products1 field changed- changed
Input schema / properties / market / descriptionPrevious value: -"Optional country market to query: nl. Defaults to the market of the requested domain. Any other value is rejected."New value: +"Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected."
4 tool updates
- First observed
find_cheapest - First observed
get_product - First observed
list_categories - First observed
search_products
Related MCP Connectors
Supplement prices, price history, SupplementScore, verified discount codes, UCP catalog tools
Live Dutch supermarket prices and promotions (Albert Heijn, Jumbo, Lidl, Aldi and more) for AI.
Evidence-ranked supplement data: search, compare, price history, goal recs. No API key.
Search sports nutrition in Russia, compare live prices and create Capital Health cart links.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for Dutch supermarkets and drugstores, enabling product search, price comparison, promotions, shopping lists, meal planning, price alerts, and budget tracking via natural language.MIT
- AlicenseNot gradedqualityDmaintenanceEnables users to compare prices, track budgets, and find promotional deals across major Dutch supermarkets and drugstores. It supports automated shopping list optimization, meal planning, and price history alerts for stores like Albert Heijn, Jumbo, and Kruidvat.17MIT
- AlicenseAqualityCmaintenanceEnables querying live offers and prices from 10 Dutch supermarket chains through a single normalised JSON API. Exposes 26 curated tools, including product search and category lookups, over stdio or authenticated Streamable HTTP.20MIT
- AlicenseAqualityCmaintenanceA Model Context Protocol server for real-time Swiss grocery shopping that searches and compares products across 8 major Swiss retailers (Migros, Coop, Aldi, Denner, Lidl, Farmy, Volgshop, Otto’s), normalizes per-unit prices, surfaces promotions, computes optimal multi-store shopping plans, and works with any MCP-compatible client without API keys or accounts.2771 npm34AGPL 3.0
Glama MCP Gateway
Add one secure layer between your agents and this server.