Supplementenscanner

Cheapest supplements by normalized price per kg, serving or capsule, across Dutch stores.

Should I use this

Quality & Safety

A
Description quality
95%
Schema completeness
97%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~854Tokens (tool definitions)
~1.7 KBTypical response size
Moderate attention impact (0.67% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "scanner": {
      "url": "https://mcp.supplementenscanner.nl"
    }
  }
}

Remote endpoints

https://mcp.supplementenscanner.nlstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢find_cheapest(category_slug, limit, in_stock_only, market)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "category_slug": {
      "description": "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.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of products to return (1-50).",
      "default": 10,
      "minimum": 1,
      "maximum": 50,
      "type": "integer"
    },
    "in_stock_only": {
      "description": "When true, only return products currently in stock.",
      "default": false,
      "type": "boolean"
    },
    "market": {
      "description": "Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected.",
      "type": "string"
    }
  },
  "required": [
    "category_slug"
  ]
}
🟢search_products(query, limit, in_stock_only, category_slug, max_unit_price_cents, ...)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "The product name or brand to search for, e.g. \"whey isolaat\" or \"magnesium bisglycinaat\".",
      "minLength": 2,
      "type": "string"
    },
    "limit": {
      "description": "Maximum number of products to return (1-50).",
      "default": 20,
      "minimum": 1,
      "maximum": 50,
      "type": "integer"
    },
    "in_stock_only": {
      "description": "When true, only return products currently in stock.",
      "default": false,
      "type": "boolean"
    },
    "category_slug": {
      "description": "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.",
      "type": "string"
    },
    "max_unit_price_cents": {
      "description": "Optional: only return products whose normalized unit price is at or below this many cents.",
      "minimum": 0,
      "type": "integer"
    },
    "market": {
      "description": "Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected.",
      "type": "string"
    }
  },
  "required": [
    "query"
  ]
}
🟢list_categories(market)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "market": {
      "description": "Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected.",
      "type": "string"
    }
  }
}
🟢get_product(product_id, market)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "product_id": {
      "description": "The numeric product id, as returned in the `id` field by find_cheapest or search_products.",
      "type": "integer"
    },
    "market": {
      "description": "Optional country market to query: nl, be. Defaults to the market of the requested domain. Any other value is rejected.",
      "type": "string"
    }
  },
  "required": [
    "product_id"
  ]
}

Recommended Prompts

search_research
Search for information about [topic] using Supplementenscanner
Expected tools: find_cheapest
find_specific
Find [specific item] using Supplementenscanner
Expected tools: find_cheapest
retrieve_data
Get details about [item] from Supplementenscanner
Expected tools: get_product
fetch_info
Fetch [information type] using Supplementenscanner
Expected tools: get_product
list_items
List all [items] available in Supplementenscanner
Expected tools: list_categories

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools