supplemental.pl MCP
A public, read-only MCP server providing EU and Polish food law data for dietary supplements. It allows AI assistants to query the EU Register of nutrition and health claims, the EU Novel Food Catalogue, and supplemental.pl articles. It also includes tools for GIS notification steps, C.L.A.I.M.S. claim retrieval, and deterministic nutrition calculation via Nutrimetr.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.supplemental.pl/mcpWhat you can do with it
- Check health claim authorization status for a substance in the EU Register
- Look up novel food status for an ingredient in the EU Novel Food Catalogue
- Retrieve GIS notification steps for placing a food supplement on the Polish market
- Calculate nutrition declaration and candidate nutrition claims for a recipe
Source and maintenance
Protocol and capabilities
- Server
- supplemental-pl 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 8 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
8 advertised
search_articles — Search supplemental.pl knowledge articles
Full-text search of supplemental.pl knowledge articles on EU/PL food law (health claims, novel food, supplements, labelling, CJEU case law) in Polish, English or German. Returns titles, URLs, dates, summaries and language versions.
{
"type": "object",
"required": [
"query"
],
"properties": {
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
},
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "Max results (default 5)."
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Search terms, e.g. \"novel food NMN\" or \"oświadczenia zdrowotne witamina D\"."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_article — Get a supplemental.pl article
Return one supplemental.pl knowledge article by URL or slug: summary, headings, a text excerpt, legal references named in it and its PL/EN/DE versions. Pass lang to get another language version.
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"maxLength": 400,
"minLength": 3,
"description": "Article URL on supplemental.pl or its slug."
},
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}check_health_claim — Check the EU Register of health claims
Look up a nutrient/substance in the official EU Register of nutrition and health claims (European Commission data, refreshed weekly). Shows whether each claim is Authorised, Non-authorised or Revoked, its conditions of use, the EFSA question and the legal act.
{
"type": "object",
"required": [
"substance"
],
"properties": {
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
},
"limit": {
"type": "integer",
"maximum": 25,
"minimum": 1
},
"status": {
"enum": [
"all",
"authorised",
"non_authorised",
"revoked"
],
"type": "string",
"description": "Default: all."
},
"substance": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Nutrient or substance (English or Latin), e.g. \"vitamin C\", \"glucomannan\"."
},
"claim_text": {
"type": "string",
"maxLength": 300,
"description": "Optional words of the claim/function, e.g. \"immune system\"."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}novel_food_status — Check the EU Novel Food Catalogue
Look up a food or ingredient in the EU Novel Food Catalogue (European Commission data, refreshed weekly): status per part/form (Novel food, Not novel in food, Not novel in food supplements, Authorised novel food, consultation request), with links to Reg. 2015/2283 and the Union list.
{
"type": "object",
"required": [
"name"
],
"properties": {
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
},
"name": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Ingredient name (Latin, English or common name), e.g. \"Withania somnifera\", \"NMN\"."
},
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1
}
}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_claims_foodlaw — Match health claims with C.L.A.I.M.S.
Match an ingredient (and optional dose) against Reg. 432/2012 authorised claims and the SANCO/11074/2013 botanical list via C.L.A.I.M.S. (FOODLAW.ai). Botanical claims are always returned as regulatory_status "on_hold" (not authorised).
{
"type": "object",
"required": [
"substance"
],
"properties": {
"dose": {
"type": "string",
"maxLength": 40,
"description": "Optional dose, e.g. \"300 mg\"."
},
"lang": {
"enum": [
"en",
"pl"
],
"type": "string"
},
"substance": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Ingredient (Latin, English or Polish)."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_claim_foodlaw — Get a C.L.A.I.M.S. claim by ID
Fetch one claim from C.L.A.I.M.S. by its numeric ID (from search_claims_foodlaw). Botanicals are always "on_hold".
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"minimum": 1
},
"lang": {
"enum": [
"en",
"pl"
],
"type": "string"
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}gis_notification_steps — Polish GIS notification of a food supplement — steps
Step-by-step procedure for notifying a food supplement to the Polish Chief Sanitary Inspectorate (GIS, Art. 29–30 of the Food and Nutrition Safety Act), from the supplemental.pl article. A GIS notification is not a novel food authorisation.
{
"type": "object",
"properties": {
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
}
}
}{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}nutrition_calc — Calculate a nutrition declaration (Nutrimetr)
Deterministic nutrition calculation for a recipe (no AI): energy and nutrients per 100 g, micronutrients with %NRV, candidate nutrition claims (withheld if any ingredient is unresolved), allergens and QUID hints. Ingredient lines with mass or volume, e.g. "mąka pszenna 500 g", "milk 200 ml". Max 20 calculations per user per day.
{
"type": "object",
"required": [
"ingredients"
],
"properties": {
"lang": {
"enum": [
"pl",
"en",
"de"
],
"type": "string",
"description": "Response language. Default: en."
},
"ingredients": {
"type": "array",
"items": {
"type": "string",
"maxLength": 120,
"minLength": 2
},
"maxItems": 40,
"minItems": 1,
"description": "One ingredient per item, with quantity and unit (g, kg, mg, ml, l)."
},
"product_form": {
"enum": [
"solid",
"liquid"
],
"type": "string",
"description": "Default solid."
},
"product_name": {
"type": "string",
"maxLength": 120
},
"mass_loss_pct": {
"type": "number",
"maximum": 90,
"minimum": 0,
"description": "Mass loss during processing (e.g. baking), %."
}
}
}{
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 397 ms
- 95th percentile latency
- 397 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 397 ms · metadata changed · 8 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http supplemental-pl-mcp https://mcp.supplemental.pl/mcpCodex
codex mcp add supplemental-pl-mcp --url https://mcp.supplemental.pl/mcpCursor
{
"mcpServers": {
"supplemental-pl-mcp": {
"url": "https://mcp.supplemental.pl/mcp"
}
}
}Cline
{
"mcpServers": {
"supplemental-pl-mcp": {
"type": "streamableHttp",
"url": "https://mcp.supplemental.pl/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"supplemental-pl-mcp": {
"type": "http",
"url": "https://mcp.supplemental.pl/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http supplemental-pl-mcp https://mcp.supplemental.pl/mcpClaude Desktop
{
"mcpServers": {
"supplemental-pl-mcp": {
"url": "https://mcp.supplemental.pl/mcp"
}
}
}Windsurf
{
"mcpServers": {
"supplemental-pl-mcp": {
"serverUrl": "https://mcp.supplemental.pl/mcp"
}
}
}Let your agent find its tools
Find servers like supplemental.pl MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other documentation and reference servers
Do you run supplemental.pl MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.