Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Certificate changed, valid to 2027-01-25
Added "list_recipes" and "search_faq"; changed the definition of "calculate_homa", "calculate_quicki", "get_article" and 3 more (6 tools before, 8 now)
⟨4 unchanged words⟩ à partir de la glycémie à jeun (mmol/l, ou mg/dl avec glycemiaUnit) et de l'insulinémie à jeun (mUI/l), avec l'interprétationpubliéeet les seuils publiés sur Elfy.Life. Le résultat est accompagné d'un avertissement ⟨6 unchanged words⟩
{"properties":{"glycemiaMmolL":{"description":"glycémie à jeun,endans l'unité glycemiaUnit (mmol/l par défaut, malgré le nom)","type":"number"},"glycemiaUnit":{"default":"mmol/l","description":"unité de la glycémie : mmol/l (défaut) ou mg/dl","enum":["mmol/l","mg/dl"],"type":"string"},"insulinemiaMicroUiMl":{"description":"insulinémie à ⟨12 unchanged words⟩
before
—after
{"properties":{"calculatorUrl":{"format":"uri","type":"string"},"disclaimer":{"type":"string"},"index":{"enum":["HOMA","QUICKI"],"type":"string"},"inputs":{"properties":{"glycemiaConvertedFrom":{"properties":{"unit":{"enum":["mg/dl"],"type":"string"},"value":{"type":"number"}},"required":["value","unit"],"type":"object"},"glycemiaMmolL":{"type":"number"},"insulinemiaMicroUiMl":{"type":"number"}},"required":["glycemiaMmolL","insulinemiaMicroUiMl"],"type":"object"},"interpretation":{"type":"string"},"thresholds":{"description":"plages d'interprétation publiées (bornes null = non bornées)","items":{"properties":{"interpretation":{"type":"string"},"max":{"type":["number","null"]},"maxInclusive":{"type":"boolean"},"min":{"type":["number","null"]},"minInclusive":{"type":"boolean"}},"required":["min","minInclusive","max","maxInclusive","interpretation"],"type":"object"},"type":"array"},"value":{"type":"number"}},"required":["index","value","interpretation","thresholds","inputs","disclaimer","calculatorUrl"],"type":"object"}⟨6 unchanged words⟩ à partir de la glycémie à jeun (mmol/l, ou mg/dl avec glycemiaUnit) et de l'insulinémie à jeun (mUI/l), avec l'interprétationpubliéeet les seuils publiés sur Elfy.Life. Le résultat est accompagné d'un avertissement ⟨6 unchanged words⟩
{"properties":{"glycemiaMmolL":{"description":"glycémie à jeun,endans l'unité glycemiaUnit (mmol/l par défaut, malgré le nom)","type":"number"},"glycemiaUnit":{"default":"mmol/l","description":"unité de la glycémie : mmol/l (défaut) ou mg/dl","enum":["mmol/l","mg/dl"],"type":"string"},"insulinemiaMicroUiMl":{"description":"insulinémie à ⟨12 unchanged words⟩
—
⟨27 unchanged words⟩ retirés du contenu et listés à part danscallToActions.callToActions ; les articles, recettes et calculateurs liés sont listés dans relatedSlugs (à lire avec get_article ou get_recipe), et les questions fréquentes de l'article dans faq.
before
—after
{"properties":{"abstract":{"type":["string","null"]},"callToActions":{"items":{"properties":{"label":{"type":"string"},"url":{"format":"uri","type":"string"}},"required":["label","url"],"type":"object"},"type":"array"},"content":{"description":"Markdown, liens absolus","type":"string"},"dateCreated":{"format":"date-time","type":"string"},"dateModified":{"format":"date-time","type":["string","null"]},"faq":{"description":"questions fréquentes publiées sous l'article","items":{"properties":{"answer":{"description":"Markdown, liens absolus","type":"string"},"question":{"type":"string"},"url":{"description":"lien direct vers la question","format":"uri","type":"string"}},"required":["question","answer","url"],"type":"object"},"type":"array"},"relatedSlugs":{"items":{"properties":{"slug":{"type":"string"},"title":{"type":"string"},"type":{"enum":["article","recipe","calculator"],"type":"string"},"url":{"format":"uri","type":"string"}},"required":["type","slug","title","url"],"type":"object"},"type":"array"},"title":{"type":"string"},"url":{"format":"uri","type":"string"}},"required":["title","url","abstract","dateCreated","dateModified","content","callToActions","relatedSlugs","faq"],"type":"object"}Renvoie une recette publique d'Elfy.Life (ingrédients, préparation et matériel en Markdown, durées ISO 8601, difficulté sur difficultyScale, valeurs nutritionnelles par portion, catégorie, image) avec son URL canonique. Les champs non renseignés sont omis. Les offres et inscriptions de la page (bannières, newsletter recettes) sont retirées de la préparation et de l'utilisation et listées à part dans callToActions.
before
—after
{"properties":{"callToActions":{"description":"offres et inscriptions retirées de la préparation et de l'utilisation","items":{"properties":{"label":{"type":"string"},"url":{"format":"uri","type":"string"}},"required":["label","url"],"type":"object"},"type":"array"},"category":{"properties":{"name":{"type":"string"},"slug":{"type":"string"},"url":{"format":"uri","type":"string"}},"required":["name","slug","url"],"type":"object"},"cookTime":{"description":"durée ISO 8601","type":"string"},"description":{"type":"string"},"difficulty":{"minimum":1,"type":"integer"},"difficultyScale":{"type":"integer"},"equipment":{"description":"Markdown","type":"string"},"image":{"format":"uri","type":"string"},"ingredients":{"items":{"type":"string"},"type":"array"},"nutrition":{"description":"valeurs par portion","properties":{"caloriesKcal":{"type":"integer"},"fatG":{"type":"number"},"netCarbsG":{"type":"number"},"proteinG":{"type":"number"}},"type":"object"},"prepTime":{"description":"durée ISO 8601","type":"string"},"preparation":{"description":"Markdown","type":"string"},"recipeYield":{"type":"string"},"title":{"type":"string"},"totalTime":{"description":"durée ISO 8601","type":"string"},"url":{"format":"uri","type":"string"},"use":{"description":"Markdown","type":"string"}},"required":["title","url","difficulty","difficultyScale","ingredients","preparation","use","callToActions"],"type":"object"}⟨21 unchanged words⟩ événement n'est programmé, la liste est videet; un messagel'indique.l'indique et newsUrl donne la page des actualités où les prochains sont annoncés.
before
—after
{"properties":{"events":{"items":{"properties":{"address":{"type":"string"},"articleTitle":{"type":"string"},"articleUrl":{"format":"uri","type":"string"},"dateEnd":{"format":"date-time","type":["string","null"]},"dateStart":{"format":"date-time","type":"string"},"icsUrl":{"format":"uri","type":"string"},"name":{"type":"string"},"summary":{"type":"string"}},"required":["name","summary","address","dateStart","dateEnd","articleTitle","articleUrl","icsUrl"],"type":"object"},"type":"array"},"message":{"type":"string"},"newsUrl":{"description":"actualités, où sont annoncés les prochains événements","format":"uri","type":"string"}},"required":["events"],"type":"object"}⟨11 unchanged words⟩ nutrition cétogène). Renvoie le titre, un extrait, l'URL etl'URLla date de mise à jour de chaque page;, le nombre total de résultats et nextOffset pour la page suivante (null s'il n'y en a plus). Le contenu complet est disponible via get_article et get_recipe.
⟨11 unchanged words⟩ "minimum":1,"type":"integer"},"offset":{"default":0,"description":"nombre de résultats à sauter, pour la page suivante (nextOffset)","minimum":0,"type":"integer"},"query":{"description":"mots-clés de recherche, en français","maxLength":200,"minLength":2,"type":"string"},"type":{"default":"all","description":"type de contenu : all (défaut), article ou recipe","enum":["all","article","recipe"],"type":"string"}},"required":[ ⟨3 unchanged words⟩
Lister les recettes Elfy.Life — Liste les recettes publiques d'Elfy.Life (cétogènes, pauvres en glucides), par titre, avec des filtres optionnels : catégorie (slug), durée totale maximale en minutes, glucides nets maximaux par portion (les recettes sans valeur nutritionnelle sont alors exclues). Renvoie total et nextOffset pour la page suivante (null s'il n'y en a plus). Le détail d'une recette est disponible via get_recipe.
Rechercher dans les FAQ Elfy.Life — Recherche dans les questions fréquentes d'Elfy.Life (FAQ générale et FAQ des articles) : réponses courtes validées par l'équipe éditoriale, en Markdown, avec le lien direct vers chaque question et la page source. À privilégier pour une question précise ; pour approfondir, lire l'article source avec get_article.
Changed the definition of "get_article" and "list_upcoming_events"
Renvoie le contenu complet (Markdown, liens absolus) d'un article public d'Elfy.Life, avec son URL canonique. Les boutons d'appel à l'action de la page (newsletter, entretien, calculateur…) sont retirés du contenu et listés à part dans callToActions.
⟨11 unchanged words⟩ l'article de présentation et le fichier calendrier .ics. Si aucun événement n'est programmé, la liste est vide et un message l'indique.
Certificate recorded, valid to 2026-11-23
Authorization not required
Unknown → Live
First tool surface recorded: 6 tools (server version 1.0.0)
https://elfy.life/mcp (mcp_streamable_http) — from mcp_registry, with the record
Showing the latest 8 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
after
{"properties":{"calculatorUrl":{"format":"uri","type":"string"},"disclaimer":{"type":"string"},"index":{"enum":["HOMA","QUICKI"],"type":"string"},"inputs":{"properties":{"glycemiaConvertedFrom":{"properties":{"unit":{"enum":["mg/dl"],"type":"string"},"value":{"type":"number"}},"required":["value","unit"],"type":"object"},"glycemiaMmolL":{"type":"number"},"insulinemiaMicroUiMl":{"type":"number"}},"required":["glycemiaMmolL","insulinemiaMicroUiMl"],"type":"object"},"interpretation":{"type":"string"},"thresholds":{"description":"plages d'interprétation publiées (bornes null = non bornées)","items":{"properties":{"interpretation":{"type":"string"},"max":{"type":["number","null"]},"maxInclusive":{"type":"boolean"},"min":{"type":["number","null"]},"minInclusive":{"type":"boolean"}},"required":["min","minInclusive","max","maxInclusive","interpretation"],"type":"object"},"type":"array"},"value":{"type":"number"}},"required":["index","value","interpretation","thresholds","inputs","disclaimer","calculatorUrl"],"type":"object"}before
—after
{"properties":{"message":{"type":"string"},"nextOffset":{"minimum":0,"type":["integer","null"]},"results":{"items":{"properties":{"dateModified":{"format":"date-time","type":"string"},"excerpt":{"type":"string"},"slug":{"type":"string"},"title":{"type":"string"},"type":{"enum":["article","recipe"],"type":"string"},"url":{"format":"uri","type":"string"}},"required":["type","title","slug","excerpt","url"],"type":"object"},"type":"array"},"total":{"minimum":0,"type":"integer"}},"required":["results","total","nextOffset"],"type":"object"}