{"serverId":"mcp-registry/io.github.allamiwayl-27/rabatrealestate-mcp","tools":[{"name":"create_lead","fixed":{"name":"create_lead","description":"Creer un lead (contact client) pour prise de rendez-vous ou demande d'information","inputSchema":{"type":"object","required":["name","phone"],"properties":{"name":{"type":"string","description":"Nom du contact (2-120 caracteres)"},"phone":{"type":"string","description":"Telephone (8-24 caracteres, ex: 0612345678)"},"source":{"enum":["website","whatsapp_click","facebook","phone","other","mcp"],"type":"string","description":"Source du lead (defaut: mcp)"},"listingId":{"type":"number","description":"ID du bien concerne (optionnel)"}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":160,"tokensAfter":160},{"name":"estimate_property","fixed":{"name":"estimate_property","description":"Estimer la valeur d'un bien immobilier (prix au m², fourchette basse/haute)","inputSchema":{"type":"object","required":["type","quartier","surface"],"properties":{"etat":{"enum":["renover","bon","neuf"],"type":"string","description":"Etat du bien (optionnel)"},"type":{"enum":["vente","location"],"type":"string","description":"Type de transaction"},"etage":{"enum":["rdc","bas","milieu","haut","dernier"],"type":"string","description":"Type d'etage (optionnel)"},"ville":{"type":"string","description":"Ville (optionnel, defaut: Rabat)"},"pieces":{"type":"number","description":"Nombre de pieces (optionnel)"},"surface":{"type":"number","description":"Surface en m²"},"quartier":{"type":"string","description":"Quartier (ex: Agdal, Hay Riad)"},"standing":{"enum":["economique","standard","standing","luxe"],"type":"string","description":"Standing (optionnel)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":252,"tokensAfter":252},{"name":"get_agency_leaderboard","fixed":{"name":"get_agency_leaderboard","description":"Classement des agences immobilieres par volume d'annonces","inputSchema":{"type":"object","properties":{"limit":{"type":"number","description":"Nombre d'agences (5-100, defaut: 20)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":65,"tokensAfter":65},{"name":"get_comparables","fixed":{"name":"get_comparables","description":"Trouver les annonces les plus similaires a un bien donne (pour evaluation ou estimation)","inputSchema":{"type":"object","required":["listingId"],"properties":{"listingId":{"type":"number","description":"ID du bien de reference"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":76,"tokensAfter":76},{"name":"get_investor_alerts","fixed":{"name":"get_investor_alerts","description":"Identifier les biens sous-evalues (opportunites d'investissement avec discount)","inputSchema":{"type":"object","properties":{"page":{"type":"number","description":"Page (defaut: 1)"},"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: vente)"},"pageSize":{"type":"number","description":"Resultats par page (defaut: 20, max: 100)"},"minSample":{"type":"number","description":"Echantillon minimum par segment (12-300, defaut: 20)"},"minDiscountPct":{"type":"number","description":"Discount minimum en pourcentage (10-70, defaut: 15)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":175,"tokensAfter":175},{"name":"get_liquidity","fixed":{"name":"get_liquidity","description":"Indice de liquidite du marche par quartier (taux de rotation, stock, delai de vente)","inputSchema":{"type":"object","properties":{"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: all)"},"quartier":{"type":"string","description":"Quartier specifique (optionnel, tous si omis)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":104,"tokensAfter":104},{"name":"get_listing","fixed":{"name":"get_listing","description":"Obtenir le détail complet d'un bien immobilier par son ID","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"number","description":"ID du bien immobilier"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":62,"tokensAfter":62},{"name":"get_market_predictions","fixed":{"name":"get_market_predictions","description":"Previsions de prix a 90 jours par quartier (regression lineaire)","inputSchema":{"type":"object","properties":{"months":{"type":"number","description":"Periode d'analyse en mois (3-36, defaut: 12)"},"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: all)"},"quartier":{"type":"string","description":"Quartier specifique (optionnel, tous si omis)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":125,"tokensAfter":125},{"name":"get_market_trends","fixed":{"name":"get_market_trends","description":"Obtenir les tendances du marche immobilier par quartier (variation de prix sur N mois)","inputSchema":{"type":"object","properties":{"months":{"type":"number","description":"Periode en mois (3-36, defaut: 12)"},"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: all)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":102,"tokensAfter":102},{"name":"get_price_analytics","fixed":{"name":"get_price_analytics","description":"Analyser les prix au m² par quartier avec tendances et distribution","inputSchema":{"type":"object","properties":{"page":{"type":"number","description":"Page (defaut: 1)"},"location":{"type":"string","description":"Quartier ou ville specifique (optionnel)"},"pageSize":{"type":"number","description":"Resultats par page (defaut: 20, max: 100)"},"priceMax":{"type":"number","description":"Prix maximum (optionnel)"},"priceMin":{"type":"number","description":"Prix minimum (optionnel)"},"transaction":{"enum":["Vente","Location","Achat"],"type":"string","description":"Type de transaction (defaut: Vente)"},"propertyType":{"type":"string","description":"Type de bien (optionnel, ex: Appartement, Villa)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":209,"tokensAfter":209},{"name":"get_quartier_comparison","fixed":{"name":"get_quartier_comparison","description":"Comparer deux quartiers cote-a-cote (prix m², nombre d'annonces, volatilite)","inputSchema":{"type":"object","required":["q1","q2"],"properties":{"q1":{"type":"string","description":"Premier quartier (ex: Agdal)"},"q2":{"type":"string","description":"Second quartier (ex: Hay Riad)"},"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: all)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":124,"tokensAfter":124},{"name":"get_quartier_stats","fixed":{"name":"get_quartier_stats","description":"Obtenir les statistiques agregees par quartier (prix m² moyen, nombre d'annonces)","inputSchema":{"type":"object","properties":{"transaction":{"enum":["Vente","Location"],"type":"string","description":"Filtrer par transaction"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":77,"tokensAfter":77},{"name":"get_rental_yield","fixed":{"name":"get_rental_yield","description":"Obtenir le rendement locatif brut par quartier (comparatif achat vs location)","inputSchema":{"type":"object","properties":{"quartier":{"type":"string","description":"Quartier specifique (optionnel, tous si omis)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":72,"tokensAfter":72},{"name":"get_suspicious_listings","fixed":{"name":"get_suspicious_listings","description":"Detecter les annonces avec des prix anormaux (IQR outliers, scores de severite)","inputSchema":{"type":"object","properties":{"page":{"type":"number","description":"Page (defaut: 1)"},"status":{"enum":["vente","location","all"],"type":"string","description":"Filtrer par type (defaut: all)"},"pageSize":{"type":"number","description":"Resultats par page (defaut: 20, max: 100)"},"minSample":{"type":"number","description":"Echantillon minimum (12-300, defaut: 20)"},"iqrMultiplier":{"type":"number","description":"Multiplicateur IQR (1.5-3.0, defaut: 2.0)"},"minDeviationPct":{"type":"number","description":"Deviation minimum (10-90%, defaut: 30)"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":195,"tokensAfter":195},{"name":"list_quartiers","fixed":{"name":"list_quartiers","description":"Lister tous les quartiers disponibles avec leur ville","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":40,"tokensAfter":40},{"name":"list_villes","fixed":{"name":"list_villes","description":"Lister toutes les villes disponibles","inputSchema":{"type":"object","properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":35,"tokensAfter":35},{"name":"search_listings","fixed":{"name":"search_listings","description":"Rechercher des biens immobiliers avec filtres (transaction, location, budget, surface, pieces, type de bien, mot-cle)","inputSchema":{"type":"object","properties":{"q":{"type":"string","description":"Mot-cle dans le titre ou la description"},"page":{"type":"number","description":"Page (defaut: 1)"},"sort":{"enum":["price_asc","price_desc","date_desc","date_asc"],"type":"string","description":"Tri"},"location":{"type":"string","description":"Quartier ou ville (ex: Agdal, Hay Riad, Salé)"},"pageSize":{"type":"number","description":"Resultats par page (defaut: 12, max: 60)"},"priceMax":{"type":"number","description":"Prix maximum en MAD"},"priceMin":{"type":"number","description":"Prix minimum en MAD"},"roomsMax":{"type":"number","description":"Nombre maximum de pieces"},"roomsMin":{"type":"number","description":"Nombre minimum de pieces"},"surfaceMax":{"type":"number","description":"Surface maximum en m²"},"surfaceMin":{"type":"number","description":"Surface minimum en m²"},"transaction":{"enum":["Vente","Location"],"type":"string","description":"Type de transaction"},"propertyType":{"enum":["Appartement","Maison","Villa","Studio","Terrain","Bureau","Commerce","Riad"],"type":"string","description":"Type de bien"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":354,"tokensAfter":354}],"toolsChanged":17,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}