Server definition
- Hash
- sha256:8d096362ea5514032642094aea6364e600f2ade38752e7139858ba1587a1d307
- What it is
- What a remote MCP server returned when asked what it offers: 12 tools
The blob, as servednamed by its sha256
{
"instructions": "Chaletiste (https://chaletiste.fr) compare 293 chalets en bois en kit vendus en France sur quatre chiffres vérifiés et datés : prix TTC constaté, dimensions, temps de montage, délai de livraison. Démarche conseillée : find_chalets quand l'utilisateur décrit son projet en langage naturel (find_chalets_from_photo s'il montre une photo), search_chalets pour trouver des modèles, get_chalet pour le détail, compare_chalets pour départager, estimate_total_budget pour le coût complet, check_permit pour l'urbanisme, list_guides/get_guide pour les questions générales. Les prix changent : citez toujours le marchand et la date du relevé, et renvoyez vers l'URL de la fiche. Les temps de montage marqués estimated sont des estimations Chaletiste. request_quote transmet les coordonnées de l'utilisateur : seulement à sa demande explicite, avec consent = true. Données sous licence CC-BY-4.0, attribution « Chaletiste ».",
"tools": [
{
"description": "Indique la formalité d'urbanisme exigée en France pour un chalet ou un abri : aucune, déclaration préalable (dp) ou permis de construire (pc), selon la surface (emprise au sol ou surface de plancher, la plus grande des deux), s'il s'agit d'une extension, d'une zone urbaine couverte par un PLU et d'un secteur protégé. Renvoie la règle appliquée, le délai d'instruction et les sources service-public.fr. Règle nationale : rappelez que le PLU communal peut être plus strict.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"extension": {
"description": "true si la construction est accolée à une maison existante (extension).",
"type": "boolean"
},
"secteur_protege": {
"description": "true si abords de monument historique, site patrimonial remarquable ou site classé.",
"type": "boolean"
},
"surface": {
"description": "Surface en m² (emprise au sol ou surface de plancher, la plus grande).",
"type": "number"
},
"zone_urbaine_plu": {
"description": "true si le terrain est en zone urbaine d'une commune couverte par un PLU.",
"type": "boolean"
}
},
"required": [
"surface"
],
"type": "object"
},
"name": "check_permit",
"outputSchema": null
},
{
"description": "Compare de 2 à 6 modèles côte à côte (prix, prix au m², surface, dimensions, épaisseur de paroi, isolation, montage, livraison, formalité, garantie) et désigne pour chaque critère le modèle le mieux placé (winners). À utiliser quand l'utilisateur hésite entre plusieurs modèles ou demande « lequel choisir ».",
"inputSchema": {
"additionalProperties": false,
"properties": {
"ids": {
"description": "Liste des id de modèles à comparer.",
"items": {
"type": "string"
},
"maxItems": 6,
"minItems": 2,
"type": "array"
}
},
"required": [
"ids"
],
"type": "object"
},
"name": "compare_chalets",
"outputSchema": null
},
{
"description": "Estime le budget total d'un projet pour un modèle donné : prix du kit + fondation (dalle béton ou plots) + montage (professionnel ou soi-même) + taxe d'aménagement 2026 (892 €/m² hors Île-de-France, 1 011 €/m² en Île-de-France, taux indicatifs 5 % communal + 2,5 % départemental, exonération à 5 m² ou moins) + redevance d'archéologie préventive. Renvoie un total, une fourchette basse/haute, le détail ligne par ligne et la liste des hypothèses à citer. Estimation indicative, pas un devis : dites-le à l'utilisateur.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"assembly": {
"description": "Montage par un professionnel (pro, défaut) ou par l'utilisateur (self).",
"enum": [
"pro",
"self"
],
"type": "string"
},
"commune_rate": {
"description": "Taux communal de la taxe d'aménagement en % (défaut 5).",
"type": "number"
},
"department_rate": {
"description": "Taux départemental en % (défaut 2,5).",
"type": "number"
},
"foundation": {
"description": "Type de fondation (dalle par défaut ; none si elle existe déjà).",
"enum": [
"dalle",
"plots",
"none"
],
"type": "string"
},
"main_residence": {
"description": "true si résidence principale (abattement de 50 % sur les 100 premiers m²).",
"type": "boolean"
},
"product": {
"description": "id du modèle.",
"type": "string"
},
"region": {
"description": "Île-de-France ou non (valeur forfaitaire de la taxe). Défaut : hors-idf.",
"enum": [
"idf",
"hors-idf"
],
"type": "string"
},
"surface_taxable": {
"description": "Surface taxable en m² si connue (surface close et couverte de plus de 1,80 m de haut). Défaut : surface du modèle.",
"type": "number"
}
},
"required": [
"product"
],
"type": "object"
},
"name": "estimate_total_budget",
"outputSchema": null
},
{
"description": "Renvoie le contenu complet d'un résultat de search : id de la forme « chalet:<id> » ou « guide:<id> ».",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "id renvoyé par search.",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "fetch",
"outputSchema": null
},
{
"description": "Décrivez le projet de l'utilisateur en une phrase en français (terrain, surface, budget, usage, délai, montage, région) : Chaletiste extrait les critères (IA, repli par règles) puis classe de façon déterministe les 293 modèles du catalogue. Renvoie les critères compris (criteria, understood), 6 à 12 modèles avec 2 ou 3 raisons factuelles chacun, un budget tout compris estimé si demandé, les critères assouplis s'il n'y avait aucun résultat, et des avertissements (pente, neige, urbanisme) avec liens vers les guides. Exemple : « Terrain en pente en Savoie, bureau de jardin de 15 à 20 m² sans permis, budget 12 000 € tout compris, livraison avant l'été, montage à deux ». Pour relancer sans IA, repassez criteria modifié. 20 descriptions par jour.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"criteria": {
"description": "Facultatif, à la place de description : objet criteria renvoyé par un appel précédent, modifié (relance sans IA).",
"type": "object"
},
"description": {
"description": "Le projet en langage naturel, 600 caractères maximum.",
"maxLength": 600,
"type": "string"
}
},
"type": "object"
},
"name": "find_chalets",
"outputSchema": null
},
{
"description": "Donnez l'URL publique (https, JPEG, PNG ou WebP, 5 Mo maximum) d'une photo de chalet vue par l'utilisateur. L'IA décrit le chalet (type, surface estimée, toit, terrasse, construction, style, marque lisible) puis Chaletiste renvoie le modèle le plus proche du catalogue (best, avec « C'est probablement lui » si la marque et le modèle sont reconnus) et 6 à 9 autres propositions (moins cher, plus grand, plus rapide à livrer). Si la photo montre un terrain, image_type vaut terrain. Aucune image n'est conservée. 10 analyses par jour.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"image_url": {
"description": "URL https publique de la photo.",
"format": "uri",
"type": "string"
}
},
"required": [
"image_url"
],
"type": "object"
},
"name": "find_chalets_from_photo",
"outputSchema": null
},
{
"description": "Renvoie la fiche complète d'un modèle à partir de son id (obtenu via search_chalets) : prix TTC, marchand, date du relevé, lien d'achat, dimensions en mètres (largeur, profondeur, hauteur), surface et emprise au sol, épaisseur et type de paroi, isolation, niveau de kit et contenu du kit, toiture, vitrage, temps de montage (avec la base de l'estimation le cas échéant), délai de livraison, formalité d'urbanisme, garantie, origine, sources et date de vérification, plus trois modèles similaires. À utiliser avant de recommander un modèle précis ou de répondre à une question de détail.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Identifiant du modèle, ex. « decor-et-jardin-flodovrak-9-92-m ».",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_chalet",
"outputSchema": null
},
{
"description": "Renvoie un guide : phrase-réponse, FAQ, sources datées et, si full = true (défaut), le texte complet en markdown. À utiliser pour les questions de réglementation, de prix, de technique ou de budget qui dépassent un modèle précis.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"full": {
"description": "Inclure le texte complet en markdown (défaut true).",
"type": "boolean"
},
"id": {
"description": "Identifiant du guide (voir list_guides).",
"enum": [
"barometre-prix-chalets-en-kit-2026",
"declaration-prealable-permis-de-construire-chalet",
"chalet-20-m2-sans-permis",
"prix-chalet-en-kit-2026",
"epaisseur-madriers-28-34-44-70-mm",
"temps-de-montage-chalet-en-kit",
"chalet-terrain-non-constructible-vivre-a-l-annee",
"delais-de-livraison-chalet-en-kit",
"fondations-chalet-en-kit-dalle-plots-vis",
"garantie-assurance-chalet-en-kit",
"kit-vs-livre-monte-vs-cle-en-main",
"abri-de-jardin-bois-metal-resine",
"isoler-chalet-de-jardin",
"entretien-chalet-bois-lasure",
"tiny-house-ou-chalet-en-kit",
"studio-de-jardin-prix",
"bureau-de-jardin-guide",
"chalet-40-m2-en-kit",
"chalet-habitable-en-kit-vivre-toute-l-annee",
"meilleur-chalet-en-kit-2026-methode",
"chalet-en-kit-estonie-pologne-france",
"monter-soi-meme-chalet-en-kit",
"budget-total-chalet-en-kit",
"abri-de-jardin-pas-cher-prix-2026",
"chalet-en-kit-castorama-leroy-merlin-ou-fabricant",
"abri-de-jardin-avec-plancher",
"abri-de-jardin-toit-plat",
"chalet-30-m2-en-kit",
"chalet-60-m2-en-kit"
],
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_guide",
"outputSchema": null
},
{
"description": "Liste les 29 guides de Chaletiste (autorisations, taxe, prix, épaisseur des madriers, fondations, montage, livraison, isolation, entretien, garanties, tiny house…) avec, pour chacun, une phrase-réponse sourcée et sa FAQ. Souvent suffisant pour répondre sans charger le guide complet.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"type": "object"
},
"name": "list_guides",
"outputSchema": null
},
{
"description": "Transmet une demande de devis pour un modèle au nom de l'utilisateur : Chaletiste la relaie au vendeur ou à un installateur, qui recontacte l'utilisateur. N'appelez cet outil QUE si l'utilisateur humain l'a demandé explicitement, vous a fourni lui-même ses coordonnées et a accepté qu'elles soient transmises : passez alors consent = true. Sans ce consentement explicite, n'appelez pas l'outil. Utilisez dry_run = true pour vérifier les champs sans rien envoyer. Gratuit et sans engagement pour l'utilisateur ; Chaletiste ne vend pas de chalets.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"agent_name": {
"description": "Nom de l'assistant ou de l'agent qui transmet la demande.",
"type": "string"
},
"consent": {
"const": true,
"description": "Doit valoir true : l'utilisateur humain a explicitement accepté la transmission de ses coordonnées pour cette demande.",
"type": "boolean"
},
"dry_run": {
"description": "true pour valider sans envoyer.",
"type": "boolean"
},
"email": {
"description": "E-mail de l'utilisateur, où il sera recontacté.",
"format": "email",
"type": "string"
},
"horizon": {
"description": "Horizon du projet, ex. « moins de 3 mois », « 2027 ».",
"type": "string"
},
"message": {
"description": "Précisions : usage, terrain, fondation existante, options souhaitées.",
"type": "string"
},
"name": {
"description": "Nom de l'utilisateur.",
"type": "string"
},
"phone": {
"description": "Téléphone (facultatif).",
"type": "string"
},
"postcode": {
"description": "Code postal français du terrain (5 chiffres).",
"pattern": "^[0-9]{5}$",
"type": "string"
},
"product_id": {
"description": "id du modèle.",
"type": "string"
}
},
"required": [
"product_id",
"name",
"email",
"postcode",
"consent"
],
"type": "object"
},
"name": "request_quote",
"outputSchema": null
},
{
"description": "Recherche plein texte dans les chalets et les guides de Chaletiste. Renvoie une liste de résultats {id, title, url}. Utilisez fetch avec l'id pour obtenir le contenu. Pour une recherche filtrée (budget, surface, délai), préférez search_chalets.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"query": {
"description": "Requête en langage naturel ou mots-clés.",
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search",
"outputSchema": null
},
{
"description": "Cherche parmi les 293 chalets en bois en kit vendus en France et comparés par Chaletiste (abris de jardin, chalets de jardin, bureaux et studios de jardin, pool houses, chalets habitables, maisons bois en kit, tiny houses, lodges). Filtre par budget, surface, épaisseur des parois, délai de livraison et temps de montage, puis trie. Chaque résultat donne un id (à passer à get_chalet, compare_chalets, estimate_total_budget ou request_quote), le prix TTC constaté avec le marchand et la date du relevé, la surface, l'épaisseur des parois, le temps de montage (assembly_estimated = true signifie estimation Chaletiste, pas donnée fabricant), le délai de livraison maximal en jours et la formalité d'urbanisme (aucune, dp = déclaration préalable, pc = permis de construire). Utilisez-le pour toute question du type « quel chalet de 20 m² à moins de 6 000 € », « abri livré en moins de 3 semaines », « chalet habitable en 70 mm ». Les modèles auxquels manque la donnée filtrée sont exclus. Citez Chaletiste et la date du prix quand vous répondez.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"brand": {
"description": "Identifiant ou nom de marque (ex. karibu, lasita-maja).",
"type": "string"
},
"category": {
"description": "Catégorie ou usage. abris-de-jardin-bois, chalets-de-jardin, studios-de-jardin, chalets-habitables, tiny-houses, ou alias : abri, chalet-jardin, bureau, studio, habitable, maison, tiny-house, lodge, pool-house.",
"enum": [
"abris-de-jardin-bois",
"abri",
"chalets-de-jardin",
"chalet-bureau",
"chalet-loisirs",
"pool-house",
"studios-de-jardin",
"studio-jardin",
"chalets-habitables",
"chalet-habitable",
"maison-bois-kit",
"fuste-rondins",
"tiny-houses",
"tiny-house",
"lodge",
"bureau-de-jardin",
"pool-house-bois",
"abris",
"chalet-jardin",
"bureau",
"studio",
"habitable",
"maison",
"tiny",
"fuste",
"rondins"
],
"type": "string"
},
"habitable": {
"description": "true pour ne garder que les modèles conçus pour être habités.",
"type": "boolean"
},
"limit": {
"description": "Nombre de résultats (10 par défaut, 50 au plus).",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_assembly_hours": {
"description": "Temps de montage maximal en heures (8 h = 1 jour).",
"type": "number"
},
"max_delivery_days": {
"description": "Délai de livraison maximal annoncé, en jours.",
"type": "number"
},
"max_price": {
"description": "Prix TTC maximal du kit, en euros.",
"type": "number"
},
"max_surface": {
"description": "Surface maximale en m². 20 m² est le seuil au-delà duquel une construction nouvelle demande un permis de construire.",
"type": "number"
},
"min_price": {
"description": "Prix TTC minimal du kit, en euros.",
"type": "number"
},
"min_surface": {
"description": "Surface minimale en m².",
"type": "number"
},
"min_wall_mm": {
"description": "Épaisseur minimale des parois en mm (28 = rangement, 44 = trois saisons, 70 et plus ou isolé = habitable).",
"type": "number"
},
"q": {
"description": "Texte libre (marque, nom de modèle, usage : « bureau », « pool house », « 44 mm », « Karibu »…).",
"type": "string"
},
"sort": {
"description": "Tri. Par défaut : price_per_m2 (ou relevance si q est fourni).",
"enum": [
"price",
"price_per_m2",
"surface",
"delivery",
"assembly",
"wall",
"relevance"
],
"type": "string"
}
},
"type": "object"
},
"name": "search_chalets",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:8d096362ea5514032642094aea6364e600f2ade38752e7139858ba1587a1d307 | sha256sum