Skip to main content
Glama
rundata-re

rundata · La Réunion 974 en direct

rundata.re · La Réunion 974 en direct

Sorties, randos, météo mesurée, routes : les données publiques de La Réunion en direct, datées et sourcées.

Sur rundata.re et dans votre assistant IA (ChatGPT, Claude, Le Chat). Gratuit, sans compte.

Ce serveur MCP donne à votre assistant IA (Claude, ChatGPT, Le Chat…) les données publiques de La Réunion en ce moment : météo mesurée aux stations, vigilance, mer, volcan, électricité, qualité de l'air, services publics, horaires de bus, terrain et risques. Il répond à des questions comme « quel temps fait-il à Saint-Pierre ? », « le prochain bus à la gare de Saint-Pierre ? » ou « le volcan est en éruption ? » avec des valeurs datées et sourcées. Une mesure n'est jamais mélangée à une prévision : pour « il va pleuvoir demain ? », un outil à part donne la prévision d'un modèle, toujours étiquetée comme telle.

English: an MCP server giving AI assistants the public data of Réunion Island right now (measured weather, warnings, sea, volcano, electricity, air quality, public offices, bus timetables, land and hazards), dated and sourced, with forecasts kept apart and clearly labelled. See English summary.

Outils

Outil

Pour quelles questions

Ce qu'il renvoie

meteo_actuelle(lieu)

« il fait chaud à Saint-Gilles ? », « il pleut à Mafate ? », « il a plu quand à Saint-Joseph ? », « du vent à Saint-Pierre ? »

Mesures de la station la plus représentative : température, pluie (6 min et 1 h), humidité, vent, rafales, pression, temps présent. Inclut l'heure, la distance, l'écart d'altitude et le versant. Ajoute la pluie vue par le radar de Météo-France au lieu même et à 3 km autour (image de 5 min, avec la qualité du radar, faible au fond des cirques). Avec un lieu, la pluie des dernières heures au pluviomètre le plus proche : heure par heure sur 12 à 24 h (« 14 h–15 h : 1,4 mm »), l'heure de la dernière pluie et le cumul depuis minuit, d'après le paquet horaire et les mesures 6 min de Météo-France ; quand rien n'est mesuré sous un ciel chargé, rappelle qu'une bruine peut échapper aux pluviomètres.

prevision_meteo(lieu, quand)

« il va pleuvoir demain à Saint-Denis ? », « quel temps ce week-end à Cilaos ? »

Prévision du modèle AROME outre-mer de Météo-France (maille de 2,5 km) pour les 48 premières heures, puis du modèle IFS de l'ECMWF (9 km) jusqu'à 7 jours, par jour et par tranches de 3 h, températures ramenées à l'altitude du lieu ; chaque jour dit quel modèle a donné quelles heures. Indice UV prévu de chaque jour (CAMS, Copernicus), sur l'échelle de l'OMS. Dans les Hauts (au-dessus de 800 m), la mer de nuages du matin (de 6 h à 9 h, de 9 h à 12 h) d'après la base et le sommet des nuages d'AROME : dégagé, au-dessus, au bord, dans ou sous les nuages, avec leurs altitudes à 100 m près. Partout, le ciel de la nuit (de 18 h à 6 h, par tranches de 3 h, celle de ce soir ou celle demandée) d'après AROME : dégagé, partiellement nuageux, couvert ou pluie prévue, et dans les Hauts au-dessus, au bord, dans ou sous les nuages. Confiance de chaque jour (forte, moyenne ou faible) : l'accord entre les 51 scénarios de l'ensemble ECMWF ENS sur un carré de 25 km, avec sa raison, jamais une probabilité de pluie au lieu même, et rien quand le calcul a plus de 24 h. Chaque réponse porte nature: "prevision" et rappelle que ce n'est pas une mesure, que le modèle ne voit pas les microclimats, et que pour un cyclone seule compte la vigilance officielle. quand : « demain », « ce soir », « samedi », « ce week-end »…

vigilance_meteo(lieu?)

« il y a une alerte cyclonique ? », « vigilance fortes pluies dans l'Est ? »

Vigilance officielle de Météo-France : alerte cyclonique (pré-alerte, orange, rouge…), et par zone fortes pluies / orages, vents forts, vagues-submersion, pour les 24 h du bulletin, avec les textes de suivi. Sans lieu : toute l'île ; avec : la zone du lieu. meteo_actuelle et prevision_meteo signalent d'elles-mêmes toute vigilance au-dessus du vert. Une ligne feux_detectes quand un feu de végétation a été détecté par satellite ces dernières 24 h.

temperature_mer(lieu)

« l'eau est à combien à Boucan ? », « la houle à Saint-Leu ? »

Dernière température de l'eau mesurée près du lieu, avec sa date, sa distance et sa nature (bouée ou satellite) ; à part, dans etat_de_la_mer, la prévision des vagues du modèle WAM de l'ECMWF (9 km, 4 jours) : hauteur, période et direction maintenant, par tranches de 3 h et le maximum de chaque jour, toujours étiquetée comme une prévision.

volcan_seismes()

« le volcan est en éruption ? », « on peut monter au volcan ? », « il y a eu un séisme ? »

Éruption en cours ou non, niveau ORSEC, dernière éruption, accès à l'Enclos (pitonlive.com, d'après les arrêtés préfectoraux), dernières publications de l'OVPF-IPGP et séismes localisés en 30 jours, sous le volcan et ailleurs.

electricite(lieu?)

« d'où vient l'électricité ? », « quand recharger ma voiture électrique ? », « coupure de courant à Sainte-Marie ? »

Production d'EDF toutes les 5 min par filière et part renouvelable ; « météo de l'électricité » d'EDF (heures de pointe, réseau contraint) pour les jours qui viennent ; les coupures d'électricité annoncées par EDF que relaient les mairies (jours, heures, secteurs, avec le lien de l'avis, jamais son texte), lues par l'événement planifié ; ailleurs, la réponse dit que la mairie ne les publie pas, jamais « pas de coupure ».

qualite_air(lieu?)

« l'air est pollué à Saint-Louis ? »

Indice ATMO du jour et du lendemain par commune (Atmo Réunion), avec le polluant en cause.

sites_sans_reponse(quoi?)

« le site de l'OVPF marche ? », « pourquoi pas de bulletin du volcan ? », « le site de Sudéau ne répond plus ? »

Les sites publics de l'île qui ne répondent pas en ce moment : depuis quand, le dernier constat en mots simples et ce qui manque donc sur rundata.re ; un site qui répond de nouveau sort de la liste. Une lecture qui échoue est notée par src/http.ts dans la table sans_reponse de D1 (scripts/sans-reponse.sql), seulement quand l'état du site change ; le site reste « à vérifier », jamais affiché, jusqu'à la revérification de 06:00 (un GET par site, par l'événement planifié). Deux échecs avant tout statut public, deux 403 de suite avant « répond, mais pas à nos lectures ». Un site d'une commune qui n'a pas encore donné son accord n'y figure pas. Aussi sur /sites-sans-reponse.

annuaire_services_publics(quoi, lieu?)

« horaires de la mairie de Saint-Paul ? », « où est la CAF ? », « prix de l'essence ce mois-ci ? »

Adresse, horaires (ouvert en ce moment ?), téléphone et site des services publics, d'après l'annuaire de service-public.fr. Et les prix maximums des carburants et de la bouteille de gaz du mois, fixés par arrêté du préfet (les mêmes dans toute l'île), lus chaque jour dans les communiqués de la préfecture par scripts/carburants.ts ; aussi sur la page circulation. Et les pharmacies, hôpitaux et cliniques les plus proches d'un lieu, d'après FINESS (quoi = « pharmacie », « urgences », « hôpital ») : la pharmacie de garde n'est jamais devinée, la réponse renvoie à 3237.fr et au 32 37 comme l'ARS La Réunion ; l'urgence passe d'abord par le 15. Et les marchés forains et couverts cartographiés dans OpenStreetMap, avec leurs jours quand ils y sont (quoi = « marché ») : la liste n'est pas complète, la réponse le dit. Et les déchèteries de l'Ouest (quoi = « déchèterie », « encombrants », « déchets verts »…) : les bennes pleines ou non d'après les agents du TCO, une mise à jour de plus de 6 h dite à vérifier ; ailleurs, la réponse renvoie à la CINOR, la CIREST, la CIVIS ou la CASUD. Et le jour de collecte des déchets rue par rue dans les cinq communes de l'Ouest (quoi = « collecte », « poubelles », lieu = la rue et la commune), d'après les calendriers 2026 du TCO.

transports(arret, ligne?)

« prochain bus à la gare routière de Saint-Pierre ? », « à quelle heure passe le car jaune à Saint-Leu ? »

Prochains départs à l'arrêt (ligne, direction, heure, minutes d'attente), tous réseaux confondus : Car Jaune, Citalis, Kar'Ouest, Alternéo, CarSud, Estival, téléphérique Papang. Horaires publiés par les réseaux et, pour Car Jaune (et Alternéo, CarSud quand leur flux fonctionne), l'heure annoncée en direct par le réseau, le retard, les arrêts non desservis et l'info trafic. Un lieu qui n'est pas un arrêt donne les arrêts les plus proches.

velos_libre_service(lieu?)

« il reste des vélos à la station IUT ? », « où prendre un vélo près du front de mer de Saint-Pierre ? »

Vélos à assistance électrique Altervélo en libre-service (Saint-Pierre, Saint-Louis, L'Étang-Salé), en direct : vélos à prendre et places libres de chaque station, stations les plus proches d'un lieu, ou tout le réseau.

maree(lieu?)

« la marée monte ? », « c'était quand la marée haute ? », « niveau de la mer au Port ? »

Hauteur d'eau mesurée chaque minute par les marégraphes du SHOM au Port (Pointe des Galets) et à Sainte-Marie : niveau, marée montante ou descendante, dernières pleine et basse mer observées. Puis les prochaines pleines et basses mers, calculées par rundata d'après les mesures, pas la prédiction officielle du SHOM (qui n'est pas en données ouvertes) : heures arrondies à 5 min, à environ 15 min près au Port et 20 min à Sainte-Marie, hauteurs à environ 5 cm près, sans coefficient (voir « Marée calculée » plus bas).

crues_rivieres(lieu?)

« la rivière des Galets est en crue ? », « il y a une vigilance crues ? », « niveau de la ravine Saint-Gilles ? »

Vigilance crues de Vigicrues Réunion rivière par rivière, et hauteur d'eau et débit mesurés toutes les 5 minutes aux 29 stations des rivières, avec leur tendance et les crues historiques comme repères.

bornes_recharge(lieu?, rapide?)

« borne de recharge libre près de Saint-Gilles ? », « où recharger rapidement à Saint-Pierre ? »

Bornes de recharge publiques pour voiture électrique (136 stations, 411 points de charge) et l'état en direct de chaque point : libre, occupé ou hors service, avec sa puissance, ses prises, ses horaires et son réseau.

qualite_eau(lieu?, eau?)

« l'eau du robinet est potable à Cilaos ? », « on peut se baigner à l'Hermitage ? »

Qualité de l'eau d'après les analyses de l'ARS : eau du robinet réseau par réseau (dernière analyse, non-conformités sur 6 mois) et eau des 26 plages et bassins contrôlés, prélèvement par prélèvement.

sentiers_randonnee(lieu?, longueur_min_km?, longueur_max_km?, denivele_max_m?)

« sentiers fermés à Mafate ? », « le sentier de la Roche Pendue est ouvert ? », « la trace GPS du Piton des Neiges ? », « une rando de 10 km à Cilaos ? »

Sentiers de randonnée et routes forestières ouverts ou fermés d'après la carte de l'ONF, avec la cause de chaque fermeture et la date de réouverture prévue ; par sentier, autour d'un lieu, dans un cirque ou une commune, filtrés par longueur ou dénivelé. Trace GPS (GPX) de chaque sentier de l'ONF et des itinéraires complets d'OpenStreetMap (GR R1, R2, R3, Piton des Neiges, Roche Écrite…), avec longueur, dénivelé positif et négatif et profil (altitudes de l'IGN) ; pour un itinéraire, l'état des sentiers de l'ONF qu'il emprunte. Dès qu'un de ces sentiers est fermé, un champ avertissement et le début du résumé le disent. Avec la clé FIRMS, un bloc feux_detectes : les feux de végétation détectés par satellite ces dernières 24 h (faux positifs possibles), avec le 18 et le 112 ; un feu près du lieu demandé ouvre le résumé.

restrictions_eau(lieu?, profil?)

« restrictions d'eau à Saint-Joseph ? », « j'ai le droit d'arroser mon jardin ? »

Restrictions d'eau de l'arrêté sécheresse en vigueur, par commune (eau du robinet, rivières et sources, nappes) et ce qui est interdit pour un particulier, une entreprise, une collectivité ou une exploitation agricole.

coupures_eau(lieu?)

« coupure d'eau à Saint-Denis ? », « l'eau est potable à la Plaine-des-Palmistes ? »

Avis des distributeurs d'eau : coupures pour travaux (heures, rues), pannes et avis « ne pas boire l'eau » ; Saint-Denis, La Possession, les six communes de l'Est et runéo.

resume_du_jour(lieu)

« quoi de neuf à Saint-Paul aujourd'hui ? », « ma journée au Tampon »

La journée d'une commune en un appel (un lieu est rapporté à sa commune) : météo mesurée et prévision du jour, vigilance de sa zone, mer, air, électricité, routes et blocages signalés par les médias (sans mesure des bouchons), actualités de la commune, coupures d'eau, événements du jour, jour férié ou vacances, soleil, mairie ouverte ou non, marché du jour (d'après les jours d'OpenStreetMap), état des bennes des déchèteries pour les communes du TCO (seulement les états de moins de 6 h), prix maximums des carburants du mois, et la pharmacie de garde renvoyée à 3237.fr, jamais devinée. Lu dans les copies des pages du site, jamais reconstruit pendant l'appel : une douzaine de lectures au plus ; ce qui n'a pas de copie récente est nommé dans non_inclus avec l'outil à appeler, et la plus ancienne copie manquante est remise à jour après la réponse si ce qu'elle coûte tient dans le budget de l'appel. Les copies communes à toute l'île (actualités, routes, électricité, coupures d'eau, air, mer, calendrier) sont aussi tenues à jour pour tous les centres de données par l'événement planifié, après les grilles AROME (src/web/partagees.ts).

defibrillateurs(lieu?)

« où est le défibrillateur le plus proche de la plage de l'Hermitage ? »

Les défibrillateurs les plus proches d'un lieu (plus de 1 200 sur l'île) : adresse, distance et temps à pied, emplacement, accessible à toute heure ou aux heures d'ouverture ; rappelle d'appeler le 15 ou le 112.

sport(sport?, lieu?, quand?)

« match de volley dimanche dans le sud ? », « le VBSP joue quand ? », « quels matchs ce week-end ? », « classement du handball ? », « qui a gagné le Grand Raid ? »

Rendez-vous à venir et derniers résultats officiels du handball (D1) et du volley (R1 et R2, toutes les poules) régionaux, avec les clubs en toutes lettres et la commune où l'on joue (un lieu peut être une commune, « le sud » ou le sigle d'un club), les matchs annulés ou reportés d'après les avis de la Ligue de volley et l'actualité locale, classements, régates, compétitions de golf, calendrier du sport automobile et Grand Raid (partants, abandons, podiums). Pas de résultats de football : aucune source ouverte.

cyclones()

« il y a un cyclone en ce moment ? », « c'était quoi le dernier cyclone ? », « école fermée demain ? »

Systèmes tropicaux actifs du sud-ouest de l'océan Indien d'après les avis du CMRS de La Réunion (Météo-France) : nom, stade et heure du dernier avis, sans trajectoire, position, vent ni prévision, que donne le site officiel de Météo-France (lien dans le champ officiel) ; alerte cyclonique de la préfecture, et ce qu'elle veut dire pour les crèches et les établissements scolaires selon le dispositif ORSEC Cyclones (arrêté 2026-182), jamais une école en particulier. Hors saison : le dernier système et les systèmes de la saison.

historique_meteo(lieu?, jours?, du?, au?, detail?)

« il a beaucoup plu ce mois-ci à Saint-Benoît ? », « il fait gris tous les jours depuis deux semaines ? », « quelle température hier à Cilaos ? », « record de chaleur à Saint-Denis ? », « à quelle heure a-t-il plu hier ? », « rafale max cette nuit ? »

Mesures quotidiennes des stations Météo-France, de leur première année (1900 pour les plus anciennes) jusqu'à hier : pluie, températures, ensoleillement, rafales, jour par jour jusqu'à deux mois, par mois ou par année au-delà (10 ans au plus par question), comparées à la normale 1991-2020 de la station, avec ses records. Sur 3 jours ou moins (7 sur demande), depuis 2000, aussi heure par heure, nuit dernière comprise : heures de pluie, soleil, températures, vent et rafales.

evenements(lieu?, quand?, quoi?)

« que faire ce week-end à Saint-Paul ? », « un concert ce soir ? », « un spectacle à Saint-Denis samedi ? », « marché forain demain ? »

Concerts, théâtre, danse, humour, soirées, fêtes, festivals, marchés et animations à venir, d'après les programmes des salles (TÉAT Champ Fleuri et Plein Air, Cité des Arts, CDNOI, Kabardock, Le Séchoir, Léspas, Bisik, Théâtre Luc Donat), les agendas des mairies de Saint-Paul, du Port, des Trois-Bassins, de La Possession, du Tampon, de l'Entre-Deux, de Saint-Louis, de L'Étang-Salé, de Petite-Île, de Saint-André, de Bras-Panon et de Saint-Benoît, de l'office de tourisme de l'Est, de la CINOR et de l'office de tourisme du Nord (OpenAgenda) : titre, date et heures, salle, commune, genre, prix et billetterie quand ils sont donnés, statut (annulé, reporté, complet), y compris quand un média de l'île l'annonce avant l'organisateur (« d'après Imaz Press », avec le lien), lien vers la page de l'événement. Par commune, par jour (aujourd'hui, ce soir, demain, ce week-end, une date) et par genre ; les séances de cinéma renvoient aux sites des cinémas.

actualites(lieu?, sujet?, heures?)

« il y a des blocages à Saint-Pierre ? », « la manifestation se passe comment ? », « quoi de neuf à Saint-Benoît ? », « dernières infos sur le cyclone »

Ce qui se passe en ce moment sur l'île, d'après les médias locaux relus toutes les 5 minutes et leurs directs : pour chaque information, l'heure, le média, le titre, la première phrase, les communes et lieux nommés, ce qu'elle dit du lieu demandé et le lien vers l'article ; les communiqués de la préfecture. Par commune ou quartier, par sujet (manifestations et blocages, routes, météo, volcan, eau, faits divers…).

calendrier(lieu?)

« c'est quand les vacances ? », « le 20 décembre est férié ? », « lever du soleil au Maïdo ? », « c'est quand la pleine lune ? »

Vacances de l'académie de La Réunion, jours fériés (dont le 20 décembre), lever et coucher du soleil au lieu, et la Lune : phase, part éclairée, lever et coucher au lieu, prochaines phases, calculés dans le Worker (à quelques minutes près, pour l'horizon dégagé).

fiche_terrain(adresse)

« cette parcelle est constructible ? », « prix au m² à Boucan ? », « cette maison est en zone inondable ? »

Parcelle cadastrale (section, numéro, surface), zone du PLU (U, AU, A, N) avec le lien vers son règlement, altitude du sol, prix médians des maisons, appartements et terrains vendus autour depuis 5 ans (DVF, agrégés : aucune vente individuelle). Risques : le point est-il dans une zone réglementée d'un plan de prévention des risques (inondation, mouvements de terrain, littoral, ou technologique), avec le lien vers le plan ; arrêtés de catastrophe naturelle de la commune ; glissements et éboulements recensés à moins de 500 m ; sismicité et radon.

donner_avis(type, message, outil?, lieu?, question_utilisateur?)

(appelé par l'assistant)

Transmet à rundata.re un avis : une donnée qui manque, une valeur fausse, une idée, un bravo. L'assistant est invité à l'envoyer de lui-même quand un outil n'a pas trouvé ou s'est trompé, ou quand l'utilisateur exprime un souhait. Sans donnée personnelle ; numéros et adresses électroniques retirés.

sources_donnees()

« d'où viennent ces chiffres ? »

Sources, licences et attributions.

lieu est du texte libre : une commune, une plage, un quartier, un cirque, un sommet, ou des coordonnées -21.05, 55.22. Le répertoire contient environ 1 250 lieux tirés d'OpenStreetMap, avec leur altitude IGN.

Citer la source. Chaque réponse finit par citer (« rundata.re, d'après Météo-France (station Saint-Pierre Pierrefonds) », fait des sources réellement utilisées) et lien, la page de rundata.re qui montre la même chose. Le champ sources garde l'attribution et la licence complètes de chaque producteur : rundata.re s'ajoute à eux, il ne les remplace pas. Quand une réponse n'a rien trouvé, une ligne avis rappelle l'outil donner_avis.

Fraîcheur et nouveautés dans chaque réponse. À côté de citer, fraicheur dit de quand date la donnée quand la source le dit (donnee_du), quand rundata.re l'a lue (lue_a, heure de La Réunion), son âge, et copies_de_secours quand une partie vient de la dernière copie lue : la source qui n'a pas répondu, nommée, avec l'heure de cette copie (partielle quand la même réponse a aussi des parties de cette source lues à jour : chaque copie retient la source qu'elle a lue), ou une partie dont notre lecture n'a pas abouti (l'avertissement le dit, et le reste de la réponse n'est dit à jour que s'il l'est) ; le cache note ce qu'il sert à chaque appel (src/lectures.ts), aucun outil n'a à le dire. Un bloc serveur donne la version, le nombre d'outils et les outils de moins d'une semaine : un assistant dont la liste d'outils est ancienne (certains la gardent des heures) le voit et peut le dire. sources_donnees donne la liste de tous les outils et les dernières nouveautés. Le tout vient de src/nouveautes.ts, à tenir à jour à chaque nouvel outil ou changement visible ; l'index en tête des instructions du serveur en est tiré, et les changements font aussi la page /nouveautes du site et CHANGELOG.md (npm run changelog le réécrit ; un test vérifie qu'il est à jour).

Les microclimats. L'île monte de 0 à 3 000 m en 20 km. L'est est exposé aux alizés (« au vent »), l'ouest est abrité (« sous le vent »). Chaque réponse donne donc la pertinence de la station (bonne / moyenne / faible) et un avertissement quand la station est plus basse, plus loin ou sur l'autre versant. Une station du littoral ne répond jamais en silence pour Cilaos.

Related MCP server: MCP Weather Server

Sources

Source

Ce qu'elle mesure

Fraîcheur

Licence

Stations Météo-France, API Package Observations (clé gratuite, facultative)

~56 stations, de la côte aux sommets : air, pluie, et pour une partie humidité, vent, pression

toutes les 6 min, publiées 5 à 10 min après

Licence Ouverte Etalab 2.0

METAR Gillot et Pierrefonds (Météo-France, via NOAA aviationweather.gov)

air, humidité, vent, pression, temps présent

toutes les 30 min, environ 20 min de retard

données OMM, diffusion libre

Balises Pioupiou / OpenWindMap

vent

toutes les 4 min

licence communautaire OpenWindMap, attribution obligatoire

NOAA CoastWatch ACSPO L3S

température de surface de la mer, satellite, carrés de 2 km

quotidienne, paraît au plus tôt le lendemain

domaine public

NASA Aqua MODIS (via NOAA PFEG), en secours

idem, carrés de 4 km, de jour

quotidienne, paraît au plus tôt le lendemain

domaine public

Vigilance météo et alerte cyclonique, Météo-France (API DPVigilance, même clé)

couleurs par zone et par heure, textes de suivi

à chaque nouveau bulletin, lu toutes les 5 min

Licence Ouverte Etalab 2.0

Radar Météo-France, lame d'eau de La Réunion à 500 m (API DPRadar, même clé)

pluie estimée par les radars du Colorado et de Piton Villers, avec un indice de qualité

toutes les 5 min

Licence Ouverte Etalab 2.0

Séismes de l'OVPF-IPGP (service FDSN de l'IPGP)

séismes localisés sous le volcan et sur l'île, magnitude, profondeur

dès qu'un analyste les a localisés

CC BY 4.0

Publications de l'OVPF-IPGP (son compte Bluesky public)

bulletins mensuels, communiqués, éruptions ; le texte des communiqués publiés en images, lu automatiquement dans leur première image (Tesseract, scripts/ovpf-ocr.ts) et cité comme tel

à chaque publication

citées avec leur lien

pitonlive.com (site indépendant)

niveau ORSEC, éruption en cours, accès à l'Enclos d'après les arrêtés préfectoraux

lu toutes les 10 min

non précisée : cité avec son nom et son lien

EDF SEI Réunion, open data

production par filière ; « météo de l'électricité »

toutes les 5 min ; chaque jour

Licence Ouverte Etalab 2.0

Avis de coupure d'électricité d'EDF Réunion relayés par les mairies de Sainte-Marie, Saint-Philippe, Cilaos, Saint-André et Sainte-Suzanne (API WordPress de leurs sites ; pour Saint-André, la liste des courriers d'EDF qu'elle met en ligne en PDF)

jours, heures et secteurs de chaque coupure, coupure en cours ou programmée, avec le titre et le lien de l'avis ; le texte de l'avis n'est pas repris ; d'un PDF, seule la date de coupure que donne son nom, sinon sa date de mise en ligne, avec son lien (aucun PDF n'est lu)

relu toutes les 2 heures par l'événement planifié (web:courant, src/web/partagees.ts)

information publique, faits seuls

Météo des déchèteries du Territoire de l'Ouest (TCO)

pour chacune des 13 déchèteries du TCO et chaque déchet (encombrants, déchets verts, gravats, métaux…), benne pleine ou non, rempli par les agents environ toutes les 2 heures ; la liste des sites est dans le paquet (scripts/build-decheteries.py)

relu toutes les 30 minutes

Licence Ouverte

Calendriers de collectes du Territoire de l'Ouest (TCO)

pour chacune des 3 247 voies de Saint-Paul, La Possession, Saint-Leu, Le Port et Trois-Bassins, son calendrier ; de chacun des 125 calendriers, les jours de collecte des ordures ménagères, du tri, des déchets verts et des encombrants et les jours fériés, lus dans son PDF (scripts/build-collecte.py, chaque mois vérifié contre les jours de la semaine) ; dans le paquet

le lundi, .github/workflows/collecte.yml compare la date de mise à jour du jeu et échoue quand le jeu change, pour qu'on le refasse (il échoue aussi si un PDF ne se lit plus)

Licence Ouverte

Marchés forains et couverts d'OpenStreetMap (amenity=marketplace)

nom, jours et heures quand ils sont renseignés, adresse, position ; liste incomplète

dans le paquet, refait par scripts/build-marches.py

ODbL, © les contributeurs d'OpenStreetMap

FINESS, fichier national des établissements sanitaires et sociaux (ministère de la Santé)

pharmacies, sites hospitaliers et cliniques de La Réunion : nom, adresse, commune, téléphone, position (sans les sites psychiatriques ni de rééducation) ; ni les horaires ni les services d'urgences, que FINESS ne donne pas ; noms et adresses sans accents, comme dans le fichier

dans le paquet, refait par scripts/build-sante.py

Licence Ouverte 2.0

Prix maximums des carburants et de la bouteille de gaz (communiqués de la préfecture, arrêté mensuel du préfet)

supercarburant, gazole, GNR, pétrole lampant, carburants des professionnels de la mer, bouteille de gaz de 12,5 kg, et l'écart au mois précédent

lu chaque jour par scripts/carburants.ts, qui échoue si l'arrêté du mois manque après le 2

Licence Ouverte (informations publiques de l'État)

Calendrier scolaire (Éducation nationale) et jours fériés (calendrier.api.gouv.fr)

vacances de l'académie de La Réunion, jours fériés

lu une fois par jour

Licence Ouverte Etalab 2.0

Indice ATMO d'Atmo Réunion (géoserveur d'Atmo France)

qualité de l'air par commune, polluant en cause

chaque jour, pour le jour et le lendemain

Licence Ouverte Etalab 2.0

Annuaire de l'administration (service-public.fr, DILA)

adresses, horaires, téléphones des services publics

mis à jour par chaque service

Licence Ouverte Etalab 2.0

Base adresse nationale et Géoplateforme de l'IGN : géocodage, cadastre (DGFiP), Géoportail de l'urbanisme, altitude RGE ALTI

adresse, parcelle, zone du PLU, altitude du sol

à chaque mise à jour des registres

Licence Ouverte Etalab 2.0

Plans de prévention des risques (servitudes PM1 et PM3 publiées par la DEAL sur le Géoportail de l'urbanisme)

zones réglementées des PPR inondation, mouvements de terrain, littoral et technologiques

à chaque révision d'un plan

Licence Ouverte Etalab 2.0

Géorisques (ministère de la Transition écologique, BRGM)

arrêtés de catastrophe naturelle, mouvements de terrain recensés (BDMvt), sismicité, radon

à chaque arrêté ou relevé

Licence Ouverte Etalab 2.0

Horaires des réseaux de bus (GTFS) : Car Jaune (Région), Citalis et téléphérique Papang (CINOR), Kar'Ouest (TCO), Alternéo (CIVIS), CarSud (CASUD), Estival (CIREST), via transport.data.gouv.fr

horaires théoriques de ~10 000 arrêts ; préparés par scripts/build-transit.py dans une base Cloudflare D1

à chaque nouvelle version publiée par un réseau

Licence Ouverte Etalab 2.0

Bus en direct (GTFS-RT) : Car Jaune, Alternéo, CarSud, via transport.data.gouv.fr

heure annoncée de chaque course à ses prochains arrêts, courses et arrêts supprimés, info trafic ; rapprochés des horaires par course et par arrêt

chaque minute

Licence Ouverte Etalab 2.0

Vélos en libre-service Altervélo (CIVIS, exploité par Ecovélo), flux GBFS via transport.data.gouv.fr

vélos et places libres de chaque station

en direct (relu au plus chaque minute)

Licence Ouverte Etalab 2.0

Marégraphes du SHOM, réseau RONIM (REFMAR) : Pointe des Galets (Le Port) et Sainte-Marie

hauteur d'eau au-dessus du zéro des cartes, données brutes ; hauteurs horaires validées pour le calcul de la marée

chaque minute, environ 4 min de retard ; calcul refait par scripts/build-maree.py

Licence Ouverte 2.0, citer « REFMAR. http://dx.doi.org/10.17183/REFMAR#RONIM »

Vigicrues Réunion (DEAL Réunion) : vigilance crues et 29 stations de rivières ; positions des stations par le référentiel Hub'Eau, préparées par scripts/build-crues.py

vigilance crues par rivière, hauteur d'eau et débit, crues de référence

toutes les 5 minutes

Licence Etalab, citer « © VIGICRUES » et la date

Bornes de recharge : base nationale des IRVE de transport.data.gouv.fr, liste des stations préparée par scripts/build-irve.py, état filtré du fichier national toutes les 15 minutes

stations, puissance et prises de chaque point, libre, occupé ou hors service

toutes les 15 minutes

Licence Ouverte Etalab 2.0

Eau du robinet : contrôle sanitaire de l'ARS via Hub'Eau

analyses par réseau de distribution, conformité, paramètres au-dessus des limites

à chaque publication (un à deux mois après le prélèvement)

Licence Ouverte Etalab 2.0

Eau de baignade : contrôle sanitaire des eaux de baignade (ARS, ministère chargé de la santé), liste des sites préparée par scripts/build-baignades.py, toute l'île rassemblée quatre fois par jour (.github/workflows/eau.yml)

entérocoques et E. coli de chaque prélèvement, plages et bassins

toutes les deux semaines environ

information publique

Randonnée : carte des sentiers fermés de l'ONF (service cartographique public)

état de chaque sentier et route forestière géré par l'ONF, cause, réouverture prévue

à chaque mise à jour de l'ONF (arrêtés préfectoraux, décisions ONF)

information publique, ONF La Réunion

Feux de végétation : NASA FIRMS (API par zone, satellites VIIRS Suomi NPP, NOAA-20 et NOAA-21, 375 m), avec une clé MAP_KEY gratuite (FIRMS_MAP_KEY) ; sans clé, rien n'est demandé ni affiché

points chauds des dernières 24 h : position, heure, confiance, puissance ; « détection satellite, faux positifs possibles » (toit chaud, site industriel, brûlage autorisé)

4 à 6 passages par jour ; une requête par satellite (3 sous-requêtes), gardée 30 min pour toute l'île, seulement s'il reste deux fois ce coût

données de la NASA, partage libre ; « We acknowledge the use of data and/or imagery from NASA's FIRMS (https://earthdata.nasa.gov/firms), part of NASA's Earth Science Data and Information System (ESDIS). »

Traces de randonnée : relations « hiking » d'OpenStreetMap à La Réunion, mises bout à bout et simplifiées (5 m) par scripts/build-traces.py ; sentiers de l'ONF à pleine résolution, lus à la demande ; altitudes du service d'altimétrie de l'IGN (RGE ALTI)

traces GPS (GPX), longueur, dénivelé, profil

itinéraires à chaque reconstruction ; sentiers de l'ONF relus toutes les heures

ODbL, « © les contributeurs d'OpenStreetMap » ; ONF : information publique ; IGN : Licence Ouverte Etalab 2.0

Sécheresse : VigiEau (arrêtés préfectoraux de restriction d'eau)

niveau par commune et par ressource, usages restreints

à chaque nouvel arrêté

Licence Ouverte Etalab 2.0

Coupures d'eau : flux des avis de Dionéo, runéo, Eaux de La Possession et communiqués eau de la CIREST (CISE Réunion)

coupures, travaux, avis « ne pas boire l'eau »

à chaque avis

information publique (avis aux abonnés)

Défibrillateurs : Géo'DAE, base nationale du ministère chargé de la santé, liste préparée par scripts/build-dae.py

emplacement, accès, horaires déclarés de chaque appareil

à chaque reconstruction de la liste

Licence Ouverte Etalab 2.0

Sport : FFHB, FFVB, avis de la Ligue réunionnaise de volley-ball, FFVoile, ffgolf, Ligue du sport automobile, Sportsregions (calendrier des clubs), Grand Raid (Livetrail)

matchs, scores, classements, annulations et reports, régates, compétitions, rallyes, événements des clubs, podiums

de 30 min (Grand Raid, avis de la Ligue de volley) à 24 h (calendrier du sport automobile)

information publique (calendriers et résultats officiels, événements publiés par chaque club, avis cités avec leur lien)

Cyclones : avis du CMRS de La Réunion (Météo-France), republiés par GDACS (Commission européenne, Nations unies)

nom, dates et stade de chaque système

toutes les 6 heures pendant un système

réutilisation libre en citant « Global Disaster Alert and Coordination System, GDACS »

Historique : données climatologiques de base quotidiennes de Météo-France, 249 stations depuis 1900, rangées par scripts/build-climat.py ; normales 1991-2020 calculées par scripts/build-normales.py

pluie, températures, rafales, ensoleillement, rayonnement, humidité, jour par jour

chaque matin, avec la veille

Licence Ouverte 2.0

Historique heure par heure : données climatologiques de base horaires de Météo-France, 104 stations depuis 2000, rangées par scripts/build-climat-h.py

pluie, température, humidité, vent, rafales, ensoleillement, rayonnement, heure par heure (heure de La Réunion)

chaque matin, avec la nuit qui vient de finir

Licence Ouverte 2.0

Événements : programmes des salles TÉAT Champ Fleuri et Plein Air, Cité des Arts, CDNOI, Kabardock, Le Séchoir (The Events Calendar), Léspas, Bisik, Théâtre Luc Donat ; The Events Calendar des mairies de Saint-Paul, du Port et des Trois-Bassins, flux RSS de l'agenda du Tampon, de Saint-Louis, de Saint-André, de L'Étang-Salé, de l'Entre-Deux et de La Possession, pages agenda de Petite-Île, de Bras-Panon et de Saint-Benoît, agenda de l'office de tourisme de l'Est (OTI EST REUNION), OpenAgenda de la CINOR et de l'office de tourisme du Nord

événements : dates, heures, lieu, prix

relu toutes les heures

Licence Ouverte Etalab 2.0 (OpenAgenda) ; information publique (programmes des salles, agendas des mairies) : de chaque événement, ses faits seulement (titre, dates, heures, lieu, genre, statut) et au plus la première phrase de son texte, avec le nom de qui le publie, le lien vers sa page et l'heure de lecture ; Théâtre Luc Donat : repris avec son accord écrit du 27/10/2026 ; agenda de la mairie de Bras-Panon : repris avec son accord écrit du 28/10/2026, sans le prix ; office de tourisme de l'Est : reproduction autorisée par ses mentions légales, citée « OTI EST REUNION — Droits réservés », titres repris tels quels

Actualités : titres de Clicanoo, Imaz Press (sitemap Google News et son direct « l'actu en continu »), Freedom, Parallèle Sud, Témoignages ; communiqués de presse de la préfecture

titre, heure, première phrase, communes et lieux nommés, phrase qui nomme un lieu, lien

relu toutes les 5 minutes

titres, première phrase et lien seulement, comme un agrégateur : les articles restent sur le site de chaque média ; communiqués de la préfecture : Licence Ouverte. Linfo.re et Zinfos974, qui refusent les lecteurs automatiques, ne sont pas lus.

Demandes de valeurs foncières (DGFiP), API DVF du Cerema

ventes immobilières, agrégées en médianes

deux fois par an

Licence Ouverte Etalab 2.0

Prévisions AROME outre-mer, Météo-France (API « AROME », même clé que les observations ; outil prevision_meteo seulement)

prévision de modèle, maille de 2,5 km, 48 h

4 calculs par jour

Licence Ouverte Etalab 2.0

Prévisions ECMWF IFS HRES, via Open-Meteo (outil prevision_meteo seulement, au-delà de 48 h et en secours)

prévision de modèle, maille de 9 km

nouveau calcul toutes les 6 h

CC BY 4.0 ; API Open-Meteo gratuite pour usage non commercial

Prévision des vagues ECMWF WAM, via l'API marine d'Open-Meteo (outil temperature_mer, page /mer)

hauteur, période de pic et direction des vagues, 4 jours, toutes les plages en une requête

nouveau calcul toutes les 6 h, lu toutes les 30 min

CC BY 4.0 ; API Open-Meteo gratuite pour usage non commercial

Ensemble ECMWF ENS (51 scénarios), via l'API d'ensemble d'Open-Meteo (outil prevision_meteo, pages météo)

dispersion des scénarios jour par jour (maximum, pluie, rafales : écart entre le 1er et le 9e décile des scénarios), maille de 25 km, 7 jours, toute l'île en une requête

nouveau calcul toutes les 6 à 12 h, lu toutes les 3 h par la tâche planifiée, jamais par une question

CC BY 4.0 ; API Open-Meteo gratuite pour usage non commercial

Indice UV du service Copernicus de surveillance de l'atmosphère (CAMS global), via l'API qualité de l'air d'Open-Meteo (outil prevision_meteo)

indice UV prévu, nuages compris, maille de 45 km, 5 jours, toute l'île en une requête

2 calculs par jour, lu toutes les heures

licence Copernicus (citer CAMS) et CC BY 4.0 ; API Open-Meteo gratuite pour usage non commercial

Marée calculée

Les prédictions de marée du SHOM ne sont pas en données ouvertes ; ses mesures le sont. scripts/build-maree.py ajuste aux hauteurs horaires validées de plusieurs années le modèle harmonique classique de la marée (31 ondes, corrections nodales de Schureman, moindres carrés, Python sans bibliothèque) ; le serveur fait la somme pour les heures à venir (src/maree/calcul.ts, mêmes formules), sans requête. Les hauteurs sont recalées sur l'écart entre la mesure et le calcul des 6 dernières heures (le vent, la pression et la houle montent ou baissent la mer pendant des jours). Chaque réponse le dit : « calcul de rundata d'après les mesures, pas la prédiction officielle du SHOM », et cite « REFMAR. http://dx.doi.org/10.17183/REFMAR#RONIM ».

Contrôle sur des mois que le calcul n'a pas vus, pleines et basses mers mesurées toutes les 10 minutes (lissées sur une heure, comme le calcul), recalage pris 12 h avant :

Marégraphe

Ajusté sur

Contrôlé sur

Écart d'heure médian

Écart de hauteur médian

Pointe des Galets (Le Port)

2022-07 à 2026-06 (34 969 heures)

2026-07 à 2026-09, 346 pleines et basses mers

14,2 min (38 % sous 10 min, 64 % sous 20 min)

2,1 cm recalée (89 % sous 5 cm) ; 5,3 cm sans recalage

Sainte-Marie

2022-07 à 2026-06 (26 767 heures)

2026-07 à 2026-09, 347 pleines et basses mers

21,3 min (26 % sous 10 min, 48 % sous 20 min)

2,6 cm recalée (79 % sous 5 cm) ; 5,3 cm sans recalage

La marée est faible à La Réunion (20 à 80 cm) : en mortes-eaux, la pleine ou la basse mer s'étale et son heure est plus incertaine (la réponse le signale). Le bruit de la mer hors marée (vent, pression, houle, seiches : environ 7 cm) déplace l'heure observée d'un extrême de plusieurs dizaines de minutes ; ni des ondes de plus ni un calage de l'heure n'y changent rien. D'où les heures arrondies à 5 min et annoncées « à environ 15 min près » au Port et « à environ 20 min près » à Sainte-Marie.

Code source

https://github.com/rundata-re/rundata — licence MIT (fichier LICENSE).

Ailleurs : la fiche de réutilisation sur data.gouv.fr, la fiche du serveur sur Glama et les comptes Facebook, Instagram et WhatsApp (la chaîne).

Chaque pull request fusionnée est mise en ligne sur rundata.re dès que les tests passent (.github/workflows/deploy.yml). Quand un réseau de bus publie de nouveaux horaires, ils sont importés dans D1 avant la fusion (scripts/build-transit.py --d1 rundata-transports) : sans eux, le déploiement s'arrête avant de mettre en ligne.

Utilisation

Dans votre assistant IA : ajoutez un connecteur personnalisé avec l'adresse https://rundata.re/mcp (Claude.ai, ChatGPT, Le Chat…). Rien à installer, pas de compte.

En local (Node ≥ 20) : npm install, puis npm run dev:http (point d'accès http://127.0.0.1:8787/mcp, visible de cette machine seulement ; HOST=0.0.0.0 pour l'ouvrir au réseau, par exemple dans un conteneur) ou npm run dev:stdio. npm test lance les tests, sans réseau.

En conteneur : docker build -t rundata . puis docker run -i --rm rundata lance le serveur en stdio (variables facultatives METEOFRANCE_APPLICATION_ID ou METEOFRANCE_API_KEY pour les stations, la vigilance et le radar de Météo-France).

Le site

Les pages sont rendues par le serveur, données comprises, pour les moteurs de recherche et les aperçus de liens (src/web/). Le menu, les tuiles de l'accueil, le pied de page et le sitemap viennent d'une seule liste de catégories (src/web/categories.ts) :

  • / : l'île en ce moment, une tuile par catégorie avec sa donnée du moment, puis comment brancher le connecteur ;

  • Liens croisés : chaque page météo d'un lieu liste les randonnées qui passent à moins de 12 km avec leur état, et la page de son secteur ; chaque fiche de sentier ou d'itinéraire renvoie à la page météo la plus proche et à la vigilance ; la page d'une commune a ses tuiles « Randonnée » (ses sentiers de l'ONF, ceux qui sont fermés) et « Sorties » (ses événements des deux semaines) ; /evenements/ce-week-end donne, jour par jour, la prévision des communes où il se passe quelque chose ;

  • /meteo : la météo de toute l'île (carte, stations de la côte aux sommets, mer), et /meteo/<commune> pour les 24 communes et quelques lieux (volcan, Maïdo, Hell-Bourg…), avec la station la plus pertinente, la mer sur la côte et la prévision, étiquetée ;

  • /communes/<commune> : tout ce qui concerne une commune en ce moment (météo de sa station, vigilance de sa zone, air, mer sur la côte, prochains bus à sa gare ou près de son centre, mairie ouverte ou fermée, soleil), puis le volcan et l'électricité de toute l'île ; /communes les liste par zone ;

  • /communes/<commune>.rss : les alertes d'une commune en flux RSS, un article seulement quand il se passe quelque chose : vigilance de Météo-France au-dessus du vert pour sa zone (vagues-submersion pour une commune du littoral, alerte cyclonique pour toutes), avis de coupure d'eau qui la nomment, sentiers de l'ONF fermés sur son territoire, volcan au-dessus de « Vigilance ». Lu dans les copies des pages (vigilance, /coupures-eau, /randonnees, /volcan), jamais construit pour le flux ; chaque article garde le même identifiant tant que l'événement dure, pour qu'un lecteur ne le montre qu'une fois (src/web/rss.ts). Annoncé dans l'en-tête de la page de la commune et lié dans son pied de page ;

  • /vigilance : la vigilance météo et l'alerte cyclonique, zone par zone ;

  • /ecoles-cyclone : ce que prévoit le dispositif ORSEC Cyclones de la préfecture pour les crèches, écoles, collèges, lycées et universités, et l'alerte en vigueur d'après le bulletin de Météo-France ; le dernier communiqué cyclone de la préfecture y est cité (titre et lien), avec la levée de l'alerte et la réouverture des écoles quand un communiqué les dit, et les deux sources quand elles divergent ;

  • /alerte-cyclone : ce que le dispositif ORSEC Cyclones de la préfecture prévoit à chaque niveau d'alerte (travail, écoles, manifestations, circulation, centres d'hébergement, phase de sauvegarde), cité page par page avec le lien du PDF, sous l'alerte en vigueur ; rien sur ce que le plan ne dit pas (bus, commerces) ;

  • /mer : la température de l'eau au large des plages ;

  • /volcan : éruption ou non, accès à l'Enclos, séismes et messages de l'observatoire ;

  • /bus : les réseaux et les prochains départs dans les gares routières ;

  • /actualites : ce qui se passe sur l'île depuis 24 h, d'après les médias locaux : le direct du jour quand un média en tient un, toutes les informations avec leur heure, leur média et les communes qu'elles nomment, un filtre par commune et par sujet, les communiqués de la préfecture ; les jours de mobilisation, les derniers titres passent aussi en tête de l'accueil ;

  • /trafic : la circulation, sans donnée de trafic reprise : la carte Waze en direct (chargée seulement au clic, car elle dépose des cookies), un lien vers infotrafic.re (état officiel des routes, Région Réunion), les retards et déviations des bus, les routes forestières fermées, l'accès à l'Enclos, la vigilance, et ce que disent les médias des routes et des barrages dans leurs titres des six dernières heures, avec les communiqués du jour de la préfecture (d'après la dernière lecture des actualités, refaite après la réponse quand elle date) ;

  • /coupures-eau/<commune> : l'eau d'une commune : les avis de coupure de son distributeur, ou « aucun avis publié à HH:MM », qui distribue son eau (d'après le contrôle sanitaire de l'ARS, src/eau/distributeurs.json, scripts/build-distributeurs.py), son niveau de sécheresse et son eau du robinet ; tirée des copies de /coupures-eau, /secheresse et /eau. La page de chaque commune y renvoie par sa tuile « Eau » ;

  • /air : l'indice ATMO du jour dans chaque commune, sur une carte ;

  • /electricite : la production d'électricité filière par filière, la part renouvelable et les heures de tension ; une section #coupures donne les coupures annoncées par les mairies qui relaient les avis d'EDF ;

  • /calendrier : les vacances scolaires de l'académie de La Réunion pour l'année scolaire en cours, toutes ses périodes (et l'année suivante dès qu'elle est publiée), les jours fériés, le lever et le coucher du soleil ;

  • /randonnees : la page des randonneurs, avec tous les itinéraires et sentiers sur une carte de l'île selon leur état, leurs distances et dénivelés, un filtre (recherche, distance, dénivelé, ouverts seulement, boucle) et les itinéraires coupés par une fermeture ; /sentiers : les sentiers fermés du jour, commune par commune, et, avec la clé FIRMS, les feux de végétation vus par satellite ces dernières 24 h (en tête quand il y en a, avec le 18 et le 112 ; la tuile « Randonnée » d'une commune les dit aussi) ; /feux : ces feux sur la carte de l'île et en liste, avec les sentiers fermés (copie de /sentiers) et la vigilance ; sans la clé, la page dit que la détection n'est pas encore active, n'est pas indexée (noindex), n'est pas dans le sitemap et rien n'y renvoie ;

  • /randonnees/<secteur> : une page par secteur (Mafate, Cilaos, Salazie, Volcan, Hauts de l'Ouest, Nord, Est, Sud, Sud sauvage, Littoral) : ses sentiers fermés en tête, ses itinéraires et ses sentiers de l'ONF, les accès et la météo de la page la plus proche ; tirée de la copie de /randonnees, sans rien lire de plus. Le secteur d'un sentier ou d'un itinéraire est calculé une fois par scripts/build-traces.py : celui où passe la plus grande partie de son tracé (cirque de Mafate d'OpenStreetMap, communes de geo.api.gouv.fr, altitudes de l'IGN pour le volcan et le littoral) ; un itinéraire qui traverse l'île n'en a pas, il est listé dans chaque secteur qu'il traverse ;

  • /sentiers/<sentier> et /randonnees/<randonnée> : un sentier de l'ONF ou un itinéraire de randonnée, sa trace sur la carte, son profil, son état d'après l'ONF (les tronçons fermés d'un itinéraire en tête de page) et son fichier GPX (la même adresse suivie de .gpx, avec un point « FERMÉ » au début de chaque tronçon fermé) ;

  • /evenements : les événements des deux semaines qui viennent, jour par jour, filtrables par genre ; /evenements/ce-week-end : ceux du week-end (du vendredi 17 h au dimanche soir, avec un jour férié qui y est collé ; à partir du lundi, le week-end qui vient) ; /evenements/concerts : les concerts, ceux du soir à part. Les deux sont tirées de la copie de /evenements, sans rien lire de plus ;

  • /decheteries : les déchèteries de l'Ouest (TCO), une section par commune avec son ancre, les bennes pleines ou non d'après les agents, une mise à jour de plus de 6 h dite à vérifier ; une tuile sur les pages des cinq communes du TCO y renvoie ;

  • /collecte et /collecte/<commune> : le jour de collecte des déchets rue par rue dans les cinq communes du TCO, avec une recherche par rue, les rues groupées par calendrier ;

  • /carburants : les prix maximums du mois, fixés par le préfet, avec l'écart au mois précédent et le lien vers le communiqué ; daté dans le sitemap par l'arrêté ; aussi en carte sur /trafic ;

  • /aujourdhui/<commune> : la journée de chacune des 24 communes sur une page, faite du même résumé que l'outil resume_du_jour (src/tools/resume.ts) : la météo est construite si elle n'a pas de copie, comme sur la page de la commune, le reste est seulement lu dans les copies des pages, et ce qui manque renvoie à sa page ; liée depuis /communes/<commune> ;

  • /sites-sans-reponse : les sites publics de l'île qui ne répondent pas en ce moment, par thème, depuis quand, le dernier essai et ce qui manque ici, avec ceux qui répondent de nouveau depuis moins de 7 jours ; la même liste que l'outil sites_sans_reponse (src/sans-reponse.ts), lue au plus toutes les 15 minutes ; liée depuis /a-propos ;

  • /nouveautes : ce que le site et le connecteur savent faire de plus, jour après jour, en une phrase par changement, liée depuis le pied de page et donnée par sources_donnees ; la même liste que CHANGELOG.md ;

  • /presse : l'espace presse, lié depuis le pied de page : le communiqué, des chiffres clés comptés dans les données du site au moment de l'affichage (outils, stations, arrêts, bornes, défibrillateurs, sentiers…) et les visuels à télécharger, libres avec la mention rundata.re. Les visuels sont des fichiers statiques servis par Cloudflare à côté du Worker (public/presse/, construits par scripts/build-presse.py), pas dans son paquet ;

  • en bas de chaque page, un formulaire « Un avis, une donnée qui manque ? » (src/web/avis.ts) : un formulaire HTML simple, sans script, envoyé à POST /avis, qui renvoie à la page avec un merci. Les avis du site et de l'outil donner_avis vont dans la table avis de D1 (scripts/avis.sql), sans adresse IP, effacés au bout de 12 mois ;

  • /robots.txt, /sitemap.xml, /og.png (aperçu Facebook, WhatsApp…, scripts/build-og.py), /favicon.svg et /favicon.ico (le symbole de rundata.re, le « Point chaud », en SVG et en PNG de 48 px), /manifest.webmanifest (le site gardé sur l'écran d'accueil d'un téléphone, ouvert sur /?ref=pwa, avec les raccourcis Météo, Vigilance et Randonnées ; icônes public/icons/, symbole et logos public/logo/, repris du kit de la marque par scripts/build-icons.py), /sw.js (le service worker : réseau d'abord, et sans réseau la dernière copie de chaque page ouverte, sous un bandeau qui en donne la date ; rien de /mcp, de ?maj=, des flux ni des traces), /hors-ligne (la page d'une adresse jamais ouverte sans réseau, avec les pages gardées sur le téléphone).

Sous le titre de chaque page, une phrase dit à quoi elle sert ; au bas de chaque page, au-dessus du formulaire d'avis, un lien « Partager sur WhatsApp » (?ref=wa) et l'appel à suivre rundata.re sur Facebook, Instagram ou WhatsApp (?ref=site).

English

Public data for Réunion Island (French overseas department 974, Indian Ocean), live and sourced:

  • Tools:

    • meteo_actuelle(lieu): current weather at the most representative station.

    • prevision_meteo(lieu, quand): model forecast (Météo-France AROME outre-mer 2.5 km for 48 h, then ECMWF IFS 9 km via Open-Meteo up to 7 days), with each day's forecast UV index (Copernicus CAMS) and confidence (agreement of the 51 ECMWF ENS members), the sky of the night (18:00 to 06:00, clear or overcast, above or in the clouds in the Hauts), always labelled as a forecast, never mixed with measurements.

    • vigilance_meteo(lieu?): Météo-France's official weather warnings and cyclone alert, island-wide or for a place's zone.

    • volcan_seismes(): Piton de la Fournaise status (eruption, alert level, access) and recent earthquakes located by the OVPF-IPGP.

    • electricite(lieu?): EDF's real-time production mix, renewable share and grid signal for the coming days; the power cuts EDF announces as some town halls relay them (days, hours, streets and the link, never the notice's text).

    • calendrier(lieu?): school holidays (austral calendar), public holidays including 20 December, sunrise and sunset, and the Moon (phase, share lit, rise and set at the place, next phases), computed.

    • qualite_air(lieu?): ATMO air quality index per commune, today and tomorrow.

    • sites_sans_reponse(quoi?): the island's public websites that do not answer at the moment, rechecked every day: since when, the last error in plain words and what is missing on rundata.re as a result; a site that answers again leaves the list.

    • annuaire_services_publics(quoi, lieu?): addresses, opening hours and phone numbers of public offices; this month's maximum fuel prices, set by the prefect (quoi: "carburant"); and the nearest pharmacies and hospitals from FINESS (quoi: "pharmacie", "urgences"), sending to 3237.fr or the 32 37 for the duty pharmacy and to the 15 for an emergency. And the markets OpenStreetMap maps (quoi: "marché"), an incomplete list. And the West's déchèteries (quoi: "déchèterie"), with which skips are full, as the TCO's staff report it; and the days the bins are collected, street by street, in the West (quoi: "collecte", lieu: the street and its commune), from the TCO's calendars.

    • transports(arret, ligne?): next bus departures at a stop, all networks of the island (published timetables, and real-time times, delays and traffic alerts where the network publishes a GTFS-RT feed).

    • velos_libre_service(lieu?): live Altervélo bike-share availability (e-bikes and free docks per station) in Saint-Pierre, Saint-Louis and L'Étang-Salé.

    • maree(lieu?): measured sea level at Réunion's two SHOM tide gauges (Le Port, Sainte-Marie): level, rising or falling, last high and low water observed; then the next high and low waters computed by rundata from years of these measurements (harmonic analysis, scripts/build-maree.py), not the SHOM's official prediction, which is not open: times rounded to 5 min, within about 15 min at Le Port and 20 min at Sainte-Marie (median, checked on months outside the fit), heights within about 5 cm, no tidal coefficient.

    • crues_rivieres(lieu?): river flood vigilance and live river levels and flows at 29 gauges (Vigicrues Réunion), with trend and historical floods as landmarks.

    • bornes_recharge(lieu?, rapide?): public EV charging stations with the live status of each charge point (free, in use, out of order), power, plugs and hours.

    • qualite_eau(lieu?, eau?): tap water quality per distribution network and bathing water quality of the 26 beaches and river pools checked by the regional health agency.

    • sentiers_randonnee(lieu?): hiking trails and forest roads open or closed according to the ONF (French forestry office) map, with the cause of each closure; a GPS trace (GPX), length, elevation gain and profile for every ONF trail and for the whole hiking routes of OpenStreetMap (GR R1, R2, R3, Piton des Neiges…), with the state of the ONF trails each route uses and a warning first when one is closed; hikes can be filtered by length and elevation gain.

    • restrictions_eau(lieu?, profil?): drought water-use restrictions in force, per commune and resource, and what is forbidden for a private person, a business, a local authority or a farm.

    • coupures_eau(lieu?): water cuts and do-not-drink notices published by the water distributors.

    • resume_du_jour(lieu): a commune's day in one call (weather, warnings, sea, air, power, roads, news, water cuts, events, town hall, the day's market, the West's waste centres, fuel prices, the duty pharmacy through 3237.fr), read from the site's page copies; what is missing is named with the tool to call.

    • defibrillateurs(lieu?): nearest public defibrillators (AED) with address, walking time and access hours.

    • sport(sport?, lieu?, quand?): fixtures, results and standings of the regional handball and volleyball leagues (clubs by acronym, town or part of the island; matches called off by the league's notices or the news), regattas, golf competitions, motor sport calendar, the Grand Raid's counts and podiums, and sport news headlines.

    • cyclones(lieu?): active tropical cyclones of the south-west Indian Ocean from the RSMC La Réunion advisories (via GDACS): stage, wind, distance and direction from the island, movement, official forecast and closest approach; the cyclone alert in force, and what the prefecture's ORSEC plan says it means for nurseries and schools.

    • historique_meteo(lieu?, jours?, du?, au?, detail?): past measured weather from the Météo-France stations, daily from their first year (1900 for the oldest) to yesterday: rain, min/max temperature, sunshine, gusts, against the station's 1991-2020 normal and its records; hour by hour since 2000 for periods of a few days, last night included.

    • evenements(lieu?, quand?, quoi?): upcoming concerts, plays, dance, comedy, nightlife, fêtes, festivals and markets, from the programmes of the concert halls and theatres (TÉAT, Cité des Arts, CDNOI, Kabardock, Le Séchoir, Léspas, Bisik, Théâtre Luc Donat), the town halls' agendas, and OpenAgenda (north of the island), with dates, hours, venue, genre, price, booking link, status (cancelled, postponed, sold out) and a link to each event's page.

    • actualites(lieu?, sujet?, heures?): what is happening on the island now, from the local media's headlines and live blogs (time, outlet, first sentence, communes named, what each says of the place asked about, link) and the prefecture's press releases, by place and subject.

    • fiche_terrain(adresse): cadastral parcel, zoning (PLU), altitude, median property prices around (aggregated DVF), and natural hazards: risk prevention plan at the point, natural disaster decrees, landslides recorded within 500 m.

    • meteo_actuelle also reports the rain seen by Météo-France's radar at the place.

    • temperature_mer(lieu): measured sea surface temperature near a beach, and apart from it the wave forecast of the ECMWF WAM model (height, period, direction, 4 days, via Open-Meteo), always labelled as a forecast.

    • donner_avis(type, message, …): feedback to rundata.re (missing data, wrong value, suggestion, praise); assistants are invited to send it when a tool came up short.

    • sources_donnees(): sources and licences.

  • Places: free text (town, beach, peak) or lat, lon.

  • Traffic: no live traffic measurement in Réunion is open for reuse, so there is no traffic tool. The /trafic page loads Waze's live map only on request (it sets cookies) and links to the Région's infotrafic.re, next to what is open: bus delays and detours, closed forest roads, weather warnings, the local media's headlines of the last six hours about roads and blockades, and the prefecture's press releases of the day on them.

  • Fuel prices: /carburants, the prefect's monthly maximum prices, read every day from the prefecture's press releases.

  • What's new: /nouveautes and CHANGELOG.md, both generated from src/nouveautes.ts.

  • Press: /presse has the press release, key figures counted live from the site's data, and screenshots free to use with the credit « rundata.re ».

  • Freshness and new tools: every answer also carries fraicheur (when the data dates from, when rundata.re read it, its age, and whether a last copy was served for a source that did not answer) and a short serveur block (version, number of tools, tools added this week), so that an assistant with an old tool list can tell; sources_donnees lists every tool and the latest changes.

  • Citation: every answer ends with citer (« rundata.re, d'après ») and lien, the matching rundata.re page; the producers' full attribution and licence stay in sources.

  • Answers: every answer carries the measurement time, the station distance, the altitude difference, the windward or leeward side, and a relevance flag.

  • Licences: code under MIT. Data under each source's licence (see sources_donnees). Place names © OpenStreetMap contributors (ODbL), altitudes IGN (Licence Ouverte).

Available Tools

27 tools
actualitesActualités de La Réunion en direct : manifestations, blocages, routes, faits diversA
Read-onlyIdempotent
Inspect

Ce qui se passe en ce moment à La Réunion (974), d'après les médias de l'île (Clicanoo, Le Quotidien, Imaz Press et son direct, Freedom, Parallèle Sud, Témoignages) relus toutes les 5 minutes, et les communiqués de la préfecture : pour chaque information, l'heure (ou le jour seul quand le média ne donne pas l'heure), le média, le titre, la première phrase quand le média la donne, les communes et lieux nommés, ce qu'elle dit du lieu demandé, le lien vers l'article. Par lieu (commune, quartier) et par sujet (manifestations et blocages, routes, météo, volcan, eau, faits divers, santé, politique, culture, sport). Route du Littoral : champ route_du_littoral, une annonce des médias datée, pas une mesure. Radars fixes (champ radars_fixes) : la liste publiée par le ministère de l'Intérieur, avec la vitesse limite de chacun, pour une question sur les routes ou les radars. Jamais les contrôles mobiles. Pour : « il y a des blocages à Saint-Pierre ? », « route fermée ? », « quoi de neuf à Saint-Benoît ? ».

NameRequiredDescriptionDefault
lieuNoUne commune ou un lieu (« Saint-Pierre », « Ravine des Cabris », « Saint-Gilles ») : les informations qui le nomment. Vide = toute l'île.
sujetNo« mobilisation » (manifestations, blocages, barrages), « route », « meteo », « volcan », « eau », « securite », « sante », « politique », « culture », « sport », ou des mots du titre ; vide = tout.
heuresNoDepuis combien d'heures (1 à 72, 24 par défaut).

TDQS

A4.5/5.0
Behavior5/5

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

With no output schema, the description carries the full burden and does so: it discloses refresh cadence (every 5 min), the media sources, the per-item return fields (heure, média, titre, première phrase, communes, lien), and two important caveats — route_du_littoral is a dated media announcement, not a measurement, and radars_fixes is the Interior Ministry's fixed list with speed limits, never mobile checks. This is beyond what readOnlyHint/idempotentHint alone convey.

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?

Front-loaded and dense with useful specifics, but it is one sprawling run-on paragraph with stacked relative clauses, and the full enumeration of six media outlets plus the field-by-field listing costs more than it returns for an agent that mainly needs scope, cadence and the two caveats.

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

Completeness5/5

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

For a three-optional-parameter, no-output-schema aggregation tool, everything needed to call it correctly is present: filters, cadence, source provenance, returned fields, and the two special-case fields with their limitations. Nothing material is left to inference.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description adds value by mapping colloquial topics to the sujet values ('manifestations et blocages' → mobilisation) and by clarifying that lieu accepts a commune or quartier, empty meaning the whole island. It does not explain the heures range beyond the schema, which already states 1–72 with a default of 24.

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 precise statement of what the tool returns: current local news for La Réunion (974) aggregated from named island media, refreshed every 5 minutes, plus préfecture communiqués. It also carves out the two special fields (route_du_littoral, radars_fixes) so an agent can tell this apart from siblings like resume_du_jour, transports or evenements without reading the schema.

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

Usage Guidelines4/5

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

Gives three concrete trigger questions (blocages à Saint-Pierre, route fermée, quoi de neuf à Saint-Benoît) and an explicit routing rule for radars_fixes ('pour une question sur les routes ou les radars') plus an exclusion ('Jamais les contrôles mobiles'). It never names a sibling tool as the alternative, so the when-not-to-use-this-tool-instead guidance is implied rather than stated.

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

annuaire_services_publicsServices publics et vie pratique à La Réunion : adresses, horaires, carburants, pharmaciesA
Read-onlyIdempotent
Inspect

Adresse, horaires d'ouverture (et si c'est ouvert en ce moment), téléphone et site des services publics de La Réunion (974) : mairies et mairies annexes, préfecture et sous-préfectures, CAF, CPAM, France Travail, impôts, tribunaux, France services… d'après l'annuaire officiel de service-public.fr. Aussi les prix maximum des carburants et de la bouteille de gaz du mois, fixés par le préfet (quoi = « carburant », « essence », « gazole », « gaz »), les pharmacies et les hôpitaux les plus proches d'après FINESS (quoi = « pharmacie », « urgences », « hôpital ») : la pharmacie de garde n'est connue que de 3237.fr et du 32 37, l'urgence passe par le 15 ; les marchés forains et couverts d'après OpenStreetMap (quoi = « marché » ; un marché de Noël ou nocturne annoncé : evenements), et les déchèteries de l'Ouest (TCO) avec les bennes pleines en direct (quoi = « déchèterie », « encombrants », « déchets verts »), et le jour de collecte des déchets rue par rue dans l'Ouest (quoi = « collecte », « poubelles », lieu = la rue et la commune : « rue Labourdonnais, Saint-Paul »), d'après les calendriers du TCO ; où aller avec les enfants (quoi = « enfants », « aire de jeux », « piscine », « médiathèque », « skatepark »…) : aires de jeux, parcs, piscines, médiathèques, zoos, parcs de loisirs, salles de jeux, skateparks, escalade, musées, commune par commune, avec l'âge quand la carte le donne, d'après OpenStreetMap, Data ES et Basilic. Pour : « horaires de la mairie de Saint-Paul ? », « prix de l'essence ce mois-ci ? », « quel jour passent les poubelles à Saint-Paul ? ».

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.
quoiYesLe service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences », « enfants » pour les lieux où aller avec eux.

TDQS

A3.8/5.0
Behavior4/5

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

The annotations already declare read-only, idempotent, open-world, non-destructive behavior, so the description appropriately focuses on domain caveats. It discloses major data sources (service-public.fr, FINESS, OpenStreetMap, TCO, Data ES, Basilic) and practical limitations such as on-duty pharmacy coverage and emergency routing. It does not contradict the annotations and adds meaningful context beyond them.

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

Conciseness2/5

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

The description is a single sprawling paragraph that mixes public services, fuel prices, pharmacies, hospitals, markets, waste collection, déchèteries and children's activities. It contains useful details, but it is poorly front-loaded and difficult to scan, so the conciseness and structure are weak.

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 two-parameter tool with no output schema, the description provides enough context about sources, coverage, caveats and example use cases to call it correctly. It could be more complete by clarifying output format or pagination, but given the annotation support and detailed domain notes, the essential context is present.

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

Parameters4/5

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

Schema coverage is already 100%, so the baseline is 3, but the description adds substantial semantic guidance for 'quoi' by listing many accepted query categories and for 'lieu' by giving examples such as coordinates and street-plus-commune formats. The parameter guidance is valuable but buried inside a run-on text, making it harder to use than a structured list would be.

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

Purpose4/5

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

The description clearly establishes that this is a directory/lookup tool for public services and practical life information in Réunion, with concrete examples such as mairies, CAF, carburant, pharmacies, marchés, déchèteries and children's activities. The purpose is specific and scoped to Réunion, but the long enumeration blurs the core identity and only occasionally distinguishes it from siblings, for example by routing Christmas or night markets to evenements.

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

Usage Guidelines4/5

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

Usage is supported by query examples ("horaires de la mairie de Saint-Paul ?", "prix de l'essence ce mois-ci ?", "quel jour passent les poubelles à Saint-Paul ?") and by explicit category keywords for the 'quoi' parameter. It also gives useful guidance for adjacent needs: pharmacy on duty is only known via 3237.fr/32 37, emergencies go through 15, and Christmas/night markets should use evenements. The only gap is that most other sibling alternatives are not explicitly excluded.

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

bornes_rechargeBornes de recharge à La RéunionA
Read-onlyIdempotent
Inspect

Bornes de recharge publiques pour voiture électrique à La Réunion (136 stations, plus de 400 points de charge : Freshmile, EZDrive, E.Leclerc…) et l'état en direct de chaque point d'après son opérateur : libre, occupé ou hors service, avec sa puissance, ses prises, ses horaires et son réseau. Pour : « borne de recharge libre près de Saint-Gilles ? », « où recharger rapidement à Saint-Pierre ? », « bornes au Tampon ? ».

NameRequiredDescriptionDefault
lieuNoUn lieu ou une commune (« Saint-Gilles-les-Bains », « Le Tampon », « aéroport Roland-Garros »). Vide = toute l'île.
rapideNoSeulement la recharge rapide (50 kW ou plus).

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive, open-world behavior, so the description doesn't need to. It does add useful context beyond them: the data comes from each point's operator and is live (libre/occupé/hors service), plus provenance and coverage breadth. It omits freshness/latency or update cadence details, keeping it below 5.

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

Conciseness4/5

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

The tool's subject, coverage and returned fields are front-loaded in the first clause, with example queries trailing as illustration. It is a single dense sentence plus a query list; slightly long but each element (operators, counts, field list, examples) carries information.

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 read-only lookup with no output schema, the description enumerates the returned attributes (statut, puissance, prises, horaires, réseau), which is enough to predict the payload. It doesn't address result size/limits despite 400+ charge points, a minor 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 100%, so both parameters (lieu, rapide) are already fully documented; baseline is 3. The description reinforces 'rapide' indirectly via 'où recharger rapidement' and 'libre' via 'borne de recharge libre', but adds no format or syntax detail beyond the schema.

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?

States a specific resource (bornes de recharge publiques pour voiture électrique), a geographic scope (La Réunion), and enumerates the data it returns: live status, puissance, prises, horaires, réseau. Counts (136 stations, 400+ points) and named operators (Freshmile, EZDrive, E.Leclerc) make it unmistakable against siblings like velos_libre_service or transports.

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

Usage Guidelines4/5

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

The 'Pour :' section supplies three representative natural-language queries ('borne libre près de Saint-Gilles', 'où recharger rapidement à Saint-Pierre', 'bornes au Tampon') that map directly to the two parameters, giving clear usage context. It stops short of naming when NOT to use it or pointing to an alternative sibling, so it doesn't reach a 5.

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

calendrierVacances, jours fériés, soleil et Lune à La RéunionA
Read-onlyIdempotent
Inspect

Calendrier de La Réunion (974) : vacances scolaires de l'académie de La Réunion (calendrier austral, différent de la métropole), jours fériés (dont le 20 décembre, Fèt Kaf), date du jour, heures de lever et de coucher du soleil au lieu demandé, et la Lune : phase, part éclairée, lever et coucher, prochaines phases (calculés). Pour : « c'est quand les vacances ? », « le 20 décembre est férié ? », « la Lune se lève à quelle heure ce soir ? ».

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, so the bar is lower; the description usefully adds that moon phases are computed ('calculés') and that results are scoped to Réunion. It does not describe output shape or whether sun/moon values are estimated for the given `lieu` versus a fixed station, but nothing is contradicted.

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

Conciseness4/5

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

One dense inventory sentence followed by a short query-example sentence, both front-loaded and free of filler. The enumerations are long but each item is a distinct capability, so it earns its length; a slight trim of the parentheticals would help.

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?

With one optional parameter, no output schema, and rich annotations, the description covers the full capability set and scope well enough to call correctly. The only gap is that, lacking an output schema, it does not hint at the shape of returned records (e.g. per-day vs per-query).

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 coverage is 100% and the single `lieu` parameter is fully documented in-schema, including the empty-string default and coordinate format. The description only echoes it via 'au lieu demandé', adding little beyond the schema, so the baseline 3 applies.

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?

Names a specific resource (Réunion calendar) and enumerates exactly what it returns: school holidays, public holidays including 20 décembre/Fèt Kaf, today's date, sunrise/sunset, and moon phase/times/next phases. It also flags the domain-specific quirk (calendrier austral, différent de la métropole), which distinguishes it from generic date or weather siblings.

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

Usage Guidelines4/5

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

The 'Pour :' clause supplies three concrete user phrasings that map cleanly onto invocations, which is strong routing guidance. It stops short of stating exclusions — e.g. that tide times belong to `maree` or that general weather belongs to `prevision_meteo` — leaving the agent to infer boundaries with overlapping siblings.

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

coupures_eauCoupures d'eau et eau non potable à La RéunionA
Read-onlyIdempotent
Inspect

Avis des distributeurs d'eau de La Réunion (974) : coupures pour travaux ou lavage de réservoir (heures, rues concernées), pannes, et avis « ne pas boire l'eau » quand l'eau n'est plus potable. Saint-Denis (Dionéo), La Possession, Saint-Paul et Les Trois-Bassins (La Créole), Sainte-Marie (communiqués de CISE Réunion publiés par la ville), Saint-Leu (avis publiés par la commune, en court extrait), les communes de l'Est (Saint-André, Bras-Panon, Saint-Benoît, La Plaine-des-Palmistes, Sainte-Rose, Salazie) et runéo. Pour : « coupure d'eau à Saint-Denis ? », « l'eau est potable à la Plaine-des-Palmistes ? », « quand revient l'eau ? ». Sans lieu : tous les avis récents. Un avis « ne pas boire » se dit d'abord ; la conformité des analyses de l'ARS est dans qualite_eau. Quand secteurs_complets vaut false, la liste des rues de l'avis n'a pas été lue en entier : ne jamais en conclure qu'une rue ou un quartier n'est pas concerné, donner le lien de l'avis complet. Même quand la liste est complète, dire « cette rue n'est pas dans la liste de l'avis », jamais « pas de coupure chez vous ».

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover the safety profile (read-only, idempotent, non-destructive, open-world), but the description adds non-obvious data-quality behavior: secteurs_complets=false means the street list is incomplete, so absence must never be reported as 'no cut at your address', and the full-advisory link should be given. That is exactly the kind of caveat the annotations cannot convey. It stops short of describing the overall response shape, so not a 5.

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

Conciseness4/5

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

Purpose and the critical 'ne pas boire first' and incompleteness caveats are front-loaded, and most clauses carry real information. The long enumeration of communes and distributors is useful coverage detail but is dense and could be tightened.

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 single-param, no-output-schema read tool, the description supplies coverage area, query phrasings, default behavior, sibling routing, and the key interpretation caveat. Only return structure/freshness granularity is left implicit, which is a minor 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 coverage is 100% and the single param already documents accepted location forms and 'empty = whole island'. The description only marginally extends it by clarifying that no location means all recent advisories, so the baseline 3 for schema-covered params applies.

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?

The description names the specific resource (water-distributor advisories in Réunion: planned cuts, breakdowns, do-not-drink notices) with the concrete scope, and it explicitly distinguishes itself from qualite_eau, which holds the ARS compliance analyses. An agent can tell what this returns and what it does not without opening the schema.

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?

It gives literal example queries («coupure d'eau à Saint-Denis ?», «quand revient l'eau ?»), states the no-location default (all recent advisories), and routes a related need (ARS potability analyses) to the sibling qualite_eau. That is explicit when-to-use plus an alternative, not implication.

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

crues_rivieresCrues et rivières à La RéunionA
Read-onlyIdempotent
Inspect

Vigilance crues de Vigicrues Réunion (DEAL), rivière par rivière, et hauteur d'eau et débit mesurés toutes les 5 minutes aux 29 stations des rivières et ravines de l'île, avec leur tendance et les crues historiques comme repères. Rappeler de ne jamais traverser un radier submergé. Pour : « la rivière des Galets est en crue ? », « il y a une vigilance crues ? », « niveau de la ravine Saint-Gilles ? ».

NameRequiredDescriptionDefault
lieuNoUne rivière (« rivière des Galets », « ravine Saint-Gilles ») ou un lieu (« Salazie », « Saint-Benoît ») pour les stations proches. Vide = toute l'île.

TDQS

A4.4/5.0
Behavior3/5

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

Annotations confirm it is a read-only, non-destructive tool. The description adds valuable behavioral context by stating that measurements are taken 'toutes les 5 minutes' and include 'crues historiques'. While it adds data context, it doesn't add significant operational/safety info beyond what's already structurally available, hence a solid middle score.

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

Conciseness4/5

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

The text is dense but highly informative. It front-loads the core functionality and then provides examples, maintaining a good balance between detail and readability without unnecessary jargon.

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

Completeness5/5

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

The combination of the description, title, and the single parameter's clear function makes the tool definition complete. Given the 'readOnlyHint' and the specific example queries, the AI has everything it needs to select and invoke the tool confidently.

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

Parameters4/5

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

The schema coverage is 100%, meaning the description doesn't need to add basic parameter definitions. However, the description adds significant semantic meaning by defining exactly what constitutes a valid 'lieu' (e.g., 'une rivière... ou un lieu... pour les stations proches'), which goes beyond a simple string type.

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?

The title 'Crues et rivières à La Réunion' combined with the description clearly states the tool provides real-time flood monitoring ('Vigilance crues'). It specifies the resource (river/ravine data) and the scope (the island of Réunion), making its purpose highly specific and easy to distinguish from sibling tools like 'meteo_actuelle' or 'volcan_seismes'.

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?

The description explicitly provides three example query patterns ('la rivière des Galets est en crue?', etc.). This gives the AI clear guidance on the intent and phrasing required, effectively serving as 'when to use' examples compared to other situational tools.

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

cyclonesCyclones dans le sud-ouest de l'océan IndienA
Read-onlyIdempotent
Inspect

Systèmes tropicaux actifs autour de La Réunion (974), d'après les avis du CMRS de La Réunion (Météo-France) republiés par GDACS : nom et stade (dépression, tempête tropicale modérée ou forte, cyclone tropical, intense), avec l'heure du dernier avis ; alerte cyclonique de la préfecture, et ce qu'elle veut dire pour les crèches, écoles, collèges, lycées et universités selon le dispositif ORSEC Cyclones (jamais une école en particulier). Hors saison : le dit, avec le dernier système et ceux de la saison. Ni trajectoire, ni position, ni distance, ni prévision : jamais de trajectoire inventée, donner le lien du champ officiel (site officiel de Météo-France) ; renvoyer aux consignes de la préfecture. Pour : « il y a un cyclone en ce moment ? », « combien de pluie pendant Garance ? » (nom).

NameRequiredDescriptionDefault
nomNoUn cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, and the description adds important constraints beyond them: never invent a track, give the official Météo-France link, refer to prefecture instructions, and attribute quoted Météo-France data rather than rundata.re. It also discloses off-season behavior and scopes school-related alert interpretation away from individual schools.

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

Conciseness4/5

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

The description front-loads the active-system purpose, then moves through alerts, off-season handling, exclusions, and example queries. It is dense but each sentence contributes relevant scope or behavioral detail; slightly more structural separation would improve scanability.

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

Completeness5/5

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

For a one-parameter tool with no output schema, it describes the returned content well: system name and stage, last advisory time, prefecture alert meaning, off-season fallback, and historical rain/gust measurements. It also covers source attribution and limitations, leaving no essential invocation detail unclear.

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

Parameters4/5

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

The schema already covers the optional 'nom' parameter in detail, including available storm names and what measurements are returned. The description adds a useful default distinction between current active systems (no name) and historical named storms, plus a concrete query example, though the schema remains the richer parameter reference.

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?

The description names the exact resource (active tropical systems around Réunion), its sources (CMRS de La Réunion / Météo-France via GDACS), and the two modes: current system status and historical lookup by name. It explicitly excludes track, position, distance, and forecast, which sharply separates it from general weather and forecast siblings.

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

Usage Guidelines4/5

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

It provides concrete trigger phrases ('il y a un cyclone en ce moment ?', 'combien de pluie pendant Garance ?') and states off-season behavior and the no-track/no-forecast boundaries. However, it does not explicitly name sibling tools such as prevision_meteo or vigilance_meteo as alternatives, so routing is clear but not fully spelled out.

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

defibrillateursDéfibrillateurs à La RéunionA
Read-onlyIdempotent
Inspect

Défibrillateurs (DAE) les plus proches d'un lieu de La Réunion (974), d'après la base nationale Géo'DAE : adresse, distance et temps à pied, emplacement exact, accessible à toute heure ou aux heures d'ouverture. Plus de 1 200 appareils dans les 24 communes. Pour : « où est le défibrillateur le plus proche de la plage de l'Hermitage ? », « défibrillateur à Cilaos ? ». Dire d'abord d'appeler le 15 ou le 112 et de commencer le massage cardiaque.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, open-world, non-destructive behavior. The description adds valuable context beyond annotations: the Géo'DAE data source, coverage of over 1,200 devices across 24 communes, return details including walking time and access hours, and an emergency safety caveat. It does not specify result cardinality or response format, which keeps it from a 5.

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

Conciseness4/5

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

The description is front-loaded with purpose and scope, then moves efficiently through returned fields, coverage, examples, and emergency guidance. It is dense but every sentence contributes; the final safety instruction is essential and not padding.

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

Completeness5/5

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

For a single optional-parameter, read-only lookup with no output schema, the description is complete: it states what the tool does, what data it returns, the geographic coverage, example invocations, and the required emergency advice. An agent has everything needed to call it correctly.

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 100%, and the schema already explains that 'lieu' accepts commune, plage, quartier, cirque, sommet, coordinates, or empty for the whole island. The description only reinforces the location concept and gives examples, adding little semantic detail beyond the schema. Baseline 3 is appropriate.

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?

The description states a specific resource (défibrillateurs/DAE) and scope (les plus proches d'un lieu de La Réunion), and it lists the returned fields: adresse, distance, temps à pied, emplacement, horaires. An agent can immediately tell this is a nearest-defibrillator lookup, distinct from all listed siblings.

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

Usage Guidelines4/5

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

It gives concrete example queries ('où est le défibrillateur le plus proche de la plage de l'Hermitage ?', 'défibrillateur à Cilaos ?') that clarify when to use the tool. It also adds a critical usage instruction to first tell the user to call 15/112 and start cardiac massage, though it does not explicitly state when not to use it.

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

donner_avisDonner un avis à rundata.reAInspect

Transmet à rundata.re, qui tient ce serveur, un avis sur ses données : une donnée qui manque (« manque »), une valeur qui semble fausse ou périmée (« erreur »), une idée (« suggestion »), ou un remerciement (« bravo »). L'appeler sans attendre qu'on le demande quand un outil n'a pas trouvé ce que l'utilisateur cherchait, a renvoyé quelque chose de faux ou d'incomplet, ou quand l'utilisateur exprime un souhait ou une plainte sur ces données, ou dit après coup qu'une information de rundata.re était fausse : c'est ainsi que le service s'améliore. Écrire un message court et concret (quel outil, quel lieu, ce qui manquait). Ne mettre aucune donnée personnelle ; si le contenu touche la personne (son adresse, sa santé…), lui demander d'abord son accord. Les avis sont lus par une personne, sans réponse directe.

NameRequiredDescriptionDefault
lieuNoLe lieu concerné (« Cilaos », « plage de l'Hermitage »).
typeYes« manque » (donnée absente), « erreur » (valeur fausse ou périmée), « suggestion », « bravo ».
outilNoL'outil concerné (« meteo_actuelle », « transports »…).
messageYesL'avis, en quelques phrases (1000 caractères au plus), sans donnée personnelle.
question_utilisateurNoLa question de l'utilisateur, reformulée sans rien de personnel.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations only declare non-read-only, non-destructive, non-idempotent; the description adds that submissions are read by a human with no direct reply, that no personal data may be included, and that consent must be sought first when content is personal. It does not mention rate limits or whether repeated submissions are deduplicated, which is the remaining gap for a write tool.

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

Conciseness4/5

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

Purpose and feedback types are front-loaded, followed by usage triggers, content guidance, and privacy rules in a logical order. The middle sentence is long and packs several triggers into one chain, which slightly hurts scanability but every clause carries information.

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 5-parameter write tool with no output schema, the description covers when to call, what to write, what not to include, how consent works, and what happens afterwards (human review, no reply). Missing only operational details such as frequency expectations or confirmation behavior, which keeps it from a 5.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description still adds content guidance beyond the schema by telling the agent what a good 'message' contains (which tool, which place, what was missing) and by reinforcing the no-personal-data constraint on 'message' and 'question_utilisateur'. It does not add anything for 'lieu' or 'outil' beyond what the schema already documents.

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?

States a specific verb+resource+recipient ('Transmet à rundata.re ... un avis sur ses données') and enumerates the four feedback types, immediately distinguishing it from every data-lookup sibling. An agent knows exactly what this tool does without opening the schema.

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 says to call it proactively ('sans attendre qu'on le demande') and lists concrete trigger conditions: a tool found nothing, returned something false or incomplete, or the user voiced a wish/complaint or later said a fact was wrong. That is precise routing guidance rather than implied usage.

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

electriciteÉlectricité à La Réunion en ce momentA
Read-onlyIdempotent
Inspect

Électricité à La Réunion (974) en direct, d'après EDF : production totale, part de chaque filière (solaire, bagasse et biomasse, hydraulique, éolien, charbon, diesel) et part renouvelable, mises à jour toutes les 5 min ; « météo de l'électricité » d'EDF pour les jours qui viennent (heures de pointe, réseau contraint, recharge conseillée d'un véhicule électrique). Pour : « d'où vient l'électricité ? », « quand recharger ma voiture électrique ? ». Coupures de courant (électricité, pas l'eau : coupures_eau) : les avis d'EDF que relaient les mairies dont le site ne l'interdit pas (Sainte-Marie), jours, heures et secteurs, avec le lien de l'avis ; ailleurs, l'outil le dit : aucun avis lu pour la commune, ou ses mentions légales en interdisent la reprise. Pour : « coupure de courant à Sainte-Marie ? », « coupure EDF prévue dans ma commune ? ».

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4/5.0
Behavior5/5

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

Annotations only declare it is a safe read; the description goes well beyond that by naming the source (EDF), the refresh cadence (every 5 min), and — most valuably — the coverage limitation: outage notices are only republished for communes whose legal notice permits it (e.g. Sainte-Marie), and elsewhere the tool reports that no notice was read or that reuse is forbidden. That is exactly the kind of negative-result behavior an agent needs to interpret empty answers.

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?

Content is front-loaded and every clause carries information, but it is a single dense block with stacked parentheses and nested colons that is hard to scan. Two capabilities and their caveats are interleaved rather than separated into distinct sentences, costing readability for no gain in brevity.

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?

With no output schema, one optional parameter, and a genuinely complex two-mode tool, the description supplies source, update frequency, coverage caveats, and intent examples — enough to call it correctly and to interpret empty results. It falls short only on not clarifying the shape of what comes back (e.g. whether mix and outages are returned together or which dominates).

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 coverage is 100% and the parameter description already explains accepted place forms (commune, beach, quarter, cirque, summit, or "-21.05, 55.22") and that empty means the whole island. The description only echoes this implicitly through its example queries, adding no format or behavioral detail beyond the schema, so baseline 3 applies.

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

Purpose4/5

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

States a concrete resource and scope: live electricity data for Réunion (total production, per-source share, renewable share) plus EDF outage notices by day/hour/sector. It explicitly separates itself from coupures_eau ("électricité, pas l'eau"). The only deduction is that it bundles two distinct capabilities (generation mix and outage notices) into one tool, which slightly muddies the headline purpose.

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

Usage Guidelines4/5

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

Gives explicit trigger phrases for each capability ("d'où vient l'électricité ?", "quand recharger ma voiture électrique ?", "coupure EDF prévue dans ma commune ?") and names coupures_eau as the sibling to use for water outages. It does not mention bornes_recharge despite the EV-charging framing, leaving one obvious routing decision to inference.

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

evenementsÉvénements à La Réunion : concerts, spectacles, fêtes, festivals, marchésA
Read-onlyIdempotent
Inspect

Événements à venir à La Réunion (974) : concerts, théâtre, danse, humour, cirque, soirées, fêtes, festivals, marchés, cinéma en plein air, animations municipales. D'après les programmes du Séchoir et du Théâtre Luc Donat, les agendas des mairies (Saint-Paul, Le Port, Les Trois-Bassins, Sainte-Marie, Salazie, Saint-Louis, Bras-Panon), celui de l'office de tourisme de l'Est, et ceux de la CINOR et de l'office de tourisme du Nord (OpenAgenda). Chaque événement : titre, date et heures (heure de La Réunion), salle, commune, genre, prix et lien de billetterie quand ils sont donnés, statut (ANNULÉ, REPORTÉ, complet), y compris quand c'est un média de l'île qui l'annonce avant l'organisateur (statut_d_apres). Pour : « que faire ce week-end à Saint-Paul ? », « concert ce soir ? », « c'est quand la fête de l'ail ? ».

NameRequiredDescriptionDefault
lieuNoUne commune ou un lieu (« Saint-Paul », « Saint-Gilles ») : les événements de sa commune. Vide = toute l'île.
quoiNoLe genre (« concert », « spectacle », « théâtre », « danse », « humour », « soirée », « festival », « marché », « cinéma », « enfants », « sport », « exposition ») ou des mots du titre ou de la salle (« ail », « dragon boat », « Kabardock ») ; vide = tout.
quandNo« aujourd_hui », « ce_soir », « demain », « ce_week_end », « cette_semaine », « a_venir » (30 jours), un jour (« samedi ») ou une date (« 2026-10-31 ») ; vide = les 14 jours qui viennent.

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare read-only/idempotent/open-world, and the description adds substantially beyond them: source provenance, coverage of municipal and OpenAgenda feeds, timezone (heure de La Réunion), inclusion of cancelled/reported/sold-out status, and the notable 'statut_d_apres' case where a local media outlet announces before the organiser. That last detail materially changes how an agent should interpret a status field.

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

Conciseness4/5

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

Front-loaded with the resource and scope, then sources, then record fields, then use cases — a logical order. It is dense with long enumerations of communes and source names that add modest value, keeping it from a 5.

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

Completeness5/5

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

There is no output schema, but the description enumerates the returned fields (titre, date/heures, salle, commune, genre, prix, billetterie, statut) and the timezone, so an agent knows what to expect. Combined with all-default optional parameters and explicit empty-value behaviour, nothing needed to call it correctly is missing.

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 coverage is 100%, so each parameter's meaning, examples and empty-value defaults are already documented in the schema. The description corroborates the genre/title-word duality of 'quoi' but adds no syntax or format detail the schema lacks, so the baseline 3 applies.

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?

States a specific resource (upcoming events in La Réunion) with the covered event types, the exact sources it aggregates, and the fields each record carries. No sibling tool overlaps with local event listings, and an agent can immediately tell what this returns.

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

Usage Guidelines4/5

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

The closing 'Pour :' clause gives three concrete question shapes ('que faire ce week-end à Saint-Paul ?', 'concert ce soir ?', 'c'est quand la fête de l'ail ?') that map onto the parameters, which tells the agent exactly when this tool fits. It stops short of naming exclusions or alternatives (e.g. sport, calendrier, actualites), so it is clear context rather than a full routing rule.

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

fiche_terrainCadastre, urbanisme, prix immobiliers et risques à une adresse de La RéunionA
Read-onlyIdempotent
Inspect

Ce que disent les registres officiels d'une adresse ou d'un lieu de La Réunion (974) : parcelle cadastrale (section, numéro, surface), zone du plan local d'urbanisme (U, AU, A, N : constructible ou non), altitude du sol, prix médians des maisons, appartements et terrains vendus autour, et sur la voie demandée, depuis 5 ans (DVF), loyers d'annonce de la commune pour un logement type (carte des loyers de l'ANIL), part des logements et locaux de la commune éligibles à la fibre (Arcep), et risques : plan de prévention des risques (PPR inondation, mouvements de terrain, littoral) au point, arrêtés de catastrophe naturelle de la commune, glissements et éboulements recensés à moins de 500 m, sismicité, radon. Pour : « cette parcelle est constructible ? », « prix au m² des maisons à l'Hermitage ? », « quels risques à cette adresse ? ».

NameRequiredDescriptionDefault
adresseYesAdresse (« 7 rue de la Buse, Saint-Paul »), lieu-dit (« Bois de Nèfles ») ou coordonnées « -21.0, 55.27 ».

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, and the description goes further by disclosing data provenance (DVF, ANIL, Arcep, PPR), temporal scope (5 years of sales), and spatial granularity differences (prices 'autour' and within 500 m, rents and fibre at commune level, PPR 'au point'). That granularity disclosure is genuinely useful for interpreting results. It stops short of covering failure modes (address not found, ambiguous lieu-dit) or response shape.

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

Conciseness4/5

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

The main payload (what registers say about an address) is front-loaded, and the example queries at the end anchor usage. The middle is a dense single-sentence enumeration that borders on encyclopedic, but each item maps to a distinct returned data family, so little is wasted.

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

Completeness5/5

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

With no output schema, the description carries the burden of describing return content and does so exhaustively — parcel, zoning, altitude, prices, rents, fibre, and four risk dimensions with their spatial scope. An agent knows what it will get back and at what granularity before calling.

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

Parameters4/5

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

Schema coverage is 100% and the single parameter already documents address, lieu-dit and coordinate formats. The description adds a real constraint beyond the schema: the input must be a location in La Réunion (974), which tells the agent the tool is geographically scoped rather than globally open despite openWorldHint.

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?

The description states precisely what is returned for an address in La Réunion: cadastral parcel (section, number, area), PLU zone with constructibility classes (U, AU, A, N), ground altitude, DVF median prices, ANIL rents, Arcep fibre share, and PPR/natural-risk data. This enumerates the resource far more specifically than any sibling (meteo, transports, qualite_eau, etc.), making selection unambiguous.

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

Usage Guidelines4/5

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

Three representative example questions ('cette parcelle est constructible ?', 'prix au m² des maisons à l'Hermitage ?', 'quels risques à cette adresse ?') make the intended use cases concrete and easy to match. There are no explicit exclusions or named alternatives, but no sibling tool covers cadastre/urbanisme/prix, so the risk of misrouting is low.

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

historique_meteoHistorique météo mesuré à La RéunionA
Read-onlyIdempotent
Inspect

Météo MESURÉE les jours passés à La Réunion (974), par les stations Météo-France, de leur première année (1900 pour les plus anciennes) jusqu'à hier : pluie, températures minimales et maximales, ensoleillement (heures de soleil, jours gris), rafales, jour par jour sur deux mois au plus, par mois ou par année au-delà, comparés à la normale 1991-2020 de la station, avec ses records (chaleur, froid, pluie en un jour, rafale). Sur 3 jours ou moins (7 avec detail « heure »), depuis 2000, aussi HEURE PAR HEURE, nuit dernière comprise : à quelle heure il a plu, quand le soleil s'est caché, rafale max et à quelle heure. Pour toute question sur le temps qu'il a fait : « il a beaucoup plu ce mois-ci à Saint-Benoît ? », « record de chaleur à Saint-Denis ? », « à quelle heure a-t-il plu hier à Cilaos ? ». Pour maintenant, utiliser meteo_actuelle ; pour les jours à venir, prevision_meteo.

NameRequiredDescriptionDefault
auNoFin, même format. Pour « cette nuit » ou « ce matin », la date d'aujourd'hui.
duNoDébut : « 2026-10-01 », « 01/10/2026 », « 2026-10 » (un mois), « 2006 » (une année). Seul, c'est ce jour, ce mois ou cette année.
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.
joursNoLes N derniers jours jusqu'à hier (30 par défaut).
detailNo« heure » : heure par heure jusqu'à 7 jours (sinon automatique sur 3 jours ou moins) ; « jour » : sans le détail horaire.

TDQS

A4.2/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered by structured data. The description does add real behavioral context beyond that — data source (Météo-France stations), the 1900-onward coverage, the hourly-only-since-2000 limit, and the automatic aggregation (day-by-day up to two months, monthly/annual beyond) — but it does not describe the response shape or how comparisons to the 1991-2020 normal and records are presented. With annotations carrying safety, a 3 reflects solid but incomplete added context.

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

Conciseness4/5

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

It is a single dense paragraph that front-loads the core purpose and limits before the examples, and every sentence carries information. However, it runs long with no internal structure, mixing data coverage, granularity rules, examples, and sibling routing into one block, which makes scanning harder than necessary.

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

Completeness5/5

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

There is no output schema, yet the description covers what data is returned, at what resolution, the historical coverage limits, how results are compared to station normals and records, and when to use the alternatives. Nothing needed to call it correctly is missing.

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 coverage is 100%, so all five parameters (du, au, lieu, jours, detail) are already documented in the schema, giving a baseline of 3. The description's explanation of granularity degradation (day-by-day up to two months, then monthly or yearly) adds interpretive meaning for du/au ranges that the schema does not state, but it adds no syntax or format detail for lieu or jours beyond what the schema already provides.

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?

The description states a precise verb+resource: measured past weather in Réunion, from Météo-France stations, from 1900 to yesterday. It lists the exact variables (rain, min/max temps, sunshine, gusts) and explicitly differentiates itself from siblings meteo_actuelle (now) and prevision_meteo (future), so no inference is needed.

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?

It gives the exact conditions for calling it (any past-weather question), three concrete example questions, and names the two alternatives with the conditions that select them: meteo_actuelle for now, prevision_meteo for upcoming days. Explicit when/when-not routing is fully present.

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

mareeMarée à La RéunionA
Read-onlyIdempotent
Inspect

Hauteur de la mer mesurée chaque minute par les marégraphes du SHOM au Port (Pointe des Galets) et à Sainte-Marie : niveau actuel, marée montante ou descendante, dernières pleine et basse mer observées ; puis les prochaines pleines et basses mers sur deux jours, CALCULÉES par rundata d'après les mesures (pas la prédiction officielle du SHOM), à environ 15 à 20 min et 5 cm près : le dire, avec la précision donnée, et au-delà de l'horizon renvoyer au SHOM. Les heures calculées ne valent que près des deux marégraphes, à 15 km au plus (Le Port, La Possession, Saint-Paul, Saint-Gilles-les-Bains, Saint-Denis, Sainte-Marie, Sainte-Suzanne). Plus loin, la marée arrive à une autre heure : l'outil donne alors la hauteur mesurée au marégraphe le plus proche, sans heures, et le lien vers les horaires officiels du SHOM. Pour : « la marée monte ? », « c'est quand la marée basse demain ? », « niveau de la mer au Port ? ».

NameRequiredDescriptionDefault
lieuNoUn lieu de la côte (« Le Port », « Saint-Gilles », « Sainte-Marie ») pour le marégraphe le plus proche. Vide = les deux.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent/open-world safety, but the description adds substantive behavior: the times are computed by rundata rather than official SHOM predictions, accurate to ~15–20 min and 5 cm, and the tool degrades gracefully for far-away locations (returns nearest-gauge height with no times plus a link to official schedules). That degradation contract is exactly what an agent needs and is not in any structured field.

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

Conciseness4/5

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

Dense but front-loaded: the payload comes first, then the accuracy caveat, then the geographic limit, then example queries. Some clauses (repeating the accuracy figures and the town list) could be trimmed, but nothing is filler.

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

Completeness5/5

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

No output schema exists, and the description fully compensates by enumerating the returned fields (current height, trend, last high/low, next events over two days) and the fallback return shape for distant locations. Nothing an agent needs in order to call it or interpret the result is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the single `lieu` parameter is already documented, including the empty-means-both default. The description adds real value by explaining the nearest-gauge resolution behavior and listing the covered coastal towns (Le Port, La Possession, Saint-Paul, Saint-Gilles, Saint-Denis, Sainte-Marie, Sainte-Suzanne), which clarifies what a valid place string means.

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?

States a specific resource (sea height measured every minute by SHOM tide gauges at Le Port and Sainte-Marie) and the exact payload (current level, rising/falling trend, last observed high/low, next highs/lows over two days). Distinguishes itself clearly from any sibling by naming the measurement source and the computed-vs-official-prediction distinction.

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?

Gives explicit trigger phrasings ("la marée monte ?", "c'est quand la marée basse demain ?", "niveau de la mer au Port ?") and explicit boundaries: computed hours are only valid within ~15 km of the two gauges, and beyond that horizon the agent should defer to SHOM. Both the when-to-use and when-not-to-use cases are spelled out.

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

meteo_actuelleMétéo mesurée en ce moment à La RéunionA
Read-onlyIdempotent
Inspect

Météo MESURÉE maintenant à La Réunion (974) : température de l'air, pluie (6 dernières minutes et dernière heure), humidité, vent et rafales, pression, temps présent, à la station la plus représentative du lieu demandé, et la pluie vue par le radar de Météo-France au lieu même (utile là où il n'y a pas de pluviomètre : Mafate, cirques, Hauts). Avec un lieu, aussi la pluie des dernières heures au pluviomètre le plus proche (pluie_recente) : heure par heure sur 12 à 24 h, l'heure de la dernière pluie et le cumul depuis minuit, pour « il a plu quand à Saint-Joseph ? », « combien est-il tombé cette nuit ? ». Pour toute question sur le temps qu'il fait en ce moment : « quel temps fait-il à Saint-Denis ? », « il fait chaud à la plage de l'Hermitage ? », « il pleut à Cilaos ? », « y a-t-il du vent à Saint-Pierre ? », « il fait froid au Maïdo ? ». Renvoie des mesures datées avec la station, sa distance, son altitude, et un avertissement quand le lieu a un autre microclimat (altitude, versant au vent ou sous le vent). Pour plus tard (demain, ce soir, ce week-end), utiliser prevision_meteo. / Current MEASURED weather in Réunion Island (air temperature, rain, humidity, wind, pressure, present weather) at the most representative station for a place, and with a place the rain of the last 12 to 24 hours hour by hour, the time of the last rain and the total since midnight. Use for 'what is the weather like now in <place in Réunion>', 'when did it last rain'; for later today or the coming days, use prevision_meteo.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so safety is covered. The description adds meaningful behavior beyond that: measurements are dated, include the station name, distance and altitude, and produce a microclimate warning when the place has a different exposure. It does not discuss failure modes such as an unknown place name, which keeps it just short of a 5.

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?

The core purpose is front-loaded, but the description is bloated with repeated example questions and a nearly complete English duplicate of the French text. The extra detail is useful but could be trimmed without losing selection value, so it sits at adequate rather than efficient.

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

Completeness5/5

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

For a one-parameter tool with no output schema and rich annotations, the description covers what is measured, how the location is resolved, what extra recent-rain history is returned, caveats about microclimates, and when to use the forecast tool instead. An agent has everything needed to call it correctly and interpret the result.

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

Parameters4/5

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

Schema coverage is 100%, so the single parameter is already well documented. The description still adds value by explaining the consequence of the parameter: the nearest representative station drives most measurements, radar rain is read at the exact place, and recent rain is read at the nearest rain gauge. That clarifies what 'lieu' actually controls beyond the schema's list of accepted place formats.

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?

The description states a specific verb and resource: current measured weather in Réunion, listing the exact variables (temperature, rain, humidity, wind, pressure, present weather) and the station/radar sourcing logic. It explicitly distinguishes itself from the forecast sibling by saying to use prevision_meteo for later periods. An agent can tell exactly what this tool returns versus the alternatives.

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?

It gives explicit when-to-use examples such as 'quel temps fait-il à Saint-Denis ?' and 'il pleut à Cilaos ?', plus an explicit exclusion: 'Pour plus tard (demain, ce soir, ce week-end), utiliser prevision_meteo.' The routing condition between this tool and the forecast sibling is unambiguous.

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

prevision_meteoPrévision météo à La RéunionA
Read-onlyIdempotent
Inspect

PRÉVISION météo (modèle numérique, pas une mesure) pour un lieu de La Réunion (974), de ce soir à 7 jours : ciel, températures min et max ramenées à l'altitude du lieu, pluie, vent et rafales, par jour et par tranches de 3 h, indice UV du jour, et la confiance de chaque jour (forte, moyenne ou faible : accord des 51 scénarios de l'ensemble ECMWF, pas une probabilité). Pour toute question sur le temps à venir : « il va pleuvoir demain à Saint-Denis ? », « quel temps ce week-end à Cilaos ? », « il fera beau cet après-midi à l'Hermitage ? », « prévisions pour la Plaine des Cafres samedi ». Dans les Hauts (au-dessus de 800 m) : la mer de nuages du matin, de 6 h à 9 h et de 9 h à 12 h (bloc mer_de_nuages), pour « est-ce dégagé au Maïdo demain matin ? », « on sera au-dessus des nuages au Piton des Neiges ? ». Partout, le ciel de la nuit, de 18 h à 6 h, dégagé ou couvert, et dans les Hauts au-dessus ou dans les nuages (bloc ciel_de_nuit), pour « le ciel sera dégagé ce soir pour voir les étoiles au Maïdo ? ». Chaque réponse est étiquetée « prévision » avec ses limites (le modèle ne voit pas les microclimats de l'île) ; pour un cyclone, renvoie à la vigilance officielle de Météo-France. Pour le temps qu'il fait maintenant, utiliser meteo_actuelle. / Weather FORECAST (numerical model, not a measurement) for a place in Réunion Island, up to 7 days: 'will it rain tomorrow in Saint-Pierre?', 'weather this weekend in Cilaos?'. Always labelled as a forecast.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island.
quandNoQuand, en texte libre : « aujourd'hui », « cet après-midi », « ce soir », « cette nuit », « demain », « demain matin », « après-demain », un jour (« samedi »), « ce week-end », « dans 3 jours ». Vide = prochaines 24 h et jours suivants. / When, free text (today, tonight, tomorrow, a weekday, weekend); empty = next 24 h and following days.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, and the description adds real context beyond them: the output is a model forecast, not a measurement; every response is labelled 'prévision'; the model does not resolve the island's microclimates; and 'confidence' means agreement among the 51 ECMWF ensemble scenarios, not a probability. It omits explicit pagination or latency details, but for a read-only forecast tool that is a minor gap.

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?

Structure is strong: purpose and output contents come first, then trigger examples, conditional blocks, limitations, and the sibling handoff. However, it repeats itself in the French and English versions and spends roughly eight quoted example questions plus two block descriptions, which is heavy for a two-parameter tool.

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

Completeness5/5

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

No output schema exists, so the description carries the full burden of explaining the return values, and it does: per-day and per-3-hour granularity, the mer_de_nuages and ciel_de_nuit blocks with their time windows and altitude conditions, the confidence scale, and the forecast disclaimer. An agent knows what it will receive and how to interpret it.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond it: it constrains the forecast horizon ('de ce soir à 7 jours') and thereby tells the agent that longer-range requests are out of scope, and it frames the altitude-dependent blocks that the 'lieu' parameter value implicitly selects. The free-text place and time examples largely duplicate the schema.

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?

The description states a specific verb and resource (weather forecast from a numerical model, not a measurement) for Réunion Island, and enumerates exactly what is returned: sky conditions, min/max temperatures adjusted for the location's altitude, rain, wind and gusts, 3-hourly breakdowns, UV index, and per-day confidence. It explicitly distinguishes itself from the sibling meteo_actuelle ('pour le temps qu'il fait maintenant, utiliser meteo_actuelle') and implicitly from historique_meteo and vigilance_meteo.

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?

It includes explicit when-to-use triggers with quoted user questions ('il va pleuvoir demain à Saint-Denis ?', 'quel temps ce week-end à Cilaos ?'), describes which conditional output blocks apply (mer_de_nuages only above 800 m, ciel_de_nuit everywhere) with their own trigger questions, and gives when-not-to-use routing: meteo_actuelle for current conditions, Météo-France's official vigilance for cyclones.

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

qualite_airQualité de l'air à La RéunionA
Read-onlyIdempotent
Inspect

Qualité de l'air à La Réunion (974) par commune : indice ATMO du jour et du lendemain calculé par Atmo Réunion (1 bon à 6 extrêmement mauvais) et polluant en cause (particules, ozone, dioxyde d'azote, dioxyde de soufre). Pour : « l'air est pollué à Saint-Louis ? », « qualité de l'air aujourd'hui à Saint-Denis ? », « je peux faire du sport dehors ? ». Sans lieu : toute l'île.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and open-world, so the safety profile is covered. The description adds value beyond that: the data source, the numeric scale and its meaning, that both today and tomorrow are returned, and that omitting the location widens scope to the entire island.

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

Conciseness4/5

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

Front-loads the resource and scope, then the returned fields, then the example intents in a single dense paragraph with no filler. Slightly compressed by the run-on parentheticals, but every clause carries information.

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 single optional parameter with no output schema, the description covers what is returned (ATMO index today and tomorrow plus the responsible pollutant) and the no-location default. Nothing essential for correct invocation is missing, though a note on data freshness or update cadence would have completed it.

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 coverage is 100%, and the schema description already explains accepted place forms (commune, plage, quartier, cirque, sommet, coordinates) and the empty-means-whole-island rule. The description's 'Sans lieu : toute l'île' merely restates that, so baseline 3 applies.

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?

States a specific resource (qualité de l'air à La Réunion) with scope (par commune), data source (Atmo Réunion), what is returned (indice ATMO du jour et du lendemain, polluant en cause) and the scale (1 bon à 6 extrêmement mauvais). This clearly separates it from weather siblings like meteo_actuelle or vigilance_meteo, which cover forecasts rather than air quality.

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

Usage Guidelines4/5

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

Provides concrete example user questions («l'air est pollué à Saint-Louis ?», «je peux faire du sport dehors ?») that map intents to this tool, plus a fallback rule: with no location, coverage is the whole island. It does not explicitly exclude or name a sibling alternative, which keeps it at 4 rather than 5.

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

qualite_eauQualité de l'eau à La Réunion : robinet et baignadeA
Read-onlyIdempotent
Inspect

Qualité de l'eau à La Réunion (974), d'après les analyses de l'ARS : eau du robinet réseau par réseau (dernière analyse, conformité, germes ou paramètres au-dessus des limites sur 6 mois) et eau de baignade des plages et bassins contrôlés (Hermitage, Boucan Canot, La Saline, Saint-Pierre, Étang-Salé, Grande Anse, bassin Bleu, bassin Dinan…), prélèvement par prélèvement. Pour : « l'eau du robinet est potable à Cilaos ? », « on peut se baigner à l'Hermitage ? », « l'eau du bassin Dinan est propre ? ». Avec la baignade, la règle requin de l'arrêté préfectoral (bande des 300 m) et les zones permises : ne jamais dire qu'un endroit est sans requin ou sans risque, ni qu'une zone est ouverte aujourd'hui, renvoyer au drapeau sur place. Les avis « ne pas boire » en cours sont dans coupures_eau.

NameRequiredDescriptionDefault
eauNo« robinet » (eau potable) ou « baignade » ; vide = d'après la question et le lieu.
lieuNoCommune, quartier, plage ou bassin (« Ravine des Cabris », « plage de l'Hermitage », « bassin Bleu »).

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the description focuses on what the data means: latest analysis, compliance, and exceedances over a 6-month window, per sampling point. It adds a real behavioral constraint (shark-rule 300 m band, permitted zones, never declare safety) that no annotation carries. It stops short of describing result shape precisely, hence not a 5.

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

Conciseness4/5

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

Front-loaded with scope and data source, then examples, then the safety caveat — a logical order in one paragraph. It is dense but the long list of beaches/basins is somewhat padded relative to the value it adds.

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?

With no output schema, the description does the work of explaining what comes back (latest analysis, compliance status, germs/parameters over limits on 6 months, per sampling). Combined with zero required params and the safety caveat, an agent has enough to call correctly; only the exact field/response shape is unstated.

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 100% and both params (eau enum, lieu) are fully documented in the schema, so baseline is 3. The description reinforces 'réseau par réseau' and 'prélèvement par prélèvement' but adds no syntax or format guidance beyond the schema.

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?

States a specific verb+resource: ARS water-quality analyses for Réunion, split into drinking-water (network by network) and bathing water (beach/basin, sample by sample). It is immediately separable from siblings such as coupures_eau and temperature_mer, and even names coupures_eau as the place where 'do not drink' advisories live.

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?

Gives concrete trigger questions («l'eau du robinet est potable à Cilaos?», «on peut se baigner à l'Hermitage?») and an explicit hand-off rule to coupures_eau for in-force 'ne pas boire' advisories. It also states the negative usage rule: never assert a place is shark-free or risk-free, or that a zone is open today — defer to the on-site flag.

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

restrictions_eauSécheresse : restrictions d'eau à La RéunionA
Read-onlyIdempotent
Inspect

Restrictions d'eau en cas de sécheresse à La Réunion (974), d'après l'arrêté préfectoral en vigueur (VigiEau) : niveau par commune (vigilance, alerte, alerte renforcée, crise) pour l'eau du robinet, les rivières et sources, les nappes, et ce qui est interdit (arrosage, lavage de voiture, piscine…) pour un particulier, une entreprise, une collectivité ou une exploitation agricole. Pour : « restrictions d'eau à Saint-Joseph ? », « j'ai le droit d'arroser mon jardin au Port ? », « je peux remplir ma piscine ? ». Sans lieu : toute l'île.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.
profilNoPour qui (« exploitation » = agriculteur) ; par défaut un particulier.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, and open-world behavior. The description adds meaningful domain context: the source is the current prefectoral decree via VigiEau, the levels and affected water categories are enumerated, and the profile-dependent nature of the answer is explained. It stops short of describing data freshness or output structure.

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

Conciseness4/5

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

The purpose is front-loaded in a single dense sentence, followed by example queries that earn their place by clarifying trigger scenarios. It is efficient, though the long sentence packs several lists and could be slightly easier to scan.

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 read-only lookup tool with a fully documented two-parameter schema and no output schema, the description covers domain, source, levels, profiles, and default behavior. It implies the returned content (level per commune plus prohibited uses) but could be slightly more explicit about the shape of the response.

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 100%, so the schema already documents both parameters thoroughly, including location formats, the default whole-island behavior, and the profile enum. The description mostly restates those semantics (whole island when no location; default particulier) without adding new format or interpretation guidance.

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?

The description states a specific resource (drought-related water restrictions in Réunion), the authoritative source, the levels tracked, the water sources covered, and the prohibited uses. An agent can distinguish it from sibling tools such as coupures_eau or qualite_eau by the drought-restriction framing.

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

Usage Guidelines4/5

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

It gives clear example user queries that should trigger the tool, including location-specific and permission questions, and notes that omitting a location returns island-wide results. It does not explicitly say when to prefer a sibling tool like coupures_eau, but the context is clear enough.

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

resume_du_jourRésumé du jour pour une commune de La RéunionA
Read-onlyIdempotent
Inspect

Tout ce qui compte aujourd'hui dans une commune de La Réunion (974), en un appel : météo MESURÉE maintenant et PRÉVISION du jour, vigilance de sa zone, mer, qualité de l'air, électricité, routes et blocages signalés par les médias, actualités de la commune, coupures d'eau, événements du jour, jour férié ou vacances, soleil, mairie ouverte ou non, marché du jour, bennes des déchèteries (Ouest), prix maximum des carburants du mois, où trouver la pharmacie de garde (3237.fr). Un lieu (plage, quartier, sommet) est rapporté à sa commune. Ce qui manque est listé dans non_inclus avec l'outil à appeler. Pour : « quoi de neuf à Saint-Paul aujourd'hui ? », « ma journée au Tampon ».

NameRequiredDescriptionDefault
lieuYesCommune ou lieu de La Réunion (« Saint-Paul », « Boucan Canot », « Cilaos »), rapporté à sa commune.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, open-world, non-destructive, so the safety profile is settled. The description adds genuinely non-schema behavior: this is a one-call fan-in across ~15 sources, place names are normalized to their commune, and gaps are surfaced in a non_inclus field naming the tool to call instead. It does not mention latency or partial-source failure, which matters for an aggregator, keeping it below 5.

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

Conciseness4/5

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

The purpose is front-loaded in the opening clause and the trigger examples are last, which is the right order. The middle enumeration is long, but each listed domain is load-bearing since it tells the agent what it will and won't receive; only the fuel-price and pharmacy entries feel like padding.

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?

There is no output schema, so the description must carry the return shape, and it does by listing the covered domains and the non_inclus convention. For an aggregation tool of this breadth it is adequately complete, though it says nothing about how partial failures or stale sub-sources are reported in the response.

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 coverage is 100% and the single parameter is fully described there, including that a place is 'rapporté à sa commune' with examples. The description repeats that same mapping and adds category examples (plage, quartier, sommet), which is marginal value rather than new semantics. Baseline 3 is appropriate when the schema already does the work.

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?

Names a specific resource (a 'résumé du jour' for one Réunion commune) and enumerates exactly what it aggregates: measured weather, forecast, vigilance, sea, air quality, electricity, roads, news, water cuts, events, holidays, town hall status, market, déchèteries, fuel prices, on-call pharmacy. That enumeration uniquely distinguishes it from every sibling (meteo_actuelle, vigilance_meteo, actualites, coupures_eau, etc.), which each cover one slice.

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

Usage Guidelines4/5

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

The 'Pour :' clause gives concrete trigger phrasings ('quoi de neuf à Saint-Paul aujourd'hui ?', 'ma journée au Tampon') that map cleanly onto user intent, and the note that missing items appear in non_inclus with the tool to call routes the agent onward. However, it never states an explicit exclusion (e.g. 'not for historical data or a single-domain deep dive – prefer the dedicated tool'), so the when-not is left implicit.

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

sentiers_randonneeRandonnée à La Réunion : sentiers ouverts ou fermés, traces GPS (GPX), distance et déniveléA
Read-onlyIdempotent
Inspect

Sentiers de randonnée et routes forestières de La Réunion (974) ouverts ou fermés, d'après la carte de l'ONF tenue à jour avec les arrêtés préfectoraux : cause de la fermeture (éboulement, sentier dégradé, travaux, coulée), date de réouverture prévue. Par nom de sentier, autour d'un lieu (Maïdo, Piton des Neiges, Bélouve, Roche Plate…), dans un cirque (Mafate, Cilaos, Salazie) ou une commune ; sans lieu, tous les sentiers fermés de l'île. Chaque sentier et chaque randonnée a sa trace GPS (lien GPX), sa longueur et son dénivelé (altitudes de l'IGN) ; les itinéraires complets d'OpenStreetMap (GR R1, R2, R3, Piton des Neiges, Roche Écrite, Dolomieu…) sont donnés avec l'état des sentiers de l'ONF qu'ils empruntent. Un sentier fermé est interdit, même avec la trace ; « hors gestion ONF » n'est pas dit ouvert ; donner le lien trace_gpx. Pour : « sentiers fermés à Mafate ? », « la trace GPS du Piton des Neiges ? », « une rando de 10 km à Cilaos ? » (longueur_min_km, longueur_max_km, denivele_max_m filtrent les itinéraires et sentiers proposés). Dès qu'un sentier de l'ONF d'un itinéraire est fermé, la réponse porte un champ avertissement, à donner en premier. Avec un lieu ou un sentier, aussi les aires d'accueil de l'ONF autour (champ aires_accueil), sous le nom que leur donne l'ONF.

NameRequiredDescriptionDefault
lieuNoUn sentier ou une randonnée (« sentier de la Roche Pendue », « Piton des Neiges », « GR R2 »), un lieu (« Maïdo »), un cirque (« Mafate ») ou une commune ; vide = toute l'île.
denivele_max_mNoDénivelé positif maximal en m (« sans trop de dénivelé » : 400).
longueur_max_kmNoLongueur maximale en km (« une rando de 10 km » : 12 ; « une petite balade » : 5).
longueur_min_kmNoLongueur minimale en km d'une randonnée proposée (« une rando de 10 km » : 8).

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already declare a safe read-only, idempotent, open-world lookup, and the description adds substantive policy the schema cannot express: a closed trail is forbidden even with a trace, 'hors gestion ONF' does not mean open, always surface the avertissement field first, and always give the trace_gpx link. It also names a returned side field (aires_accueil).

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?

The key facts (what it is, how to scope it, the closure warning) come first, but it is a dense run-on block built from semicolons and parentheticals that packs multiple ideas per sentence. Every clause is relevant, yet the lack of structure makes it slower to parse than needed.

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

Completeness5/5

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

Four optional parameters, no output schema, and the description compensates by naming the fields an agent will receive (avertissement, trace_gpx, longueur, dénivelé, aires_accueil) and the interpretive rules for interpreting them. Nothing needed to call it correctly or report results is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description goes further by explaining that longueur_min_km, longueur_max_km and denivele_max_m filter both itineraries and individual trails, and by clarifying that lieu accepts a trail, place, cirque or commune and that empty means the whole island.

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?

States a concrete resource and scope: ONF-maintained hiking trails and forest roads on Réunion, with open/closed status, closure cause, GPX traces, length and elevation. It also covers OSM itineraries and names the data sources (ONF, préfecture, IGN, OpenStreetMap), which no sibling tool touches.

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

Usage Guidelines4/5

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

Gives explicit routing cues: by trail name, around a place (Maïdo, Piton des Neiges), in a cirque (Mafate, Cilaos, Salazie), by commune, or with no location for all closed trails island-wide, plus three literal example questions. No sibling alternative is named, but none of the listed siblings overlaps this domain.

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

sites_sans_reponseSites publics de La Réunion sans réponseA
Read-onlyIdempotent
Inspect

Sites publics de La Réunion (974) qui ne répondent pas en ce moment, revérifiés chaque jour : pour chacun, depuis quand, le dernier constat en mots simples (erreur du serveur, page de maintenance, pas de réponse dans le délai…) et ce qui manque donc sur rundata.re (avis de coupure d'eau, bulletins du volcan, houle…). Un site qui répond de nouveau sort de la liste. Ne dit jamais pourquoi un site se tait. Pour : « le site de l'OVPF marche ? », « pourquoi pas de bulletin du volcan ? », « le site de Sudéau ne répond plus ? ».

NameRequiredDescriptionDefault
quoiNoUn site, une commune ou un thème : « volcan », « eau », « Saint-Joseph ». Vide = toute la liste.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the read-only, idempotent, open-world profile, and the description adds genuinely useful behavior beyond them: daily re-verification, the fact that a site recovering drops out of the list, and the stated limitation that it never explains the cause. It does not describe pagination or list size.

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

Conciseness4/5

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

One dense paragraph that front-loads the definition before listing contents, caveats, and example phrasings. It is longer than typical but nearly every clause carries information; the enumerated examples could be trimmed without loss.

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

Completeness5/5

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

No output schema exists, and the description compensates by spelling out the fields returned per site, the freshness guarantee, and the exclusion rule for recovered sites. For a one-optional-parameter read tool with existing annotations, nothing an agent needs is missing.

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 coverage is 100% and the single parameter 'quoi' already documents that it accepts a site, commune, or theme and that empty means the whole list. The description adds no further detail about the filter's matching behavior, so the baseline of 3 applies.

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?

States a specific resource (public sites in Réunion that are not responding right now), its refresh cadence, and exactly what each entry contains (since when, last observation in plain words, what is therefore missing on rundata.re). It is clearly distinguishable from every sibling, none of which report site availability.

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

Usage Guidelines4/5

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

Concrete example queries (OVPF, volcano bulletin, Sudéau) make the intended trigger context unmistakable, and 'Ne dit jamais pourquoi un site se tait' sets an explicit boundary on what the tool will not answer. No sibling is named as an alternative, so it stops short of the top score.

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

sources_donneesSources des donnéesA
Read-onlyIdempotent
Inspect

Sources de données utilisées par ce serveur (organisme, licence, attribution à citer), ce qui est couvert ou pas encore, la liste à jour de tous les outils, les dernières nouveautés, et rundata.re en chiffres (sources, producteurs, licences, stations, défibrillateurs, sentiers). Pour : « d'où viennent tes données ? », « combien de sources lit rundata.re ? », « c'est open data ? ». À appeler avant de conclure qu'un outil ou une donnée n'existe pas.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent, openWorld and non-destructive, so the safety profile is settled. The description adds that this is a self-describing catalogue including coverage gaps and recent changes, which tells the agent what kind of content to expect. It does not state response shape or size, but with no output schema this remains a minor gap for a zero-argument metadata read.

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

Conciseness4/5

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

Content is front-loaded with the resource definition, then examples, then the key routing rule. The first sentence is a long run-on enumeration of contents, dense but each item earns its place by telling the agent what it can look up.

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 zero-parameter, no-output-schema catalogue tool, the description is nearly sufficient: it covers contents, example intents, and the anti-hallucination use case. Only the freshness/authority of the "liste à jour" and the response format are left unstated.

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

Parameters4/5

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

The tool takes zero parameters, so the baseline of 4 applies; there is nothing for the description to disambiguate. It correctly implies a parameterless, whole-catalogue read.

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?

The description enumerates exactly what the tool returns: source organism, licence, attribution, coverage gaps, current tool list, recent additions, and aggregate counts (sources, producers, licences, stations, defibrillators, trails). This clearly separates it from the 28 domain-data siblings, which return measurements, not catalogue metadata.

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?

It gives three concrete trigger questions ("d'où viennent tes données ?", "combien de sources lit rundata.re ?", "c'est open data ?") and an explicit exclusion rule: call it before concluding that a tool or dataset does not exist. That is a real when-to-use / when-not-to-conclude directive, not just context.

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

sportSport à La Réunion : matchs, résultats, annulations, Grand RaidA
Read-onlyIdempotent
Inspect

Sport à La Réunion (974) : matchs à venir et derniers résultats officiels des championnats régionaux de handball (D1) et de volley (R1 et R2, hommes et femmes, toutes les poules), avec les clubs en toutes lettres (VBSP = Volley-Ball de Saint-Pierre) et la commune où l'on joue, les matchs annulés ou reportés (avis de la Ligue de volley, actualité locale), classements, rallyes et sport automobile (calendrier de la Ligue), Grand Raid (courses, partants, abandons, podiums), les programmes sportifs publiés par les communes (le lien du document de la mairie, sans son contenu). Les régates et le golf ne sont pas repris : la réponse dit pourquoi. Pour : « match de hand ce week-end à Saint-Pierre ? », « prochain rallye ? », « qui a gagné le Grand Raid ? ».

NameRequiredDescriptionDefault
lieuNoUne commune (« Saint-Paul »), une partie de l'île (« le sud », « l'ouest », « le nord », « l'est ») ou un club (« VBSP », « Tampon Gecko Volley ») : ce qui s'y joue et ses clubs à l'extérieur. Vide = toute l'île.
quandNo« aujourd_hui », « demain », « samedi » ou « dimanche » (le prochain), « ce_week_end », « a_venir » (14 jours) ou « resultats » ; vide = les deux.
sportNoLe sport ; vide = tous. « football » et « basket » renvoient l'actualité seulement (pas de résultats officiels lus).

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, open-world, and non-destructive behavior. The description adds useful behavioral context beyond annotations: municipal sports programs are returned as links without their content, and excluded topics produce an explanation rather than silence.

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

Conciseness4/5

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

The description is dense and somewhat long, but it is front-loaded with the core sport resource and stays focused on scope, exclusions, and examples. Most details earn their place for a broad multi-sport tool, though the single run-on sentence reduces scanability.

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?

Given the tool’s breadth and lack of an output schema, the description is quite complete: it covers covered sports, excluded topics, link-only municipal documents, and representative query patterns. Minor gaps remain around return format and how multi-sport or multi-location results are combined.

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 100%, and the parameter descriptions already explain lieu, quand, sport, enum values, and empty-value defaults. The main description reinforces some semantics with examples like VBSP = Volley-Ball de Saint-Pierre, but does not add much parameter guidance beyond the schema.

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?

The description states a specific resource and scope: upcoming matches, results, cancellations, standings, motorsport, Grand Raid, and municipal sports programs in La Réunion. It also explicitly says what is excluded (regattas and golf) and gives example user questions, so an agent can distinguish it from general news or events tools.

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

Usage Guidelines4/5

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

Usage is clearly framed through example queries such as « match de hand ce week-end à Saint-Pierre ? » and « qui a gagné le Grand Raid ? ». Exclusions are explicit for regattas and golf, and football/basket are limited to news only, though no sibling tool alternatives are named.

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

temperature_merTempérature de la mer et houle à La RéunionA
Read-onlyIdempotent
Inspect

La mer à La Réunion (974), près d'une plage ou d'un lieu côtier. Température de l'eau MESURÉE (satellite) : « la mer est à combien à Saint-Leu ? », « l'eau est bonne à Boucan ? » ; houle et vagues PRÉVUES (modèle, 4 jours) : « la houle à Saint-Leu ? », « ça surfe à Saint-Pierre demain ? », « la mer est grosse à Saint-Gilles ? ». La mesure (avec sa date et sa distance) et la prévision des vagues (hauteur, période, direction) sont dans deux blocs séparés.

NameRequiredDescriptionDefault
lieuNoLieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so safety is covered. The description adds genuine behavioral context beyond that: the measurement is satellite-derived and carries its own date and distance, the forecast is a 4-day model, and results arrive in two separate blocks.

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

Conciseness4/5

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

The scope and the measured/forecast split are front-loaded before the quoted example queries. It is dense but every element (data source, horizon, output layout) earns its place; the three examples are slightly redundant but useful for intent matching.

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

Completeness5/5

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

With no output schema, the description compensates fully by explaining that results come in two separate blocks and what each contains (measurement with date and distance; wave height, period, direction). An agent knows what to expect before calling.

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 100% and the single 'lieu' parameter (commune, beach, coordinates, empty = whole island) is fully documented there. The description only reinforces that the location should be coastal/beach-adjacent, adding marginal meaning beyond the schema, so the baseline 3 applies.

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?

The description names a specific resource (sea temperature and swell in La Réunion) and separates two distinct data products: satellite-MEASURED water temperature and model-FORECAST waves. That distinction alone differentiates it from siblings like maree, prevision_meteo and meteo_actuelle, which do not focus on sea state.

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

Usage Guidelines4/5

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

Concrete example phrasings ('la mer est à combien à Saint-Leu ?', 'ça surfe à Saint-Pierre demain ?') make the triggering context very clear, and the measured-vs-forecast split tells the agent which question maps to which data. It stops short of explicitly naming when not to use it or which sibling to prefer for generic weather.

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

velos_libre_serviceVélos en libre-service à La RéunionA
Read-onlyIdempotent
Inspect

Vélos à assistance électrique en libre-service Altervélo (Saint-Pierre, Saint-Louis, L'Étang-Salé), en direct : pour chaque station, le nombre de vélos à prendre et de places libres pour en rendre un, et les stations les plus proches d'un lieu. Pour : « il reste des vélos à la station IUT ? », « où prendre un vélo près du front de mer de Saint-Pierre ? », « je peux rendre mon vélo au pôle d'échanges de Saint-Louis ? ».

NameRequiredDescriptionDefault
lieuNoNom d'une station (« IUT », « Front de mer »), un lieu ou une commune (« Saint-Pierre », « plage de l'Étang-Salé »). Vide = tout le réseau.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is fully covered. The description adds two genuinely useful facts not in the annotations: the data is live ("en direct") and the coverage is limited to Saint-Pierre, Saint-Louis and L'Étang-Salé. It says nothing about refresh cadence, outage behavior, or result ordering beyond "les plus proches".

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

Conciseness4/5

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

One dense sentence covers resource, coverage area, and payload, followed by three example phrasings introduced by "Pour :". Front-loading is good and there is little waste, though the sentence is long and the list of commune names inside parentheses adds bulk.

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?

With no output schema, the description carries the burden of describing the return shape and does so — per-station bike count, free dock count, and nearest-station results. Combined with annotations and full schema coverage, an agent has enough to call it correctly. Only freshness/refresh and ordering details are missing.

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

Parameters4/5

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

Schema coverage is 100% and the single optional `lieu` parameter is documented as accepting a station name, place, or commune with empty meaning the whole network. The description adds meaning beyond that by revealing the behavioral effect of the parameter — supplying a place yields the nearest stations, i.e. a proximity ranking rather than a strict filter.

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

Purpose4/5

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

The description names a concrete resource (Altervélo self-service e-bikes) and states exactly what is returned per station: bikes available and free docks, plus the nearest stations to a place. It is far more specific than the title alone. It never distinguishes itself from the sibling `transports`, which an agent could plausibly confuse with bike-share availability, so it falls short of a 5.

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

Usage Guidelines4/5

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

Three quoted example questions ("il reste des vélos à la station IUT?", "où prendre un vélo près du front de mer", "je peux rendre mon vélo au pôle d'échanges") make the intended triggering contexts concrete, including both availability and return-capacity use cases. There is no explicit exclusion or named alternative, which keeps it out of 5 territory.

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

volcan_seismesPiton de la Fournaise et séismes à La RéunionA
Read-onlyIdempotent
Inspect

État du volcan du Piton de la Fournaise et séismes à La Réunion (974) : éruption en cours ou non, niveau du dispositif ORSEC (vigilance, alerte 1, alerte 2…), date de la dernière éruption, accès à l'Enclos Fouqué, dernières publications de l'Observatoire volcanologique (OVPF-IPGP) et séismes localisés par l'OVPF ces 30 derniers jours, sous le volcan (aussi par jour) et ailleurs sur l'île. Pour : « le volcan est en éruption ? », « on peut monter au volcan ? », « il y a eu un séisme ? ».

NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds substantive behavioral context beyond that: the earthquake window is explicitly 30 days, results can be broken down by day and by area (under the volcano vs. elsewhere on the island), and the source is OVPF-IPGP. It stops short of describing freshness/update cadence or the response shape, hence 4.

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

Conciseness4/5

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

One dense front-loaded sentence delivers the resource and its full content inventory, followed by a short intent-mapping clause. The enumeration is long but each item is a distinct returned field an agent would otherwise have to guess at, so it earns its space; slight trimming of the ORSEC parenthetical would tighten it.

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?

There is no output schema, so the description carries the burden of explaining return content — and it does, listing eruption status, ORSEC level, access conditions, publications, and earthquake coverage. It leaves unanswered only secondary details like update frequency and exact formatting for the per-day earthquake breakdown.

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

Parameters4/5

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

The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to compensate for. It correctly presents the tool as a parameter-free status query rather than suggesting any filtering options.

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?

The description names a specific resource (Piton de la Fournaise volcano status and Réunion earthquakes) and enumerates the exact content returned: eruption status, ORSEC level, last eruption date, Enclos Fouqué access, OVPF publications, and the last 30 days of earthquakes. No sibling tool covers volcano or seismic data, so it is clearly distinguishable from the weather/water/traffic tools in the list.

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

Usage Guidelines4/5

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

The closing clause maps concrete user intents to the tool ("le volcan est en éruption ?", "on peut monter au volcan ?", "il y a eu un séisme ?"), which is strong guidance for intent routing. It does not state exclusions or name alternatives, but no sibling overlaps this domain, so the gap is minor.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 27 tool updatesv0.203.95
    • Changedactualites4 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / heures / description
        Previous value: -"Depuis combien d'heures (1 à 72, 24 par défaut). / How many hours back (1-72, default 24)."New value: +"Depuis combien d'heures (1 à 72, 24 par défaut)."
      • changedInput schema / properties / lieu / description
        Previous value: -"Une commune ou un lieu (« Saint-Pierre », « Ravine des Cabris », « Saint-Gilles ») : les informations qui le nomment. Vide = toute l'île. / A town or place; empty = whole island."New value: +"Une commune ou un lieu (« Saint-Pierre », « Ravine des Cabris », « Saint-Gilles ») : les informations qui le nomment. Vide = toute l'île."
      • changedInput schema / properties / sujet / description
        Previous value: -"« mobilisation » (manifestations, blocages, barrages), « route », « meteo », « volcan », « eau », « securite », « sante », « politique », « culture », « sport », ou des mots du titre ; vide = tout. / Subject or words; empty = all."New value: +"« mobilisation » (manifestations, blocages, barrages), « route », « meteo », « volcan », « eau », « securite », « sante », « politique », « culture », « sport », ou des mots du titre ; vide = tout."
    • Changedannuaire_services_publics3 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
      • changedInput schema / properties / quoi / description
        Previous value: -"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences », « enfants » pour les lieux où aller avec eux. / The office sought, or 'carburant', 'pharmacie', 'urgences', 'enfants'."New value: +"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences », « enfants » pour les lieux où aller avec eux."
    • Changedbornes_recharge3 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Un lieu ou une commune (« Saint-Gilles-les-Bains », « Le Tampon », « aéroport Roland-Garros »). Vide = toute l'île. / A place or town; empty = whole island."New value: +"Un lieu ou une commune (« Saint-Gilles-les-Bains », « Le Tampon », « aéroport Roland-Garros »). Vide = toute l'île."
      • changedInput schema / properties / rapide / description
        Previous value: -"Seulement la recharge rapide (50 kW ou plus). / Fast charging only (50 kW or more)."New value: +"Seulement la recharge rapide (50 kW ou plus)."
    • Changedcalendrier2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedcoupures_eau2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedcrues_rivieres2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Une rivière (« rivière des Galets », « ravine Saint-Gilles ») ou un lieu (« Salazie », « Saint-Benoît ») pour les stations proches. Vide = toute l'île. / A river or a place; empty = whole island."New value: +"Une rivière (« rivière des Galets », « ravine Saint-Gilles ») ou un lieu (« Salazie », « Saint-Benoît ») pour les stations proches. Vide = toute l'île."
    • Changedcyclones3 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / lieu
        Removed value: -{
        -  "description": "Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island.",
        -  "type": "string"
        -}
      • changedInput schema / properties / nom / description
        Previous value: -"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980. / A past cyclone: rain and gusts measured."New value: +"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980."
    • Changeddefibrillateurs2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changeddonner_avis6 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Le lieu concerné (« Cilaos », « plage de l'Hermitage »). / The place concerned."New value: +"Le lieu concerné (« Cilaos », « plage de l'Hermitage »)."
      • changedInput schema / properties / message / description
        Previous value: -"L'avis, en quelques phrases (1000 caractères au plus), sans donnée personnelle. / The feedback, no personal data."New value: +"L'avis, en quelques phrases (1000 caractères au plus), sans donnée personnelle."
      • changedInput schema / properties / outil / description
        Previous value: -"L'outil concerné (« meteo_actuelle », « transports »…). / The tool concerned."New value: +"L'outil concerné (« meteo_actuelle », « transports »…)."
      • changedInput schema / properties / question_utilisateur / description
        Previous value: -"La question de l'utilisateur, reformulée sans rien de personnel. / The user's question, paraphrased, nothing personal."New value: +"La question de l'utilisateur, reformulée sans rien de personnel."
      • changedInput schema / properties / type / description
        Previous value: -"« manque » (donnée absente), « erreur » (valeur fausse ou périmée), « suggestion », « bravo ». / missing, wrong, suggestion, praise."New value: +"« manque » (donnée absente), « erreur » (valeur fausse ou périmée), « suggestion », « bravo »."
    • Changedelectricite2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedevenements5 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / adherent
        Removed value: -{
        -  "description": "L'utilisateur dit être adhérent ou membre d'un club : montrer aussi les séances réservées aux adhérents. / The user says they are a club member: also show members-only sessions.",
        -  "type": "boolean"
        -}
      • changedInput schema / properties / lieu / description
        Previous value: -"Une commune ou un lieu (« Saint-Paul », « Saint-Gilles ») : les événements de sa commune. Vide = toute l'île. / A town or place; empty = whole island."New value: +"Une commune ou un lieu (« Saint-Paul », « Saint-Gilles ») : les événements de sa commune. Vide = toute l'île."
      • changedInput schema / properties / quand / description
        Previous value: -"« aujourd_hui », « ce_soir », « demain », « ce_week_end », « cette_semaine », « a_venir » (30 jours), un jour (« samedi ») ou une date (« 2026-10-31 ») ; vide = les 14 jours qui viennent. / When; empty = next 14 days."New value: +"« aujourd_hui », « ce_soir », « demain », « ce_week_end », « cette_semaine », « a_venir » (30 jours), un jour (« samedi ») ou une date (« 2026-10-31 ») ; vide = les 14 jours qui viennent."
      • changedInput schema / properties / quoi / description
        Previous value: -"Le genre (« concert », « spectacle », « théâtre », « danse », « humour », « soirée », « festival », « marché », « cinéma », « enfants », « sport », « exposition ») ou des mots du titre ou de la salle (« ail », « dragon boat », « Kabardock ») ; vide = tout. / Kind, or words of the title or venue; empty = all."New value: +"Le genre (« concert », « spectacle », « théâtre », « danse », « humour », « soirée », « festival », « marché », « cinéma », « enfants », « sport », « exposition ») ou des mots du titre ou de la salle (« ail », « dragon boat », « Kabardock ») ; vide = tout."
    • Changedfiche_terrain2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / adresse / description
        Previous value: -"Adresse (« 7 rue de la Buse, Saint-Paul »), lieu-dit (« Bois de Nèfles ») ou coordonnées « -21.0, 55.27 ». / Address, place or 'lat, lon'."New value: +"Adresse (« 7 rue de la Buse, Saint-Paul »), lieu-dit (« Bois de Nèfles ») ou coordonnées « -21.0, 55.27 »."
    • Changedhistorique_meteo6 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / au / description
        Previous value: -"Fin, même format. Pour « cette nuit » ou « ce matin », la date d'aujourd'hui. / End, same format; today's date for last night or this morning."New value: +"Fin, même format. Pour « cette nuit » ou « ce matin », la date d'aujourd'hui."
      • changedInput schema / properties / detail / description
        Previous value: -"« heure » : heure par heure jusqu'à 7 jours (sinon automatique sur 3 jours ou moins) ; « jour » : sans le détail horaire. / 'heure' forces hourly detail up to 7 days; 'jour' leaves it out."New value: +"« heure » : heure par heure jusqu'à 7 jours (sinon automatique sur 3 jours ou moins) ; « jour » : sans le détail horaire."
      • changedInput schema / properties / du / description
        Previous value: -"Début : « 2026-10-01 », « 01/10/2026 », « 2026-10 » (un mois), « 2006 » (une année). Seul, c'est ce jour, ce mois ou cette année. / Start date, month or year."New value: +"Début : « 2026-10-01 », « 01/10/2026 », « 2026-10 » (un mois), « 2006 » (une année). Seul, c'est ce jour, ce mois ou cette année."
      • changedInput schema / properties / jours / description
        Previous value: -"Les N derniers jours jusqu'à hier (30 par défaut). / The last N days up to yesterday (default 30)."New value: +"Les N derniers jours jusqu'à hier (30 par défaut)."
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedmaree2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Un lieu de la côte (« Le Port », « Saint-Gilles », « Sainte-Marie ») pour le marégraphe le plus proche. Vide = les deux. / A coastal place; empty = both gauges."New value: +"Un lieu de la côte (« Le Port », « Saint-Gilles », « Sainte-Marie ») pour le marégraphe le plus proche. Vide = les deux."
    • Changedmeteo_actuelle1 field changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
    • Changedprevision_meteo1 field changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
    • Changedqualite_air2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedqualite_eau3 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / eau / description
        Previous value: -"« robinet » (eau potable) ou « baignade » ; vide = d'après la question et le lieu. / Tap or bathing water; empty = guessed."New value: +"« robinet » (eau potable) ou « baignade » ; vide = d'après la question et le lieu."
      • changedInput schema / properties / lieu / description
        Previous value: -"Commune, quartier, plage ou bassin (« Ravine des Cabris », « plage de l'Hermitage », « bassin Bleu »). / A town, district, beach or river pool."New value: +"Commune, quartier, plage ou bassin (« Ravine des Cabris », « plage de l'Hermitage », « bassin Bleu »)."
    • Changedrestrictions_eau3 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
      • changedInput schema / properties / profil / description
        Previous value: -"Pour qui (« exploitation » = agriculteur) ; par défaut un particulier. / Who asks; default a private person."New value: +"Pour qui (« exploitation » = agriculteur) ; par défaut un particulier."
    • Changedresume_du_jour2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Commune ou lieu de La Réunion (« Saint-Paul », « Boucan Canot », « Cilaos »), rapporté à sa commune. / Commune or place in Réunion."New value: +"Commune ou lieu de La Réunion (« Saint-Paul », « Boucan Canot », « Cilaos »), rapporté à sa commune."
    • Changedsentiers_randonnee5 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / denivele_max_m / description
        Previous value: -"Dénivelé positif maximal en m (« sans trop de dénivelé » : 400). / Maximum elevation gain, m."New value: +"Dénivelé positif maximal en m (« sans trop de dénivelé » : 400)."
      • changedInput schema / properties / lieu / description
        Previous value: -"Un sentier ou une randonnée (« sentier de la Roche Pendue », « Piton des Neiges », « GR R2 »), un lieu (« Maïdo »), un cirque (« Mafate ») ou une commune ; vide = toute l'île. / A trail or hike, place, cirque or town; empty = whole island."New value: +"Un sentier ou une randonnée (« sentier de la Roche Pendue », « Piton des Neiges », « GR R2 »), un lieu (« Maïdo »), un cirque (« Mafate ») ou une commune ; vide = toute l'île."
      • changedInput schema / properties / longueur_max_km / description
        Previous value: -"Longueur maximale en km (« une rando de 10 km » : 12 ; « une petite balade » : 5). / Maximum length, km."New value: +"Longueur maximale en km (« une rando de 10 km » : 12 ; « une petite balade » : 5)."
      • changedInput schema / properties / longueur_min_km / description
        Previous value: -"Longueur minimale en km d'une randonnée proposée (« une rando de 10 km » : 8). / Minimum length, km."New value: +"Longueur minimale en km d'une randonnée proposée (« une rando de 10 km » : 8)."
    • Changedsites_sans_reponse2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / quoi / description
        Previous value: -"Un site, une commune ou un thème : « volcan », « eau », « Saint-Joseph ». Vide = toute la liste. / A site, a commune or a theme; empty = the whole list."New value: +"Un site, une commune ou un thème : « volcan », « eau », « Saint-Joseph ». Vide = toute la liste."
    • Changedsources_donnees1 field changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
    • Changedsport5 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • removedInput schema / properties / adherent
        Removed value: -{
        -  "description": "L'utilisateur dit être adhérent ou membre d'un club : montrer aussi les séances réservées aux adhérents. / The user says they are a club member: also show members-only sessions.",
        -  "type": "boolean"
        -}
      • changedInput schema / properties / lieu / description
        Previous value: -"Une commune (« Saint-Paul »), une partie de l'île (« le sud », « l'ouest », « le nord », « l'est ») ou un club (« VBSP », « Tampon Gecko Volley ») : ce qui s'y joue et ses clubs à l'extérieur. Vide = toute l'île. / A town, part of the island or club; empty = whole island."New value: +"Une commune (« Saint-Paul »), une partie de l'île (« le sud », « l'ouest », « le nord », « l'est ») ou un club (« VBSP », « Tampon Gecko Volley ») : ce qui s'y joue et ses clubs à l'extérieur. Vide = toute l'île."
      • changedInput schema / properties / quand / description
        Previous value: -"« aujourd_hui », « demain », « samedi » ou « dimanche » (le prochain), « ce_week_end », « a_venir » (14 jours) ou « resultats » ; vide = les deux. / Today, tomorrow, next Saturday or Sunday, this weekend, upcoming or results; empty = both."New value: +"« aujourd_hui », « demain », « samedi » ou « dimanche » (le prochain), « ce_week_end », « a_venir » (14 jours) ou « resultats » ; vide = les deux."
      • changedInput schema / properties / sport / description
        Previous value: -"Le sport ; vide = tous. « football » et « basket » renvoient l'actualité seulement (pas de résultats officiels lus). / The sport; empty = all."New value: +"Le sport ; vide = tous. « football » et « basket » renvoient l'actualité seulement (pas de résultats officiels lus)."
    • Changedtemperature_mer2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island."New value: +"Lieu à La Réunion : commune, plage, quartier, cirque, sommet, ou coordonnées « -21.05, 55.22 ». Vide = toute l'île."
    • Changedvelos_libre_service2 fields changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
      • changedInput schema / properties / lieu / description
        Previous value: -"Nom d'une station (« IUT », « Front de mer »), un lieu ou une commune (« Saint-Pierre », « plage de l'Étang-Salé »). Vide = tout le réseau. / Station, place or town; empty = whole network."New value: +"Nom d'une station (« IUT », « Front de mer »), un lieu ou une commune (« Saint-Pierre », « plage de l'Étang-Salé »). Vide = tout le réseau."
    • Changedvolcan_seismes1 field changed
      • removedInput schema / $schema
        Removed value: -"http://json-schema.org/draft-07/schema#"
  2. 10 tool updatesv0.190.11
    • Changedactualites1 field changed
      • changedInput schema / properties / sujet / description
        Previous value: -"« mobilisation » (manifestations, blocages, barrages), « route », « meteo », « volcan », « eau », « securite », « sante », « politique », « culture », « sport », ou des mots du titre ; vide = tout. / Subject or words; empty = all."New value: +"« mobilisation » (manifestations, blocages, barrages), « route », « meteo », « volcan », « eau », « securite », « sante », « politique », « culture », « sport », ou des mots du titre ; vide = tout. / Subject or words; empty = all."
    • Changedannuaire_services_publics1 field changed
      • changedInput schema / properties / quoi / description
        Previous value: -"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences ». / The office sought, or 'carburant', 'pharmacie', 'urgences'."New value: +"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences », « enfants » pour les lieux où aller avec eux. / The office sought, or 'carburant', 'pharmacie', 'urgences', 'enfants'."
    • Changedcyclones1 field changed
      • changedInput schema / properties / nom / description
        Previous value: -"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980. / A past cyclone: rain and gusts measured."New value: +"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980. / A past cyclone: rain and gusts measured."
    • Changedevenements3 fields changed
      • addedInput schema / properties / adherent
        Added value: +{
        +  "description": "L'utilisateur dit être adhérent ou membre d'un club : montrer aussi les séances réservées aux adhérents. / The user says they are a club member: also show members-only sessions.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / quand / description
        Previous value: -"« aujourd_hui », « ce_soir », « demain », « ce_week_end », « cette_semaine », « a_venir » (30 jours), un jour (« samedi ») ou une date (« 2026-10-31 ») ; vide = les 14 jours qui viennent. / When; empty = next 14 days."New value: +"« aujourd_hui », « ce_soir », « demain », « ce_week_end », « cette_semaine », « a_venir » (30 jours), un jour (« samedi ») ou une date (« 2026-10-31 ») ; vide = les 14 jours qui viennent. / When; empty = next 14 days."
      • changedInput schema / properties / quoi / description
        Previous value: -"Le genre (« concert », « spectacle », « théâtre », « danse », « humour », « soirée », « festival », « marché », « cinéma », « enfants », « sport », « exposition ») ou des mots du titre ou de la salle (« ail », « dragon boat », « Kabardock ») ; vide = tout. / Kind, or words of the title or venue; empty = all."New value: +"Le genre (« concert », « spectacle », « théâtre », « danse », « humour », « soirée », « festival », « marché », « cinéma », « enfants », « sport », « exposition ») ou des mots du titre ou de la salle (« ail », « dragon boat », « Kabardock ») ; vide = tout. / Kind, or words of the title or venue; empty = all."
    • Changedhistorique_meteo1 field changed
      • changedInput schema / properties / detail / description
        Previous value: -"« heure » : heure par heure jusqu'à 7 jours (sinon automatique sur 3 jours ou moins) ; « jour » : sans le détail horaire. / 'heure' forces hourly detail up to 7 days; 'jour' leaves it out."New value: +"« heure » : heure par heure jusqu'à 7 jours (sinon automatique sur 3 jours ou moins) ; « jour » : sans le détail horaire. / 'heure' forces hourly detail up to 7 days; 'jour' leaves it out."
    • Changedqualite_eau1 field changed
      • changedInput schema / properties / eau / description
        Previous value: -"« robinet » (eau potable) ou « baignade » ; vide = d'après la question et le lieu. / Tap or bathing water; empty = guessed."New value: +"« robinet » (eau potable) ou « baignade » ; vide = d'après la question et le lieu. / Tap or bathing water; empty = guessed."
    • Changedrestrictions_eau1 field changed
      • changedInput schema / properties / profil / description
        Previous value: -"Pour qui (« exploitation » = agriculteur) ; par défaut un particulier. / Who asks; default a private person."New value: +"Pour qui (« exploitation » = agriculteur) ; par défaut un particulier. / Who asks; default a private person."
    • Changedsentiers_randonnee2 fields changed
      • changedInput schema / properties / lieu / description
        Previous value: -"Un sentier ou une randonnée (« sentier de la Roche Pendue », « Piton des Neiges », « GR R2 »), un lieu (« Maïdo »), un cirque (« Mafate ») ou une commune ; vide = toute l'île. / A trail or hike, place, cirque or town; empty = whole island."New value: +"Un sentier ou une randonnée (« sentier de la Roche Pendue », « Piton des Neiges », « GR R2 »), un lieu (« Maïdo »), un cirque (« Mafate ») ou une commune ; vide = toute l'île. / A trail or hike, place, cirque or town; empty = whole island."
      • changedInput schema / properties / longueur_max_km / description
        Previous value: -"Longueur maximale en km (« une rando de 10 km » : 12 ; « une petite balade » : 5). / Maximum length, km."New value: +"Longueur maximale en km (« une rando de 10 km » : 12 ; « une petite balade » : 5). / Maximum length, km."
    • Addedsites_sans_reponse
    • Changedsport3 fields changed
      • addedInput schema / properties / adherent
        Added value: +{
        +  "description": "L'utilisateur dit être adhérent ou membre d'un club : montrer aussi les séances réservées aux adhérents. / The user says they are a club member: also show members-only sessions.",
        +  "type": "boolean"
        +}
      • changedInput schema / properties / quand / description
        Previous value: -"« aujourd_hui », « demain », « samedi » ou « dimanche » (le prochain), « ce_week_end », « a_venir » (14 jours) ou « resultats » ; vide = les deux. / Today, tomorrow, next Saturday or Sunday, this weekend, upcoming or results; empty = both."New value: +"« aujourd_hui », « demain », « samedi » ou « dimanche » (le prochain), « ce_week_end », « a_venir » (14 jours) ou « resultats » ; vide = les deux. / Today, tomorrow, next Saturday or Sunday, this weekend, upcoming or results; empty = both."
      • changedInput schema / properties / sport / description
        Previous value: -"Le sport ; vide = tous. « football » et « basket » renvoient l'actualité seulement (pas de résultats officiels lus). / The sport; empty = all."New value: +"Le sport ; vide = tous. « football » et « basket » renvoient l'actualité seulement (pas de résultats officiels lus). / The sport; empty = all."
  3. 1 tool updatev0.140.0
    • Changedcyclones1 field changed
      • changedInput schema / properties / nom / description
        Previous value: -"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Dina 2002, Firinga 1989, Hyacinthe 1980. / A past cyclone: rain and gusts measured."New value: +"Un cyclone passé (« Garance », « Dina 2002 ») : la pluie et les rafales mesurées station par station pendant son passage, les records de station et sa page ; le champ selon_meteo_france cite Météo-France mot pour mot (records mondiaux de Gamède) : à attribuer à Météo-France, jamais à rundata.re. Disponibles : Garance 2025, Belal 2024, Batsirai 2022, Gamède 2007, Dina 2002, Colina 1993, Firinga 1989, Clotilda 1987, Hyacinthe 1980. / A past cyclone: rain and gusts measured."
  4. 18 tool updatesv0.128.0
    • Addedactualites
    • Changedannuaire_services_publics1 field changed
      • changedInput schema / properties / quoi / description
        Previous value: -"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »… / The office sought."New value: +"Le service cherché, en quelques mots : « mairie », « CAF », « préfecture », « impôts », « France Travail », « tribunal »…, ou « carburant » pour les prix du mois, « pharmacie », « urgences ». / The office sought, or 'carburant', 'pharmacie', 'urgences'."
    • Addedbornes_recharge
    • Addedcoupures_eau
    • Addedcrues_rivieres
    • Addedcyclones
    • Addeddefibrillateurs
    • Addeddonner_avis
    • Changedelectricite1 field changed
      • addedInput schema / properties / lieu
        Added value: +{
        +  "description": "Lieu à La Réunion, en texte libre : commune (« Saint-Paul »), plage (« plage de l'Hermitage », « Boucan Canot »), quartier, cirque (« Cilaos », « Mafate »), sommet (« Maïdo », « volcan »), ou coordonnées « -21.05, 55.22 ». Vide = tour de l'île. / Place in Réunion, free text or 'lat, lon'; empty = whole island.",
        +  "type": "string"
        +}
    • Addedevenements
    • Addedhistorique_meteo
    • Addedmaree
    • Addedqualite_eau
    • Addedrestrictions_eau
    • Addedresume_du_jour
    • Addedsentiers_randonnee
    • Addedsport
    • Addedvelos_libre_service
  5. 10 tool updatesv0.1.0
    • First observedannuaire_services_publics
    • First observedcalendrier
    • First observedelectricite
    • First observedfiche_terrain
    • First observedmeteo_actuelle
    • First observedprevision_meteo
    • First observedqualite_air
    • First observedsources_donnees
    • First observedtemperature_mer
    • First observedvolcan_seismes

TDQS

A4/5.0

Scored across 27 tools

Disambiguation4/5

Most tools map to clearly distinct domains (now-weather vs forecast vs history, tides vs sea temperature, water quality vs outages vs drought restrictions), and the descriptions explicitly cross-reference each other to steer selection. The main fuzzy spots are resume_du_jour, which aggregates a dozen other tools' outputs, and annuaire_services_publics, which bundles unrelated things (mairies, fuel prices, pharmacies, markets, waste, kids' venues) behind a generic 'quoi' parameter.

Naming Consistency4/5

Every name is lowercase snake_case French, but the convention is noun-phrase rather than verb_noun, and modifier ordering is not fully regular (meteo_actuelle / prevision_meteo / historique_meteo, temperature_mer, qualite_air vs qualite_eau). donner_avis is the lone verb-style name in an otherwise noun-based set.

Tool Count3/5

27 tools is heavy, though the scope (all live data for an island: weather, sea, volcano, water, energy, mobility, civic life) is correspondingly broad and most tools have a distinct data source. A few are catch-all aggregators (resume_du_jour, annuaire_services_publics) that inflate surface area and could be split or trimmed.

Completeness4/5

Coverage is unusually thorough: weather now/past/future, sea state, tides, cyclones, volcano and seismicity, rivers and floods, air and water quality, water restrictions and outages, energy, EV chargers, bike share, hiking trails, land/risk records, public services, events, sport, news, plus meta tools for sources and dead upstream sites. Remaining gaps are minor and workaround-able (no dedicated traffic/transit tool, road status only surfaces inside actualites).

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time weather information and forecasts, connecting AI assistants with live weather data for current conditions and multi-day forecasts for any location worldwide.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to access real-time and historical weather data through multiple weather APIs including OpenMeteo, Tomorrow.io, and OpenWeatherMap. Provides comprehensive meteorological information including current conditions, forecasts, historical data, and weather alerts.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides access to official MeteoSwiss weather data, including regional reports, daily forecasts, and website search functionality across multiple languages. It enables AI assistants to retrieve real-time weather information and documentation from MeteoSwiss using the Model Context Protocol.
    4
    Creative Commons Zero v1.0 Universal
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time weather information and multi-day forecasts using the Open-Meteo API through a robust, enterprise-grade architecture. It enables AI assistants to retrieve current conditions, 7-day forecasts, and contextual weather data for any location.
    12 npm
    MIT