professionnels_rpps_in_radius
Find healthcare professionals within a radius via the RPPS directory. Filter by profession, specialty, and precision mode for exact distances or area centroids.
Instructions
Trouve les PS dans un rayon via RPPS (Annuaire Santé ANS — tous statuts : libéraux + salariés + mixtes + remplaçants ; vs professionnels_in_radius Ameli = libéraux conventionnés seuls).
Param critique precise_only — Défaut false (mode hybride). À true : ne renvoie que les PS géolocalisés précisément (distance_km exacte au m près) — recommandé pour rayons courts (<3 km), classement intra-commune, "PS à <500 m d'une adresse".
Chaque résultat porte geo_precision ∈ :
"adresse"— coords BAN rue/lieu-dit/bâtiment,distance_kmexacte."etablissement_finess"— coords du site FINESS (vianum_finess),distance_kmexacte au site."centroide_commune"— centroïde commune (~3 km),distance_kmIDENTIQUE pour tous les PS de la commune — ne PAS l'utiliser pour classer individuellement, seulement comme filtre de zone.
Couverture actuelle : ~68,5 % précis, ~31,5 % centroide_commune résiduel. Mode hybride = précis (granularité adresse) + centroïde (granularité commune) fusionnés et triés globalement par distance_km.
Filtres : profession_codes (ex: ["10"] Médecin, ["60"] Infirmier), savoir_faire_codes (spécialité fine DES/DESC), mode_exercice_codes. Codes mode_exercice ANS : L libéral, S salarié, M mixte, R remplaçant, B bénévole, A autre. Catégorie par défaut : Civil (C, ~97 % — libéraux, salariés privés, hospitaliers contractuels). Opt-in : include_agents_publics: true ajoute Agents publics (M, ~0,3 % — PH titulaires, ARS, CNAM, Éducation nationale, PMI, militaires SSA) ; include_etudiants: true ajoute Étudiants (E, ~2,5 % — internes, externes, élèves IDE/SF). Réf : https://mos.esante.gouv.fr/NOS/TRE_R09-CategorieProfessionnelle/. ATTENTION nomenclatures : les codes ANS (profession_code, savoir_faire_code) sont une nomenclature DISTINCTE des codes Ameli (specialite_code, type_ps_code) — un même nombre désigne des choses différentes (ex: '10' = Médecin côté ANS, Neurochirurgien côté Ameli). Ne JAMAIS passer un code Ameli à un paramètre ANS : le filtre renverrait vide sans erreur. Découvrir les codes ANS via lister_nomenclature(referentiel:'rpps_savoir_faire'). Source : Annuaire Santé, Agence du Numérique en Santé (ANS) — Licence Ouverte v2.0
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| center | Yes | Centre du cercle de recherche (coordonnées WGS84). | |
| radius_km | Yes | Rayon en km (0.1-50). | |
| profession_codes | No | Codes profession ANS (ex: ['10'] Médecin, ['60'] Infirmier). Si omis, toutes professions. | |
| savoir_faire_codes | No | Codes savoir-faire ANS (spécialités fines DES/DESC). Si omis, tous savoir-faire. | |
| mode_exercice_codes | No | Codes mode d'exercice ANS (libéral / salarié / mixte). Si omis, tous modes. | |
| include_etudiants | No | ||
| include_agents_publics | No | ||
| limit | No | Nombre max de résultats retournés (défaut serveur 100). | |
| precise_only | No | Si true, exclut les PS au centroïde commune et ne renvoie que ceux à `distance_km` exacte (cf. description du tool pour la sémantique complète et le seuil d'usage recommandé). Défaut false. | |
| include_freshness | No | Si true, ajoute un champ `data_freshness` au payload (dans `query_metadata` si présent, sinon à la racine) listant la dernière ingestion réussie par source (FINESS, Ameli, RPPS, CDS) avec `staleness_days`. Opt-in pour ne pas alourdir les payloads par défaut. Cache 5min côté serveur — coût négligeable. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | Yes | Nombre d'entrées retournées dans `results` (post-troncature). | |
| total | No | Effectif réel avant troncature. Présent sur les tools de nomenclature paginés (lister_*) : `count` = échantillon, `total` = total réel, re-appeler avec un `limit` supérieur si `truncated`. | |
| truncated | No | true si le total réel dépasse `limit` (re-paginer via `offset` si supporté, ou augmenter `limit` sur les lister_*). Optional sur les tools de listing exhaustif (lister_*). | |
| results | Yes | Entrées métier (shape spécifique au tool, cf. description du tool). | |
| query_metadata | No | Metadata de la query (radius_km, departement, filtres appliqués, …). | |
| freshness | No | Fraîcheur des sources (présent si `include_freshness: true`). | |
| perimetre | No | Lentille de la source : ce que le comptage inclut/exclut. Lire `completeness_note` et la restituer au lecteur final. | |
| activite_hebergee | No | Compte juxtaposé des sites hébergeant l'activité correspondant à la famille filtrée, sous une autre catégorie FINESS. Distinct du `count` principal — lire `note` pour comprendre la sémantique et ne JAMAIS additionner les deux comptes sans préciser leur nature. |