Skip to main content
Glama

Parcellaire — cadastre, DVF & DPE

Ventes immobilières (DVF) dans une zone

search_ventes_dvf
Read-onlyIdempotent

Liste les ventes immobilières (DVF) d'une zone : autour d'une adresse, d'une parcelle ou d'un point (rayon), ou dans toute une commune — idéal pour trouver des biens comparables. Une ligne par vente : date, prix, type de bien, surface bâtie, pièces, terrain, parcelles, prix au m² (quand la vente porte sur un seul logement). Retourne aussi la médiane du prix au m² des ventes filtrées. Seules les ventes géolocalisées sont couvertes (depuis 2021), hors Alsace-Moselle (Bas-Rhin, Haut-Rhin, Moselle), absente du fichier DVF. Filtrer par 'type_bien' pour des prix au m² comparables.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude du centre (avec 'lng')
lngNoLongitude du centre (avec 'lat')
triNoTri des ventes (défaut : date décroissante ; distance pour les plus proches)
limitNoVentes par page (défaut 20, max 50)
offsetNoIndex de départ pour la pagination (défaut 0, max 5000). Utiliser pagination.next_offset pour la page suivante.
addressNoAdresse postale au centre de la zone
communeNoNom de la commune, ex: 'Angers'. Pour une commune homonyme, préciser son code entre parenthèses : 'Thénac (17444)' (code INSEE), 'Thénac (17460)' (code postal) ou 'Thénac (17)' (département). Couvre toute la commune (ignore 'rayon_m').
rayon_mNoRayon autour du centre en mètres (défaut 500, max 25000)
date_maxNoBorne maximale inclusive au format ISO 'AAAA-MM-JJ', ex: '2026-09-30'. Omettre pour ne pas fixer de maximum.
date_minNoBorne minimale inclusive au format ISO 'AAAA-MM-JJ', ex: '2026-09-15' (défaut 2021-01-01). Pour une plage, utiliser date_min et date_max séparément, pas une plage dans ce champ.
type_bienNoType de bien vendu : 'maison', 'appartement' ou 'local' (local commercial, industriel ou assimilé)
parcelle_idNoIDU d'une parcelle au centre de la zone
prix_max_eurNoPrix de vente maximal en euros, ex: 400000
prix_min_eurNoPrix de vente minimal en euros, ex: 150000
surface_max_m2NoSurface bâtie maximale en m², ex: 120
surface_min_m2NoSurface bâtie minimale en m², ex: 60

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / commune / description
      Previous value: -"Nom de commune : toute la commune (ignore 'rayon_m')"New value: +"Nom de la commune, ex: 'Angers'. Pour une commune homonyme, préciser son code entre parenthèses : 'Thénac (17444)' (code INSEE), 'Thénac (17460)' (code postal) ou 'Thénac (17)' (département). Couvre toute la commune (ignore 'rayon_m')."
  2. Changed2 schema fields changed
    • changedInput schema / properties / date_max / description
      Previous value: -"Date maximale 'AAAA-MM-JJ'"New value: +"Borne maximale inclusive au format ISO 'AAAA-MM-JJ', ex: '2026-09-30'. Omettre pour ne pas fixer de maximum."
    • changedInput schema / properties / date_min / description
      Previous value: -"Date minimale 'AAAA-MM-JJ' (défaut 2021-01-01)"New value: +"Borne minimale inclusive au format ISO 'AAAA-MM-JJ', ex: '2026-09-15' (défaut 2021-01-01). Pour une plage, utiliser date_min et date_max séparément, pas une plage dans ce champ."
  3. Changed2 schema fields changed
    • changedInput schema / properties / rayon_m / anyOf
      Previous value: -[
      -  {
      -    "anyOf": [
      -      {
      -        "maximum": 2000,
      -        "minimum": 50,
      -        "type": "integer"
      -      },
      -      {
      -        "const": "",
      -        "type": "string"
      -      }
      -    ]
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "maximum": 25000,
      +        "minimum": 50,
      +        "type": "integer"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / rayon_m / description
      Previous value: -"Rayon autour du centre en mètres (défaut 500, max 2000)"New value: +"Rayon autour du centre en mètres (défaut 500, max 25000)"
  4. Changed6 schema fields changed
    • addedInput schema / properties / offset / description
      Added value: +"Index de départ pour la pagination (défaut 0, max 5000). Utiliser pagination.next_offset pour la page suivante."
    • addedInput schema / properties / prix_max_eur / description
      Added value: +"Prix de vente maximal en euros, ex: 400000"
    • addedInput schema / properties / prix_min_eur / description
      Added value: +"Prix de vente minimal en euros, ex: 150000"
    • addedInput schema / properties / surface_max_m2 / description
      Added value: +"Surface bâtie maximale en m², ex: 120"
    • addedInput schema / properties / surface_min_m2 / description
      Added value: +"Surface bâtie minimale en m², ex: 60"
    • addedInput schema / properties / type_bien / description
      Added value: +"Type de bien vendu : 'maison', 'appartement' ou 'local' (local commercial, industriel ou assimilé)"
  5. Changed1 schema field changed
    • addedInput schema / additionalProperties
      Added value: +false
  6. Changed1 schema field changed
    • changedInput schema / properties / tri / description
      Previous value: -"Tri des ventes (défaut : distance autour d'un point, date pour une commune)"New value: +"Tri des ventes (défaut : date décroissante ; distance pour les plus proches)"
  7. Changed45 schema fields changed
    • addedInput schema / properties / address / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "minLength": 3,
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / address / minLength
      Removed value: -3
    • removedInput schema / properties / address / type
      Removed value: -"string"
    • addedInput schema / properties / commune / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / commune / type
      Removed value: -"string"
    • addedInput schema / properties / date_max / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / date_max / pattern
      Removed value: -"^\\d{4}-\\d{2}-\\d{2}$"
    • removedInput schema / properties / date_max / type
      Removed value: -"string"
    • addedInput schema / properties / date_min / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / date_min / pattern
      Removed value: -"^\\d{4}-\\d{2}-\\d{2}$"
    • removedInput schema / properties / date_min / type
      Removed value: -"string"
    • addedInput schema / properties / lat / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / lat / type
      Removed value: -"number"
    • addedInput schema / properties / limit / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "maximum": 50,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / limit / maximum
      Removed value: -50
    • removedInput schema / properties / limit / minimum
      Removed value: -1
    • removedInput schema / properties / limit / type
      Removed value: -"integer"
    • addedInput schema / properties / lng / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / lng / type
      Removed value: -"number"
    • addedInput schema / properties / offset / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "maximum": 5000,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / offset / maximum
      Removed value: -5000
    • removedInput schema / properties / offset / minimum
      Removed value: -0
    • removedInput schema / properties / offset / type
      Removed value: -"integer"
    • addedInput schema / properties / parcelle_id / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "maxLength": 14,
      +        "minLength": 14,
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / parcelle_id / maxLength
      Removed value: -14
    • removedInput schema / properties / parcelle_id / minLength
      Removed value: -14
    • removedInput schema / properties / parcelle_id / type
      Removed value: -"string"
    • addedInput schema / properties / prix_max_eur / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / prix_max_eur / type
      Removed value: -"number"
    • addedInput schema / properties / prix_min_eur / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / prix_min_eur / type
      Removed value: -"number"
    • addedInput schema / properties / rayon_m / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "maximum": 2000,
      +        "minimum": 50,
      +        "type": "integer"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / rayon_m / maximum
      Removed value: -2000
    • removedInput schema / properties / rayon_m / minimum
      Removed value: -50
    • removedInput schema / properties / rayon_m / type
      Removed value: -"integer"
    • addedInput schema / properties / surface_max_m2 / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / surface_max_m2 / type
      Removed value: -"number"
    • addedInput schema / properties / surface_min_m2 / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / surface_min_m2 / type
      Removed value: -"number"
    • addedInput schema / properties / tri / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "enum": [
      +          "date",
      +          "distance"
      +        ],
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / tri / enum
      Removed value: -[
      -  "date",
      -  "distance"
      -]
    • removedInput schema / properties / tri / type
      Removed value: -"string"
    • addedInput schema / properties / type_bien / anyOf
      Added value: +[
      +  {
      +    "anyOf": [
      +      {
      +        "enum": [
      +          "maison",
      +          "appartement",
      +          "local"
      +        ],
      +        "type": "string"
      +      },
      +      {
      +        "const": "",
      +        "type": "string"
      +      }
      +    ]
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / type_bien / enum
      Removed value: -[
      -  "maison",
      -  "appartement",
      -  "local"
      -]
    • removedInput schema / properties / type_bien / type
      Removed value: -"string"
  8. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources