accueil / serveurs / Recherche & Web / space.monon/additive-atlas
space.monon/additive-atlas
serveur MCP (Model Context Protocol) · additive-atlas 0.1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que space.monon/additive-atlas est sûr ?
Au dernier audit MCP Hub, le serveur MCP « space.monon/additive-atlas » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 5 outils
- analyze_label≈ 414 tokens
Find the additives named on a label (same as HTTP POST /v1/labels/analyze). Splits the additive section into tokens and returns, per token, the substances it resolves to (SubstanceSummary: facts on their own axis), plus known interactions between the detected substances. Cutting the additive section out of the label is the caller's job; sending the whole ingredient section is allowed. Matching is exact against the alias vocabulary in scope: a token with matches: [] is unresolved, which (open world) does not distinguish "not an additive" from "an additive not known here". `axis` and `lang` must be one of the accepted pairs: JP+ja, US+en, EU+nl, EU+fr, EU+de, EU+es, EU+pl, EU+el, EU+bg. Not a safety judgement: every record is a draft and needs verification.
Paramètres, retour & exemple (3)
Paramètresaxis· string · requis
Regulatory axis the label or name belongs to: JP, EU or US.lang· string · requis
Language of the name or label text (ISO 639-1), e.g. ja, en, de, fr.text· ? · requis
The additive (or whole ingredient) section of one label: one raw string (split at 、 , , / for Japanese and , ; . : for Latin script, at bracket depth zero; whitespace is not a separator), or an array of already-split items (tokens[i] corresponds to item i).
Exemple d'appel{"name": "analyze_label", "arguments": {"axis": "texte", "lang": "texte", "text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - analyze_label_diff≈ 311 tokens
(Paid; not available through MCP.) Same input as analyze_label, but each detected substance carries the cross-axis derivation. This tool does not return that data: it returns the HTTP endpoint (POST /v1/labels/analyze/diff with the same JSON body, 0.01 USDC per request via x402 on Base) to call instead.
Paramètres, retour & exemple (3)
Paramètresaxis· string · requis
Regulatory axis the label or name belongs to: JP, EU or US.lang· string · requis
Language of the name or label text (ISO 639-1), e.g. ja, en, de, fr.text· ? · requis
The additive (or whole ingredient) section of one label: one raw string (split at 、 , , / for Japanese and , ; . : for Latin script, at bracket depth zero; whitespace is not a separator), or an array of already-split items (tokens[i] corresponds to item i).
Exemple d'appel{"name": "analyze_label_diff", "arguments": {"axis": "texte", "lang": "texte", "text": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_substance≈ 293 tokens
One substance with everything its own roster says (same as HTTP GET /v1/substances/{id}): identifiers, category, aliases, translations, the source-ledger row, groups, and — depending on the axis — Japanese use standards, EU/Codex conditions of use, mandatory labelling statements, the roster's definition text or the CFR citation. Facts from the substance's own axis only; nothing here crosses an axis (that is get_substance_diff, paid, HTTP only). Axis-specific keys are present only where the roster has that concept, and an empty list means something (use_standards: [] = no use standard; use_conditions: [] = no permitted food category). Not a safety judgement: every record is a draft and needs verification.
Paramètres, retour & exemple (1)
Paramètresid· string · requis
Substance id as returned by search_substances or analyze_label, e.g. eu:e951, jp:designated-aspartame, us:cfr-172-804.
Exemple d'appel{"name": "get_substance", "arguments": {"id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_substance_diff≈ 220 tokens
(Paid; not available through MCP.) For every axis other than the substance's own, what that axis says (with a per-cell source) kept separate from what was derived from it; when nothing can be concluded, a refusal says why and what would settle it. This tool does not return that data: it returns the HTTP endpoint (GET /v1/substances/{id}/diff, 0.01 USDC per request via x402 on Base) to call instead.
Paramètres, retour & exemple (1)
Paramètresid· string · requis
Substance id as returned by search_substances or analyze_label, e.g. eu:e951, jp:designated-aspartame, us:cfr-172-804.
Exemple d'appel{"name": "get_substance_diff", "arguments": {"id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - search_substances≈ 332 tokens
Look up substances by name on one regulatory axis (same as HTTP GET /v1/substances?name=…). The name is normalised (NFKC, whitespace removed, lower-cased) and matched **exactly** against the names and aliases the axis itself uses in that language (E numbers and official names for EU, 品目名 and label terms for JP, CFR names for US) — no partial or fuzzy matching. The official name is an alias of itself. Returns the matching substances (SubstanceSummary: facts from their own roster only) and, per row, what text matched. `axis` and `lang` must be one of the accepted pairs: JP+ja, US+en, EU+nl, EU+fr, EU+de, EU+es, EU+pl, EU+el, EU+bg. Not a safety judgement: every record is a draft and needs verification.
Paramètres, retour & exemple (3)
Paramètresaxis· string · requis
Regulatory axis the label or name belongs to: JP, EU or US.lang· string · requis
Language of the name or label text (ISO 639-1), e.g. ja, en, de, fr.name· string · requis
The name to look up, as printed on a label or roster.
Exemple d'appel{"name": "search_substances", "arguments": {"axis": "texte", "lang": "texte", "name": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».