com.avnester.mcp/property-intelligence
Official11 toolsAVnester — Indian Real Estate Intelligence
Indian real estate: property search, locality insights, affordability & pan-India stamp-duty tools.
Indian real estate search with locality insights, affordability analysis, and stamp-duty tools.
Captured live from the server via tools/list.
search_properties
Search residential property listings in Coimbatore, Tamil Nadu. Use when the user names a Coimbatore locality, price band, BHK, or transaction type. Returns sanitized listing cards with handoff URLs and a per-listing verified flag; never returns seller contact details. Out-of-scope cities return supported=false + supportedCities + scopeMessage — surface the scopeMessage to the user.
Parameters (9)
- citystring
Indian city name (e.g., "Bangalore", "Coimbatore"). Required for results.
- localitystring
Locality/neighborhood within the city (e.g., "Indiranagar").
- propertyTypestring
Property type.
- bedroomsinteger
Number of bedrooms (BHK).
- minPriceinteger
Minimum price in INR.
- maxPriceinteger
Maximum price in INR.
- transactionTypestring
Whether to search for sale or rent.
- furnishingstring
Furnishing status (rental queries).
- limitinteger
Maximum number of listings to return (cap: 20). v1 abuse defense.
get_locality_insights
Get aggregated insights for a Coimbatore locality: avg price, supply count, demand pulse, livability/investment grade, highlights, watchouts, 12-month priceTrends, and strengthTags. Use when the user asks "what is X locality like" about a Coimbatore neighborhood. Out-of-scope cities return supported=false; surface the scopeMessage to the user. Always surface the disclaimer field when returning livability or investment grade.
Parameters (2)
- localitystringrequired
Locality name within an Indian city.
- citystringrequired
Indian city (required).
compare_localities
Compare 2–3 Coimbatore localities side-by-side: price trends, livability, investment grade, strengths, and watchouts. Use when the user asks "X vs Y" or "which is better between X and Y for buying/renting" about Coimbatore neighborhoods. Out-of-scope cities return supported=false; surface the scopeMessage to the user. For comparing specific LISTINGS by ID, use compare_properties instead.
Parameters (3)
- citystringrequired
Indian city covering all compared localities.
- localitiesarrayrequired
2–3 localities to compare (array, not comma-separated string).
- propertyTypestring
Property type for comparison.
calculate_home_affordability
Estimate the monthly home-loan EMI / monthly payment in India — a home-loan calculator. Deterministic math; not advice or a loan-approval claim. Two modes: pass propertyValue (80% LTV assumed) OR loanAmount for a specific loan (e.g. "₹50 lakh loan"). Use for "what would my EMI be" / "monthly payment on …". The response `assumptionNote` states the basis in plain words. Always surface the disclaimer field.
Parameters (4)
- propertyValueintegerrequired
Property value (price) in INR. When the user states a property/home price, put it here — an 80% loan is assumed unless loanAmount is also given.
- loanAmountinteger
Loan amount in INR. Pass this when the user states a specific loan (e.g. "₹50 lakh loan") rather than a property price. Defaults to 80% of propertyValue if omitted.
- interestRatePercentnumber
Annual interest rate (percent). Defaults to current market estimate.
- tenureYearsinteger
Loan tenure in years. Defaults to 20.
simulate_loan_prepayment
Simulate prepaying / repaying an Indian home loan early. Pure deterministic math — no advice, no loan-approval claim. Use for "should I prepay", "early/part/lump-sum repayment", "pay extra each month", "reduce EMI or tenure", "interest saved", or foreclosure. Modes: one-time, recurring yearly, or a fixed extra every month (recurring_monthly). Compares reduce_tenure (keep EMI, finish early) vs reduce_emi (keep tenure, lower EMI). Always surface the disclaimer field.
Parameters (8)
- outstandingPrincipalintegerrequired
Current outstanding home-loan principal in INR.
- remainingTenureYearsintegerrequired
Years left on the loan at the current EMI.
- annualRatePercentnumber
Current annual interest rate (percent). Defaults to the indicative market rate when omitted.
- prepaymentAmountinteger
One-time lump-sum prepayment in INR (one_time / one_time_plus_recurring* modes).
- recurringAnnualAmountinteger
Recurring yearly prepayment in INR (recurring_annual / one_time_plus_recurring modes).
- recurringMonthlyAmountinteger
Fixed extra paid toward principal EVERY month on top of the EMI (recurring_monthly / one_time_plus_recurring_monthly modes).
- prepaymentModestring
How the prepayment is made (annual anniversary vs every month).
- strategystring
reduce_tenure keeps the EMI and finishes early (bigger saving); reduce_emi keeps the tenure and lowers the EMI; compare_both returns both.
compare_balance_transfer
Compare staying on your current home loan vs. transferring (refinancing) to a lower rate. Pure deterministic math — no advice, no loan-approval claim. Use when the user asks "should I switch lenders / transfer my loan / refinance". Returns new EMI, interest saved over the remaining tenure, switching cost, net saving, and the breakeven month. Always surface the disclaimer field.
Parameters (6)
- outstandingPrincipalintegerrequired
Current outstanding home-loan principal in INR.
- currentRatePercentnumberrequired
Current annual interest rate (percent).
- newRatePercentnumberrequired
New lender annual interest rate (percent).
- remainingTenureYearsintegerrequired
Years left on the loan.
- processingFeePctnumber
New-lender processing fee on the balance (percent). Defaults to 0.5%.
- flatCostsinteger
Flat legal + valuation charges in INR. Defaults to ₹12,500.
optimize_home_loan_tax_regime
Compare a home-loan borrower's income tax under the OLD vs NEW regime (FY2026-27) and recommend which regime saves more income tax. Pure deterministic slab math — not tax advice. Use when the user asks "old or new tax regime", "home-loan tax benefit", or "section 80C / 24(b) deduction". Models §24(b) interest + §80C principal (+ joint-loan doubling); the response lists benefits it does NOT model (capital gains, HRA, etc.). Always surface the disclaimer field.
Parameters (18)
- annualIncomeintegerrequired
Annual gross income in INR EXCLUDING house property (salary + other income).
- isSalariedboolean
Whether the taxpayer is salaried (gets the standard deduction).
- homeLoanInterestintegerrequired
Annual home-loan interest paid (INR).
- homeLoanPrincipalintegerrequired
Annual home-loan principal repaid (INR) — counts toward 80C.
- propertyTypestring
Whether the property is self-occupied or let out.
- annualRentinteger
Annual rent received in INR — required for let_out.
- other80Cinteger
Other 80C investments in INR (PF, ELSS, insurance, etc.).
- otherOldRegimeDeductionsinteger
Other OLD-regime-only deductions as a lump (HRA exemption, 80D, NPS 80CCD(1B), etc.).
- jointLoanboolean
Joint loan with a co-borrower — doubles the 80C/24b caps (equal-split assumption).
- ageBandstring
Taxpayer age band — raises the OLD-regime basic exemption (senior 60–80 → ₹3L, super-senior 80+ → ₹5L). New regime unaffected. Defaults to below60.
- residencyStatusstring
Default resident. Pass nri to get §195 TDS + LRS-cap math in the response.
- countryOfResidencestring
NRI only — DTAA article lookup hint. Free-form country name.
- saleValueinteger
NRI only — sale consideration in INR for §195 TDS computation.
- holdingMonthsinteger
NRI only — holding period in months. ≤24 is STCG; >24 is LTCG.
- indexedCostinteger
NRI only — indexed cost of acquisition (LTCG). When omitted, TDS computed on full sale value.
- nroBalanceUsdnumber
NRI only — NRO account balance in USD equivalent for the repatriation cap math.
- ytdRemittedUsdnumber
NRI only — FY-to-date USD already remitted under the $1M cap.
- hasForm15CBboolean
NRI only — whether Form 15CB CA-attestation is already in hand.
estimate_stamp_duty_and_registration
Estimate Indian state stamp duty + registration charges on a property purchase. Supports all 28 states + 8 UTs with buyer-gender concessions, urban/rural overrides, and commercial/agricultural multipliers. Pass constructionStatus to also itemize GST (under-construction 1%/5%, ready/resale 0%) for an all-in statutory quote. Returns supported=false for states outside India (supported set named in rateBasis). Not legal/tax advice. Always surface the disclaimer.
Parameters (8)
- propertyValueintegerrequired
Sale value in INR for stamp-duty calculation.
- statestring
Indian state — accepts ISO code ("MH"), URL slug ("maharashtra"), or display name ("Maharashtra"). All 28 states + 8 UTs supported.
- isWomanBuyerboolean
Backward-compatibility shim — prefer buyerGender. When true, internally treated as buyerGender="female".
- buyerGenderstring
Buyer gender — overrides isWomanBuyer when set. "joint" = man+woman jointly owned.
- propertyTypestring
Property type — applies state-specific multiplier (commercial/agricultural).
- isUrbanboolean
Whether property is in an urban/metro area — gates metro-cess surcharges (e.g., Mumbai LBT, BBMP cess).
- constructionStatusstring
When set, also itemizes GST: under-construction = 1% (affordable) / 5%; ready/resale = 0%. Omit → GST not computed.
- carpetAreaSqftinteger
Carpet area (sqft) — with value, decides the affordable-housing 1% GST slab.
get_property_details
Fetch full public details for one AVnester listing by its listingId. Get the listingId from search_properties results first (the `listingId` field) — IDs are not guessable, so this tool is the natural follow-up to a search. AVnester's catalog is currently Coimbatore-only; unknown or unpublished IDs return { listing: null, notFound: true } (never throws, to avoid leaking existence). Use when the user references a specific listing. Read-only, no side effects.
Parameters (1)
- listingIdstringrequired
AVnester listingId, as returned in search_properties results (the `listingId` field). IDs are not guessable — call search_properties first. Also the trailing segment of a listing sourceUrl.
compare_properties
Compare 2–5 AVnester listings by listingId, side-by-side. Get IDs from search_properties first (not guessable). If the user has more than 5 candidates ("compare all"), pick the most relevant 5 (cheapest / largest / best price-per-sqft) and say so. Returns each listing plus pricePerSqft, vsCheapestPercent (0 = cheapest), vsLargestAreaPercent (0 = largest). Coimbatore-only; unknown IDs return not_found_or_unpublished. Does NOT recommend a purchase. Always surface the disclaimer field.
Parameters (1)
- listingIdsarrayrequired
2–5 AVnester listingIds (from search_properties results) to compare. IDs are not guessable — call search_properties first. Order is preserved in the output.
get_property_decision_intelligence
Assess whether a buyer can afford a specific Indian home — ONE verdict (AFFORDABLE / STRETCH / NOT_YET / INELIGIBLE) combining indicative eligibility (FOIR/LTV/CIBIL), EMI, true cash-to-close (down payment + stamp duty + registration + itemized GST), regime-aware tax, and an indicative lender-fit triage. Mode A: listingId (Coimbatore catalog). Mode B: propertyValue + state (any Indian state). NOT a loan approval, offer, or advice. Always surface the disclaimer.
Parameters (21)
- listingIdstring
AVnester listingId (Coimbatore catalog). Listing mode — do NOT also pass propertyValue (rejected) or state (ignored).
- propertyValueinteger
Property price in INR (manual mode). Pass with state; not with listingId.
- statestring
Indian state (ISO "MH"/slug/name) for stamp duty. Required in manual mode; ignored in listing mode.
- assetTypestring
"home" (flat/villa/house) or "plot" (bare land); manual mode only. Plot → shorter tenure, no home-loan tax benefit.
- monthlyNetIncomeintegerrequired
Buyer monthly take-home income in INR.
- existingMonthlyEmisinteger
Existing monthly loan EMIs in ₹ (car/personal/cards). Omitted → assumed ₹0, which can inflate eligibility and flip the verdict — ask the buyer.
- coApplicantMonthlyIncomeinteger
Co-applicant monthly income (joint affordability).
- savingsAvailableinteger
Liquid cash for down payment + charges — enables the cash-gap calc.
- cibilScoreinteger
Numeric CIBIL score. Omit → eligibility stays indicative.
- employmentTypestring
Employment type (affects tax standard deduction).
- residencyStatusstring
Residency status.
- buyerGenderstring
Buyer gender — affects stamp duty in states with a women concession.
- occupancyIntentstring
Self-occupied vs let-out — changes §24(b) interest treatment. Omitted → self-occupied.
- annualRentinteger
Annual rent received (let-out).
- jointLoanboolean
Joint home loan — doubles 80C/24b caps (equal split).
- isUnderConstructionboolean
Under-construction → GST applies; ready-to-move → no GST. Omitted → ready-to-move (no GST).
- carpetAreaSqftinteger
Carpet area (sqft) — sharpens the affordable-housing GST test (with the ₹45L value cap).
- isUrbanboolean
Urban/metro — gates metro-cess surcharges in stamp duty.
- interestRatePercentnumber
Override annual interest rate. Defaults to indicative market rate.
- tenureYearsinteger
Loan tenure in years. Defaults to 20.
- annualIncomeForTaxinteger
Annual income for tax. Defaults to monthlyNetIncome × 12.
README not available yet.
Install
claude_desktop_config.json
{
"mcpServers": {
"property-intelligence": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.avnester.com/public-mcp"
]
}
}
}Desktop config is stdio-only; this bridges via mcp-remote. Native remote: Settings > Connectors.