Skip to main content
Glama

Infoparcelle - cadastre, DVF, DPE, PLU

infoparcelle_parcelle_get

Read-onlyIdempotent

📋 Obtenir la fiche complète d'une parcelle cadastrale par son identifiant.

Fonction: Récupérer TOUTES les informations disponibles (26 champs principaux + sous-objets) pour une parcelle cadastrale spécifique.

⚠️ STRUCTURE COMPLÈTE DES DONNÉES RETOURNÉES:

1. Identité cadastrale (7 champs):

  • cadastre_id (string): Identifiant unique. Ex: "75108000BO0025"

  • section (string): Code section (2 car). Ex: "BO"

  • numero (string): Numéro parcelle (4 car). Ex: "0025"

  • prefixe (string): Préfixe (3 car). Ex: "000"

  • superficie (number): Surface en m². Ex: 523.45

  • perimetre (number): Périmètre en m. Ex: 102.34

  • arpente (boolean): Parcelle mesurée par géomètre

2. Localisation (3 champs objets):

  • municipalite (object): Commune

    • code (string): Code INSEE "75108"

    • nom (string): "Paris 8e Arrondissement"

    • codes_postaux (array): ["75008"]

  • quartier (object|null): Quartier IRIS

    • code (string): "751080804"

    • nom (string): "Champs-Elysées"

    • type (string): "Habitat" | "Activité" | "Divers" | "Hors IRIS"

  • lieu_dit (string|null): Nom du lieu-dit

  • adresses (array[object]): Adresses postales

    • label (string): Adresse normalisée

    • fiability (integer): Score 0-95

3. Detail (object) - 11 SOUS-OBJETS COMPLEXES:

  • piscines (object):

    • nombre (integer)

    • surface_totale (number) en m²

    • forme (string): "Rectangle" | "L" | "Ronde" | "Autres"

  • batiments_durs (object):

    • nombre (integer)

    • surface_totale (number) en m²

  • batiments_legers (object):

    • nombre (integer)

    • surface_totale (number) en m²

  • surfaces (object):

    • jardin (number) en m²

    • emprise_sol (number) en m²

    • habitable (number) en m²

    • habitable_calculee (boolean)

  • hauteurs (object):

    • min (number) en mètres

    • max (number) en mètres

  • altitudes (object):

    • min (number) en mètres

    • max (number) en mètres

  • construction (object):

    • annee_min (integer)

    • annee_max (integer)

    • nombre_etages (integer)

  • caracteristiques (object):

    • bati_type (integer): 0-17

    • est_isolee (boolean)

    • nb_parcelles_adjacentes (integer)

    • nb_batiments_mitoyens (integer)

  • risques (object):

    • argile (string): "Faible" | "Moyen" | "Fort"

    • radon (string): "Faible" | "Moyen" | "Fort"

  • estimations (object):

    • prix_vente (number) en € Ex: 850000

    • prix_vente_ppm (number) prix/m²

    • prix_location (number) loyer mensuel en €

    • prix_location_ppm (number) loyer/m²

  • consommations (object): Séries temporelles électricité/gaz

4. Listes associées (arrays - max 10 éléments chacune):

  • batiments (array[object]): Bâtiments sur la parcelle, AVEC LEUR EMPRISE AU SOL

    • type (integer), type_label (string)

    • superficie (number), perimetre (number)

    • centre (object): Point GeoJSON, centroïde du bâtiment

    • contour (object): Polygon GeoJSON, emprise au sol du bâtiment (null si absente en base) ➜ Ces géométries permettent de DESSINER les bâtiments : inutile d'interroger une source externe (WFS BDTOPO / apicarto IGN) pour les obtenir.

  • zones_plu (array[object]): Zones PLU

    • titre, description, zone, type_zone

    • surface (number), perimetre (number)

    • documents (object): Documents PDF du PLU

      • partition (string): ID PLU

      • fichiers (array): [{titre, nom_fichier, url (HTTPS), categorie, date_creation}]

  • dpes (array[object]): Max 10 diagnostics DPE

    • numero_dpe, type_dpe (0=Existant, 1=Neuf, 2=Tertiaire)

    • date_etablissement, date_reception

    • etiquette_dpe (string): "A" à "G"

    • etiquette_ges (string): "A" à "G"

    • surface_habitable (number)

    • annee_construction (integer)

    • conso_energie (number): kWh/m²/an

    • emission_ges (number): kg CO2/m²/an

    • cout_total (number): €/an

    • [+ 10 champs détaillés conso_chauffage, conso_ecs, etc.]

  • dvfs (array[object]): Max 10 transactions

    • id_mutation, date_mutation

    • nature_mutation (string): "Vente" | "Échange"

    • valeur_fonciere (number) en €

    • code_type_bien, libelle_type

    • nb_maisons, nb_appartements (integer)

    • surface_terrain, surface_batie (number)

    • [+ 15 champs détaillés]

  • coproprietaires (array[object]): Max 10 copropriétés

    • immatriculation, nom

    • type_syndic: "Professionnel" | "Bénévole"

    • nb_lot, nb_lot_hab (integer)

    • date_reglement

    • syndic (object): {siren, denomination}

  • proprietaires (array[object]): Max 10 propriétaires

    • siren, denomination

    • code_droit: "P" (Pleine propriété) | "U" (Usufruit) | etc.

    • forme_juridique

    • type_bien: "PARCELLE" | "LOCAL"

  • occupants (array[object]): Max 10 établissements SIRENE

    • siret (14 chiffres), siren (9 chiffres)

    • denomination_complete

    • activite_principale (code NAF)

    • etat_administratif: "Actif" | "Fermé"

    • caractere_employeur (boolean)

    • tranche_effectifs (integer)

    • [+ 25 champs]

  • permis_construire (array[object]): Max 10 permis

    • code (numéro permis)

    • type_autorisation: "PC" | "DP" | "PA"

    • etat: "Autorisé" | "Annulé" | "Commencé" | "Terminé"

    • date_autorisation, date_doc

    • nb_lgt_ind_crees, nb_lgt_demolis (integer)

    • surf_hab_creee, surf_hab_demolie (number)

    • [+ 35 champs détaillés]

  • risques (array[object]): Risques naturels et technologiques

  • monuments_historiques (array[object]): Monuments classés

  • statistiques (object): Statistiques agrégées de la zone

5. Géométrie (3 champs):

  • centre (object): Point GeoJSON {type: "Point", coordinates: [lon, lat]}

  • contour (object): Polygon GeoJSON {type: "Polygon", coordinates: [[[lon, lat]...]]} ➜ Les coordonnées complètes sont TOUJOURS présentes dans le structuredContent de la réponse, même quand le texte n'en affiche qu'un résumé. Le contour de la parcelle et celui de chaque bâtiment suffisent à produire une carte.

  • bbox (array): Boîte englobante [minX, minY, maxX, maxY]

Cas d'usage:

  • Analyse complète d'une parcelle avant achat/vente

  • Étude de faisabilité d'un projet immobilier

  • Évaluation immobilière détaillée (avec estimations prix)

  • Vérification des droits à construire (PLU + permis)

  • Analyse de l'historique des transactions (DVF)

  • Étude environnementale et risques (argile, radon)

  • Audit énergétique (DPE historiques)

Conseils:

  • geometrie='centre' = réponse rapide (juste Point GPS)

  • geometrie='contour' = limites exactes de la parcelle (Polygon)

  • Paramètre champs permet de ne récupérer que certains champs (optimise la réponse)

  • Les arrays sont limités à 10 éléments max par type

  • Les URLs des documents PLU sont accessibles directement en HTTPS

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "cadastre_id": "<cadastre_id>"
    },
    "name": "infoparcelle_parcelle_get"
  }
}

Input Schema

NameRequiredDescriptionDefault
champsNoListe des champs souhaités. Valeurs possibles: cadastre_id, section, numero, prefixe, superficie, perimetre, arpente, municipalite, quartier, lieu_dit, adresses, detail, batiments, zones_plu, dpes, dvfs, coproprietaires, proprietaires, occupants, permis_construire, risques, monuments_historiques, consommations, statistiques, centre, contour, bbox
formatNoFormat de sortiejson
geometrieNoType de géométrie: centre, contour ou bboxcentre
cadastre_idYesIdentifiant cadastral unique de la parcelle. Ex: '010040000B0064'

Output Schema

NameRequiredDescriptionDefault
donneesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnly/idempotent/non-destructive, so the description does not need to re-litigate safety; instead it adds genuinely useful behavior: arrays are capped at 10 elements per type, full GeoJSON coordinates are always present in structuredContent even when the text shows a summary, and PLU document URLs are directly reachable over HTTPS. What is missing is failure behavior, e.g. what happens when cadastre_id is unknown or malformed.

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 definition is dominated by a multi-page data dictionary of return fields, including nested example values and '[+ 35 champs détaillés]' placeholders, which largely duplicates what the output schema already provides. The actionable content (the first line, the cas d'usage, the conseils) is a small fraction of the text and the parameter tips are buried at the very bottom rather than front-loaded.

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

Completeness3/5

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

For a high-complexity tool with an output schema, the description over-invests in return-shape documentation and under-invests in tool behavior: no guidance on obtaining a valid cadastre_id, no mention of the preview sibling, and no error semantics. An agent can call it correctly, but the routing and failure-path knowledge needed to use it well is absent.

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 earns an extra point by explaining the trade-offs behind the parameters rather than restating them: geometrie='centre' yields a fast response while 'contour' returns exact boundaries, and champs is framed as a response-size optimization. It does not explain format='geojson' versus 'json' beyond the schema's one-liner.

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 opening line states a specific verb and resource: 'Obtenir la fiche complète d'une parcelle cadastrale par son identifiant', and 'complète' plus the 26-field inventory makes clear this is the full-record fetch rather than a search. It never names the closest sibling, infoparcelle_parcelle_preview, so an agent must infer the difference between the full and preview variants from the names alone.

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 'Cas d'usage' block gives seven concrete situations (pre-purchase analysis, buildability checks, DVF history, energy audit, risk study) that map well onto an agent's intent detection. It stops short of exclusions: nothing says when NOT to use it, when to fall back to parcelle_preview, or which search tool to call first to obtain a cadastre_id.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources