{"id":12679,"plugin_id":"plugin_asdk_app_6a86e894071c8191839bf93ff4393053","kind":"skill","collection_source":null,"comparison_source":null,"observed_at":"2026-09-30T23:02:00.079Z","digest":"9aa571fa41d01426ebb8f4a610b5e74436f6305f3be23e1e7bd138cd3cc03979","against":null,"payload":{"name":"infoparcelle-analyse-fonciere","description":"Parcelle cadastrale, prix de vente réel (DVF), DPE et passoire thermique, zone PLU et constructibilité, permis de construire, copropriété, propriétaire personne morale, entreprises implantées à une adresse : analyse foncière et immobilière à partir des données publiques officielles Infoparcelle. Couvre la France métropolitaine et les 5 DOM (Guadeloupe, Martinique, Guyane, La Réunion, Mayotte). Ne pas utiliser hors de ce périmètre, ni pour des annonces en cours de commercialisation (ces données décrivent l'existant et les ventes conclues, pas le marché affiché).","included_files":[{"relative_path":"agents/openai.yaml","size_in_bytes":168}],"skill_md_contents":"---\nname: infoparcelle-analyse-fonciere\ndescription: Parcelle cadastrale, prix de vente réel (DVF), DPE et passoire thermique, zone PLU et constructibilité, permis de construire, copropriété, propriétaire personne morale, entreprises implantées à une adresse : analyse foncière et immobilière à partir des données publiques officielles Infoparcelle. Couvre la France métropolitaine et les 5 DOM (Guadeloupe, Martinique, Guyane, La Réunion, Mayotte). Ne pas utiliser hors de ce périmètre, ni pour des annonces en cours de commercialisation (ces données décrivent l'existant et les ventes conclues, pas le marché affiché).\n---\n\n# Analyse foncière avec les données Infoparcelle\n\nLes outils `infoparcelle_*` donnent accès à des données publiques officielles\nfrançaises (DGFiP, Cerema, ADEME, BAN, INSEE, IGN, SDES, BDNB). Ce document explique\ncomment les enchaîner et comment lire ce qu'ils renvoient.\n\n## Règle générale\n\nNe jamais répondre de mémoire sur une parcelle, un prix ou un diagnostic : appeler\nl'outil et citer la valeur obtenue. Si un outil ne renvoie rien, le dire, plutôt\nque de combler par une estimation.\n\n## Enchaînements à suivre\n\n### 🟥 Règle qui prime sur toutes les autres\n\n**`infoparcelle_parcelle_get` est une fiche complète, pas un simple descriptif de terrain.**\nVia le paramètre `champs`, il renvoie déjà, pour la parcelle demandée :\n\n`dvfs` (ses transactions) · `dpes` (ses diagnostics) · `zones_plu` (sa zone **et les PDF\nofficiels du PLU**) · `permis_construire` · `coproprietaires` · `proprietaires` ·\n`occupants` (SIRENE) · `risques` · `batiments` · `consommations` · `statistiques` ·\n`monuments_historiques` · `detail` · `contour`.\n\n**Ne jamais rappeler `infoparcelle_dvf_search`, `infoparcelle_dpe_search`,\n`infoparcelle_plu_search`, `infoparcelle_permis_search`, `infoparcelle_coproprietes_search`\nou `infoparcelle_occupants_search` avec le `cadastre_id` d'une parcelle déjà récupérée** :\nla donnée est dans la réponse, et l'appel serait facturé pour rien.\n\nCes outils servent à interroger **un périmètre plus large** (commune, section, département,\nzone), c'est-à-dire à comparer, pas à répéter.\n\n### « Analyse cette adresse » / « Que peux-tu me dire sur ce bien ? »\n\n1. `infoparcelle_geocoder_search` avec l'adresse en texte libre.\n   → récupérer le `code` de la parcelle dans `parcelles[]`.\n2. `infoparcelle_parcelle_get` avec ce `cadastre_id` et les `champs` utiles.\n   → **cela couvre le bien lui-même** : terrain, bâti, DPE, ventes, zone PLU, occupants.\n3. Seulement pour **situer le bien dans son marché**, élargir le périmètre :\n   - `infoparcelle_dvf_search` avec `code_section` (voisinage immédiat) ou\n     `code_municipalite` (commune), jamais avec le `cadastre_id` ;\n   - `infoparcelle_dpe_search` de même, pour comparer l'étiquette du bien à celles\n     du secteur.\n\nUne adresse peut porter **plusieurs parcelles** : le géocodeur renvoie un tableau.\nLes traiter toutes, ou demander laquelle retenir, mais ne pas en choisir une au hasard.\n\n### « Est-ce constructible ? »\n\n1. Résoudre la parcelle, puis `infoparcelle_parcelle_get` avec `champs: [\"zones_plu\"]`.\n   → la zone (`zone`, `type_zone`, `titre`, `description`) **et** `documents.fichiers`,\n   la liste des PDF officiels avec leur URL et leur catégorie : règlement, règlement\n   graphique, PADD, OAP, prescriptions, servitudes d'utilité publique, PPR.\n   **Pour étudier les règles applicables, c'est le document « Documents Règlementaires »\n   qu'il faut ouvrir et citer**, pas la seule lettre de zone.\n2. `infoparcelle_plu_search` **uniquement** pour élargir : quelles zones existent dans\n   la commune (`code_municipalite` + `zone` ou `type_zone`), leurs surfaces, leur\n   géométrie (`geometrie: contour`) ou les parcelles qu'elles contiennent.\n3. `infoparcelle_permis_search` pour voir ce qui se construit réellement autour :\n   `code_section` pour le voisinage immédiat, `code_municipalite` pour la commune,\n   avec `etat: 2` (autorisé) et une borne de date.\n   ⚠ **Il n'existe pas de filtre par zone PLU** sur cet outil. La section cadastrale est\n   le meilleur substitut ; pour vraiment restreindre à une zone, il faut récupérer ses\n   parcelles via `infoparcelle_plu_search` (`champs: [\"parcelles\"]`) et croiser, ce qui\n   coûte plusieurs appels : ne le faire que si la question l'exige.\n\n⚠ Une zone d'urbanisme n'est pas une autorisation. Toujours conclure en renvoyant\nau règlement de zone et au service urbanisme de la commune.\n\n### « Trouve-moi des biens qui… »\n\nUtiliser `infoparcelle_parcelles_search_advanced` (recherche multicritère) plutôt\nque d'enchaîner des recherches unitaires. Croiser ensuite avec `infoparcelle_dpe_search`\nou `infoparcelle_dvf_search` seulement sur les résultats retenus.\n\n### « Montre-moi la parcelle » / plan, croquis, document\n\n`infoparcelle_parcelle_preview` produit une image de la parcelle. Deux familles de thèmes :\n\n- **techniques**, pour un dossier ou une étude : `cadastre_plan`, `plan_millimetre`,\n  `architecte_blueprint`, `topographique_contour`, `notarial_officiel` ;\n- **réalistes**, pour une présentation client : `realisme_terrain` (défaut),\n  `commercial_premium`, et une vingtaine d'autres.\n\nOptions utiles, toutes désactivées par défaut : `afficher_surface`, `afficher_mesures`,\n`afficher_perimetre`, `afficher_echelle`, `afficher_numero_parcelle`,\n`afficher_coordonnees`. Pour un **plan à l'échelle coté**, combiner\n`theme: \"plan_millimetre\"`, `afficher_mesures: true`, `afficher_echelle: true` et une\n`echelle` explicite (`\"200\"`, `\"500\"`…) plutôt que `auto`.\n\nPlusieurs parcelles se dessinent sur le même plan en séparant les identifiants par des\nvirgules : c'est la bonne façon de montrer une **unité foncière** ou de comparer des\nterrains voisins.\n\n⚠ Ne pas monter `width`/`height`/`dpi` sans raison : une image de présentation se lit\ntrès bien en 800x800, et le maximum (10000 px, 180 DPI) ne sert qu'à l'impression.\n⚠ Le rendu est **normalisé en carré** pour préserver l'échelle : demander 900x700\nproduit une image 900x900. Ne pas promettre un format précis à l'utilisateur.\n\n**L'outil renvoie l'image ET une URL de téléchargement publique**\n(`https://mcp.infoparcelle.fr/previews/...`), accessible sans authentification.\nC'est cette URL qu'il faut utiliser pour **intégrer le plan dans un document produit**\n(fiche, page web, flyer) : `<img src=\"...\">` fonctionne.\n\n🟥 **Cette URL expire au bout de 30 jours.** Quand le plan est inséré dans un livrable\nque l'utilisateur va conserver, le lui dire : au-delà, l'image disparaîtra du document.\nPour un usage durable, l'utilisateur doit enregistrer l'image lui-même.\n\n### « Fais-moi une fiche / un dossier / une page de présentation »\n\nC'est l'usage le plus complet, et il se déroule dans cet ordre :\n\n1. `infoparcelle_geocoder_search` pour résoudre l'adresse.\n2. **Un seul** `infoparcelle_parcelle_get` avec tous les `champs` nécessaires :\n   `detail`, `dpes`, `dvfs`, `zones_plu`, `coproprietaires`, `occupants`, `risques`.\n3. `infoparcelle_parcelle_preview` pour le plan, en thème technique si le document est\n   professionnel (`cadastre_plan`) ou réaliste s'il est commercial.\n4. `infoparcelle_dvf_search` sur la **commune ou la section** pour le contexte de marché.\n\nSoit **quatre appels**, pas davantage. Structurer ensuite le document : identification,\nterrain et bâti, énergie, urbanisme, copropriété, marché local, plan.\nSignaler ce qui manque plutôt que de laisser une rubrique vide sans explication.\n\n### « Qui est derrière cette adresse ? »\n\nSi la parcelle est déjà identifiée, **tout est dans `infoparcelle_parcelle_get`** :\n`champs: [\"proprietaires\", \"occupants\", \"coproprietaires\"]`. Un seul appel.\n\nLes outils dédiés ne servent qu'à chercher **sans partir d'une parcelle** :\n\n- `infoparcelle_proprietaires_search` : retrouver le patrimoine d'une société sur un\n  territoire. Propriétaires **personnes morales** uniquement.\n- `infoparcelle_occupants_search` : établissements et entreprises implantés (SIRENE),\n  à l'échelle d'une commune ou d'un secteur.\n- `infoparcelle_coproprietes_search` : registre national des copropriétés d'un territoire.\n\n⚠ Aucun de ces outils ne renvoie de propriétaire particulier. Si la question porte\nsur une personne physique, l'indiquer clairement et ne pas contourner.\n\n### Points d'entrée annexes\n\n- `infoparcelle_geocoder_coordinates` : coordonnées GPS → parcelle. C'est le point\n  d'entrée quand l'utilisateur fournit une position plutôt qu'une adresse.\n- `infoparcelle_geocoder_ban` : récupérer une adresse par son identifiant BAN, quand\n  cet identifiant est déjà connu.\n- `infoparcelle_municipalites_search` : informations de commune (code INSEE, codes\n  postaux). Utile pour convertir un nom de commune en `code_municipalite` avant une\n  recherche élargie.\n\n## Formats de sortie et géométries\n\n- **`format`** : `json` (défaut) ou **`geojson`**. Demander `geojson` dès que le résultat\n  doit être cartographié ou réutilisé dans un SIG ; rester en `json` sinon, c'est plus\n  léger à lire.\n- **`geometrie`** (fiche parcelle, zones PLU) : `centre` (défaut, un point),\n  `contour` (le polygone complet) ou `bbox` (le rectangle englobant).\n  ⚠ `contour` est **beaucoup plus volumineux** : ne le demander que pour tracer la forme\n  réelle. Pour situer un bien, `centre` suffit.\n- La **pagination** est à curseur : réutiliser `pagination.nextCursor` dans `curseur`.\n  `hasMore: false` signifie qu'il n'y a plus rien à demander : ne pas insister.\n\n## Économie des appels\n\nChaque appel consomme des crédits API de l'utilisateur : de 1 (géocodage, commune)\nà 20 (recherche avancée de parcelles), 10 pour une fiche de parcelle, DVF ou DPE.\n\n- **Ne jamais redemander ce que `infoparcelle_parcelle_get` a déjà renvoyé** (voir la\n  règle en tête de la section précédente) : c'est de loin le gaspillage le plus fréquent.\n- Toujours renseigner `champs` pour ne demander que ce qui sera utilisé. Un\n  `parcelle_get` sans `champs` rapatrie l'intégralité de la fiche, y compris des blocs\n  volumineux comme les documents du PLU ou la liste des occupants.\n- Toujours borner `limite` : 3 à 10 résultats suffisent à répondre, 50 gaspillent.\n- Ne pas rappeler un outil déjà appelé dans la conversation ; réutiliser le résultat.\n- Ne pas lancer une recherche large « pour voir » avant d'avoir cadré la commune\n  ou le département.\n\n## Lire correctement les résultats\n\n**DVF (`infoparcelle_dvf_search`)** : ce sont des ventes **réellement enregistrées**\npar l'administration fiscale, pas des prix affichés. C'est leur intérêt principal :\nle dire à l'utilisateur.\n\n⚠ `valeur_fonciere` est le montant de **la mutation entière**, qui peut couvrir\nplusieurs lots, locaux ou parcelles. Avant de calculer un prix au m², vérifier\n`nb_locaux`, `nb_lots`, `nb_parcelles` et les surfaces : une mutation à 52 000 €\npour 110 m² n'est pas un prix de marché, c'est une vente partielle ou atypique.\nÉcarter les valeurs aberrantes et raisonner sur une médiane, jamais sur un seul point.\n\n**Parcelle (`infoparcelle_parcelle_get`)**\n\n- `superficie` = surface du **terrain**, en m². Ce n'est pas la surface habitable,\n  qui se trouve dans `detail.surfaces.habitable`.\n- `detail.surfaces.habitable_calculee` à `true` signale une valeur **estimée**,\n  pas une donnée déclarée : le préciser si on s'en sert.\n- `detail.estimations` est une **estimation**, jamais une transaction. Ne pas la\n  présenter comme un prix constaté.\n\n**DPE (`infoparcelle_dpe_search`)** : seuils officiels en kWh/m²/an :\nA ≤ 70 · B 71-110 · C 111-180 · D 181-250 · E 251-330 · F 331-420 · G > 420.\nLes classes **F et G** sont les passoires thermiques visées par les restrictions\nde location. Un bien peut porter plusieurs DPE successifs : retenir le plus récent.\n\n**🟥 Paris, Lyon et Marseille : chercher par ARRONDISSEMENT, jamais par le code ville**\n\nCes trois communes ont un code global (Paris `75056`, Lyon `69123`, Marseille `13055`)\n**et** un code par arrondissement (Paris `75101`-`75120`, Lyon `69381`-`69389`,\nMarseille `13201`-`13216`). Les données ne sont pas regroupées :\n\n- Lyon `69123` renvoie **0 résultat**, alors que Lyon 3e (`69383`) en renvoie ;\n- Paris `75056` renvoie des données, mais **un jeu distinct** de celui de `75111`\n  (Paris 11e) : interroger l'un ne donne jamais le contenu de l'autre.\n\nDonc : passer par `infoparcelle_geocoder_search` (qui renvoie le bon\n`municipalite.code`), ou interroger les arrondissements un par un et cumuler.\n**Un résultat vide sur ces trois villes ne signifie jamais « rien à signaler ».**\nVérifié le 2026-08-20.\n\n**Référence cadastrale** : 14 caractères, par exemple `66136000AN0417` :\ncode INSEE de la commune (5) + préfixe (3) + section (2) + numéro (4).\nNe jamais la reconstruire à la main : la prendre telle que l'outil la renvoie.\n\n## Périmètre et limites\n\n- **101 départements** : les 96 de France métropolitaine (Corse comprise, codes `2A`\n  et `2B`) et 5 départements d'outre-mer : Guadeloupe (971), Martinique (972),\n  Guyane (973), La Réunion (974), Mayotte (976). Hors de ce périmètre, il n'y a\n  pas de donnée : le dire plutôt que d'extrapoler.\n- Les données décrivent l'existant et le passé (cadastre, ventes conclues,\n  diagnostics déposés). Elles ne contiennent **aucune annonce en cours de vente**.\n- Les propriétaires particuliers ne sont pas exposés.\n\n### ⚠ Trous de couverture connus, à ne jamais confondre avec une absence de marché\n\n**Les ventes DVF n'existent pas dans 4 départements** : Moselle (57), Bas-Rhin (67),\nHaut-Rhin (68) et Mayotte (976). L'Alsace-Moselle relève du **livre foncier**, un\nrégime distinct du reste de la France, et son registre n'alimente pas le jeu de\ndonnées public des valeurs foncières.\n\nUne recherche DVF y renvoie donc un résultat **vide**. Ce vide signifie « données\nnon publiées pour ce territoire », **jamais** « aucune vente » ni « marché atone ».\nL'annoncer explicitement à l'utilisateur et se rabattre sur les autres sources\n(cadastre, DPE, permis de construire), qui, elles, couvrent bien ces départements :\nla Moselle, le Bas-Rhin et le Haut-Rhin totalisent à eux seuls plus de 4 millions de\nparcelles en base.\n\nVérifié le 2026-08-20 : Strasbourg (67482), Metz (57463) et Mamoudzou (97611)\nrenvoient 0 mutation, tandis que Guadeloupe, Martinique, Guyane et La Réunion\nrenvoient des transactions récentes.\n\n## Si un outil renvoie une erreur\n\n- **432** : aucun abonnement actif sur le compte.\n- **434** : quota de crédits API épuisé pour la période en cours.\n- **435** : fonctionnalité non comprise dans l'offre de l'utilisateur.\n\nDans ces trois cas, expliquer sobrement la situation et inviter l'utilisateur à\nconsulter son espace Infoparcelle. Ne pas insister, ne pas proposer de contournement,\net ne pas répondre à la question avec des données inventées.\n\n## Forme de la réponse\n\n- Citer les chiffres obtenus tels quels, avec leur unité.\n- Donner la **référence cadastrale** dès qu'une parcelle est identifiée : c'est la\n  clé qui permet à l'utilisateur de retrouver le bien.\n- Distinguer visiblement ce qui est **mesuré** (superficie, vente enregistrée,\n  étiquette DPE) de ce qui est **estimé** (valeur, surface habitable calculée).\n- Pour une synthèse, structurer en : identification · terrain et bâti · énergie ·\n  urbanisme · marché local.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}