Quick start
# which paracetamol products are free of gluten?
curl "https://allergen-context.tradebrite.nl/v1/allergy?werkzame_stof=paracetamol&profiel=gluten"
# does this specific medicine contain lactose?
curl "https://allergen-context.tradebrite.nl/v1/allergy?medicijn=tetmodis&profiel=lactose"
# was this product recalled?
curl "https://allergen-context.tradebrite.nl/v1/allergy?barcode=8718452375684"
# every recall caused by mustard
curl "https://allergen-context.tradebrite.nl/v1/allergy?terugroep_allergeen=mosterd"
Parameter names are Dutch because the data is Dutch and the field names mirror the source. werkzame_stof is the active substance, medicijn a brand name, profiel the allergy profile, terugroep_allergeen a recall allergen.
Four verdicts, and the difference is the point
| Verdict | Meaning |
|---|---|
NIET_GESCHIKT | Not suitable. The allergen is demonstrably among the listed excipients. |
ONZEKER | Uncertain. The source names an excipient without stating its origin. "Starch" without the grain — maize is harmless, wheat contains gluten. "Gelatin" without the animal — bovine, porcine or fish. This affects thousands of medicines. Never present it as safe. |
GEEN_AANWIJZING | No indication. The allergen does not appear among the listed excipients. Says nothing about the active substance and nothing about cross-contamination. |
ONBEKEND | Unknown. The source lists no excipients at all for this medicine, which happens for 1,362 of the 19,421. Not evidence of absence. |
Every verdict ships with veroorzaakt_door: the literal excipient name that triggered it, so a pharmacist can check it and so we remain refutable.
Why a separate layer is needed
False positives. Searching the raw source for "melk" (milk) returns 195 medicines. Four contain milk protein; the other 191 contain lactic acid, a common acid with no relation to dairy. A language model handed the raw data makes exactly this mistake.
Missed matches. Lactose appears under four spellings in the source, soy under twelve, egg under three. Searching one spelling misses the rest.
Silent gaps. For 2,468 medicines the grain behind the starch is not stated, and for 2,346 the origin of the gelatin is not. That is a shortcoming of the source, not a licence to guess — but it must stay visible instead of disappearing into "free from".
Over-warning is a failure too. An earlier version flagged maize starch as possible gluten because the pattern was too loose: 1,129 medicines were wrongly warned about. Anyone who reads "maybe" everywhere starts ignoring it.
Connecting as an MCP server
One tool: get_allergy_context. Streamable HTTP, no authentication.
{
"mcpServers": {
"allergen-context": {
"type": "http",
"url": "https://allergen-context.tradebrite.nl/mcp"
}
}
}
Deliberately one tool rather than ten. An agent has to read the entire tool list before it can ask anything; more tools in one server is not richer, it is more expensive and more confusing.
Sources and licence
| Source | Content | Licence |
|---|---|---|
| CBG Medicines Information Bank | 19,421 licensed medicines with excipients | CC0 |
| NVWA safety warnings | 583 notices since 2023, 323 with a barcode | CC0 |
Both sources are published under the Creative Commons zero declaration; attribution is not required but we give it anyway. Source code is MIT. Answers are free to use.
Data retrieved on 19 August 2026. Rate limit: 10 requests per 10 seconds and 60 per minute per IP address.
Not medical advice
This service reflects what the Dutch medicines authority and food authority publish, and where those sources are silent. It is not medical advice, not a diagnosis and not a replacement for the package leaflet or a pharmacist. Do not build an application on it that advises users to change or stop medication. Tradebrite BV accepts no liability for inaccuracies in the source data or for decisions taken on the basis of it.
Terms and liability
This service is provided free of charge and without any warranty, "as is". Tradebrite BV gives no guarantee as to the accuracy, completeness or timeliness of the data. The data is an automated transformation of public government sources; errors in those sources carry through, and manufacturers change formulations without us seeing it immediately.
To the extent permitted by law, Tradebrite BV excludes all liability for damage arising from the use of this service or from its unavailability, including consequential damage and damage to health. Anyone processing this data in their own application is responsible for how it is presented, and in particular for preserving the distinction between the four verdicts.
The leaflet inside the package always takes precedence. In case of doubt about a medicine, the pharmacist is the right source; they have access to data that is not public.
Found an error? info@tradebrite.nl — we correct it and record the correction date.