Skip to main content
Glama

Palmarès des laboratoires, des familles, des groupes, des molécules ou d'une liste de noms

palmares
Read-onlyIdempotent

Le classement des laboratoires, des familles (les rayons tels que le logiciel de la pharmacie les écrit), des groupes (parapharmacie, médicaments remboursés ou non, LPP, laits infantiles), des molécules (substances actives, avec la part des génériques dans chaque ligne), des types de soin (pansements, sets, contention, glycémie…), des rayons et sous-rayons SyderaAI (Solaire, Compléments alimentaires › Sommeil, Cheveux › Anti-Poux…), ou d'une LISTE de noms que vous donnez (par=liste, produit=« gallia, guigoz, novalac, picot » : une ligne par nom, tout comparé en UN appel, jamais un appel par nom) sur une période (les N derniers mois pleins, ou du/au) : unités, chiffre d'affaires TTC et HT, marge en euros et en pourcentage, références vendues, le stock de chaque ligne (références, unités, valeur au PAMP, jours de stock) et le total. Trié par chiffre d'affaires, marge, taux de marge, unités, stock ou progression ; comparer=an_dernier ou periode_precedente ajoute la période comparée, l'évolution des ventes et celle du prix d'achat (evolution_pamp_pct : quels laboratoires ont augmenté leurs prix) ; produit = ne compter que les produits dont le nom contient un mot. Au plus 50 lignes. À utiliser pour savoir quels laboratoires, quels rayons ou quelle part (parapharmacie, médicaments) pèsent le plus, combien de stock ils immobilisent et en combien de jours il tourne, lesquels progressent ou ont augmenté leurs prix, ou préparer un rendez-vous avec un laboratoire. Pas pour une question médicale, une posologie, un dossier patient ni un prix du marché. Ranks the pharmacy's suppliers, product families or product groups by revenue, margin or growth.

Input Schema

NameRequiredDescriptionDefault
qNoOptionnel : mot du nom du laboratoire, de la famille ou du groupe (pas des produits : voir produit).
auNoDernier mois compris, AAAA-MM.
duNoPremier mois compris, AAAA-MM. Avec au, remplace mois (« cet été » : du 2026-06 au 2026-08).
parYesliste : une ligne par nom donné dans produit (au moins deux), pour comparer plusieurs gammes ou fabricants en un appel.
triNoca (défaut), marge en euros, marge_pct (taux de marge), unites, stock (valeur du stock) ; avec comparer : progression_eur, progression_pct, ou progression_pamp (hausse du prix d'achat).ca
moisNoLes N derniers mois pleins (ignoré avec du/au).
ordreNocroissant : du plus petit au plus grand (les plus faibles marges, les plus fortes baisses).decroissant
rayonNoRayon SyderaAI (Solaire, Compléments alimentaires, Cheveux, Contention, Homéopathie…), nom exact (lister quoi=rayons) ; plusieurs au choix, séparés par des virgules. Pour « mon rayon solaire », « mes compléments ».
ca_minNoÉcarter de la liste les lignes sous ce chiffre d'affaires TTC (dans la période ou la période comparée), utile avec un tri par taux ou par progression ; le total porte toujours sur tout.
groupeNoLe statut des produits, classement SyderaAI (pas une famille du logiciel) : parapharmacie = ni médicament, ni LPP, ni lait infantile ; medicaments_conseil = sans ordonnance, non remboursés ; medicaments_ordonnance_non_rembourses = sur ordonnance, non remboursés ; medicaments_non_rembourses = les deux ; a_verifier = les produits rangés dans aucun groupe (la ligne « (à vérifier) »).
limiteNo
exclureNoÉcarter les produits dont le nom contient l'un de ces mots, séparés par des virgules (« rivastigmine, firmagon ») : pour retirer ce qu'un filtre de mots attrape à tort.
familleNoOptionnel : restreindre aux produits de cette famille (plusieurs au choix, séparées par des virgules).
produitNoNe compter que les produits dont le nom ou le laboratoire contient ces mots (abréviations du logiciel comprises), comme q dans top_ventes ; plusieurs possibilités séparées par des virgules (« solaire, spf »). Pour une molécule, essayez d'abord le paramètre molecule (base publique des médicaments) ; si la réponse dit que la composition n'est pas chargée, ou pour une classe (vitamine D, magnésium, probiotiques…), donnez vous-même la molécule et les marques que vous connaissez (vitamine D : « vitamine d, cholecalciferol, uvedose, zymad, adrigyl »), puis vérifiez les produits retenus et reformulez si l'un n'en est pas.
comparerNoAjoute, par ligne et au total, la période comparée (champs *_avant) et evolution_ca_pct : an_dernier = les mêmes mois un an avant ; periode_precedente = autant de mois juste avant.
moleculeNoSubstance active, d'après la base publique des médicaments (« paracetamol », « amoxicilline ») ; plusieurs séparées par des virgules. Retient tous les médicaments qui la contiennent, associations comprises ; la parapharmacie n'a pas de molécule. Si la réponse dit que la composition n'est pas chargée, donnez les marques dans q ou produit.
type_soinNoLe type de matériel de soin : gamme_blanche (pansements, compresses, bandes, sparadraps et sets), ou un type précis (sets_pansement, contention, glycemie…).
generiquesNoseules : les génériques ; exclure : princeps et médicaments hors groupe générique.inclure
sous_rayonNoSous-rayon SyderaAI (Protection solaire, Sommeil, Anti-Poux, Anti-moustiques & insectes…), nom exact (lister quoi=sous_rayons) ; plusieurs au choix. Pour « mes anti-poux », « mes compléments sommeil ».
laboratoireNoOptionnel : restreindre aux produits de ce laboratoire.
associationsNoexclure : la substance seule (paracétamol sans codéine) ; seules : les associations.inclure

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / groupe / description
      Previous value: -"Le statut des produits, classement SyderaAI (pas une famille du logiciel) : parapharmacie = ni médicament, ni LPP, ni lait infantile ; medicaments_conseil = sans ordonnance, non remboursés ; medicaments_ordonnance_non_rembourses = sur ordonnance, non remboursés ; medicaments_non_rembourses = les deux."New value: +"Le statut des produits, classement SyderaAI (pas une famille du logiciel) : parapharmacie = ni médicament, ni LPP, ni lait infantile ; medicaments_conseil = sans ordonnance, non remboursés ; medicaments_ordonnance_non_rembourses = sur ordonnance, non remboursés ; medicaments_non_rembourses = les deux ; a_verifier = les produits rangés dans aucun groupe (la ligne « (à vérifier) »)."
    • changedInput schema / properties / groupe / enum
      Previous value: -[
      -  "parapharmacie",
      -  "medicaments",
      -  "medicaments_rembourses",
      -  "medicaments_non_rembourses",
      -  "medicaments_conseil",
      -  "medicaments_ordonnance_non_rembourses",
      -  "medicaments_prix_fixe",
      -  "lpp",
      -  "laits_infantiles"
      -]New value: +[
      +  "parapharmacie",
      +  "medicaments",
      +  "medicaments_rembourses",
      +  "medicaments_non_rembourses",
      +  "medicaments_conseil",
      +  "medicaments_ordonnance_non_rembourses",
      +  "medicaments_prix_fixe",
      +  "lpp",
      +  "laits_infantiles",
      +  "a_verifier"
      +]
  2. Changed2 schema fields changed
    • changedInput schema / properties / groupe / description
      Previous value: -"Le statut des produits, classement SyderaAI (pas une famille du logiciel) : parapharmacie = ni médicament, ni LPP, ni lait infantile."New value: +"Le statut des produits, classement SyderaAI (pas une famille du logiciel) : parapharmacie = ni médicament, ni LPP, ni lait infantile ; medicaments_conseil = sans ordonnance, non remboursés ; medicaments_ordonnance_non_rembourses = sur ordonnance, non remboursés ; medicaments_non_rembourses = les deux."
    • changedInput schema / properties / groupe / enum
      Previous value: -[
      -  "parapharmacie",
      -  "medicaments",
      -  "medicaments_rembourses",
      -  "medicaments_non_rembourses",
      -  "medicaments_prix_fixe",
      -  "lpp",
      -  "laits_infantiles"
      -]New value: +[
      +  "parapharmacie",
      +  "medicaments",
      +  "medicaments_rembourses",
      +  "medicaments_non_rembourses",
      +  "medicaments_conseil",
      +  "medicaments_ordonnance_non_rembourses",
      +  "medicaments_prix_fixe",
      +  "lpp",
      +  "laits_infantiles"
      +]
  3. First observed

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safe read profile, yet the description adds real behavior: the 50-row cap, the rule that a name list is one row per name in a single call and never one call per name, the extra fields added by comparer (*_avant, evolution_ca_pct, evolution_pamp_pct), and that ca_min filters rows while the total still covers everything. Missing only finer detail such as ordering of the returned rows or empty-result behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with the grouping modes, which is the right priority, but the body is a single run-on sentence chained with semicolons that is hard to parse, and the final English sentence duplicates the French scope statement. Content mostly earns its place; the packaging does not.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 21-parameter, output-schema-less tool, the description compensates well by enumerating the output metrics (unités, CA TTC/HT, marge €/%, stock, PAMP, jours de stock, total) and the comparison fields. It does not describe how rows/keys are labeled when grouping by several dimensions at once, which is the main remaining gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 95%, so nearly every parameter already carries its own explanation; the prose largely restates par, produit, comparer and tri. Baseline 3 applies, with only marginal cross-parameter guidance added (liste needs multiple names, filter-then-verify for molecule classes).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ('Le classement des laboratoires, des familles... des molécules...') and enumerates every grouping mode it covers, so an agent can immediately differentiate it from top_ventes or gamme_laboratoire. The scope (period, metrics, ranking) is stated concretely rather than tautologically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the intended questions ('quels laboratoires, quels rayons ou quelle part... pèsent le plus', 'préparer un rendez-vous avec un laboratoire') and explicit exclusions ('Pas pour une question médicale, une posologie, un dossier patient ni un prix du marché'). It also routes within itself for the molecule case (try molecule first, then fall back to produit).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources