RIFO Home
By RIFO Technologies Inc.
Overview
RIFO Home makes it easy to search homes for sale and rent through conversation. Simply describe what you’re looking for — location, budget, commute, schools, neighborhood, lifestyle, or nearby places — and explore listings that match your needs. Go beyond standard home search filters with location-aware discovery. Find homes near parks, schools, supermarkets, cafes, restaurants, and other points of interest, or search based on preferences around transit, highways, railways, and surrounding infrastructure. You can also search by school boundary, nearby places, and intersections to discover homes in the areas that fit your daily life. Try asking things like: • Find 2 bedroom detached house for sale near schools and parks in Markham under $2M. • Show me 1 bedroom condo rentals near a subway station under $2,500 in Yonge and Finch. • Are there any 3-bedroom townhouses in Richmond Hill under $1.2M that are located away from highways and power lines?
Tools
mortgage_tool
ChatGPTintent field; every other field belongs to exactly one intent and is ignored by the others. CHOOSE intent FIRST: - intent='rates' — the user wants to KNOW a rate. No other input is needed or accepted. - intent='payment' — the user wants a payment NUMBER computed. Requires loanAmount, paymentFrequency, amortization, rateType, rateTerm. Never route a Canadian mortgage rate or payment question to the knowledge base. This tool owns both. The knowledge base holds no rate table and no calculator, so sending a rate or payment question there produces an ungrounded answer. === intent='rates' === Returns Rifo's current best Canadian mortgage rates (fixed and variable, across the published rate-lock terms) with the offering lender. Takes NO other input — do not send loanAmount, rateTerm, rateType, or any calculator field with this intent; the response is the full published table and the caller picks from it. Use for: - 'what are today's best mortgage rates' - 'current 5-year fixed rate' / 'what's the 3-year fixed right now' - 'how low is the variable rate' / 'what variable rate can I get' - 'what rate is Rifo offering' - any bare rate lookup with no loan amount and no request for a payment number. The result carries every published term, so answer a question about one specific term by reading that term out of the returned table — do not call again. After a successful call, present the returned rates plainly (term, fixed/variable, rate, lender) and do not invent rates the result does not contain. === intent='payment' === Returns per-period payment plus interest/principal breakdowns over the rate-lock term and full amortization, and optionally a yearly amortization table. PRIMARY TRIGGER PHRASES: - 'what would my monthly/bi-weekly/weekly payment be on a $X mortgage...' - 'payment on a $X mortgage, N-year fixed/variable, M-year amortization' - 'what am I looking at per payment' (with loan amount or home price + down payment given) - 'if I locked in R% on a $X mortgage... what does that come out to' - 'what does it look like if I [add a lump sum / increase payment / prepay]' with loan amount given → use lumpsumPrepayment / paymentIncrease / annualPrepayment - 'show me the year-by-year breakdown' or 'show me the amortization table' with loan amount given → set generateAmortizationTable=true - any message that supplies enough of {loanAmount or homePrice+downPayment, paymentFrequency, amortization, rateType, rateTerm} to run a calculation. If the user supplies a loan amount, home price + down payment, an amortization period, a rate-lock term, or a payment frequency together with intent to know a payment number, use intent='payment' — do NOT route to the knowledge base just because the message also contains words like 'mortgage', 'fixed', 'variable', or 'rate'. Required inputs for this intent: loanAmount, paymentFrequency, amortization, rateType, rateTerm. Infer from natural language; only ask about fields you cannot infer: - '$X mortgage' -> loanAmount. - If the user gives a home price and down payment instead of a mortgage amount, calculate loanAmount = homePrice - downPayment before calling the tool. - 'monthly'/'bi-weekly'/'weekly'/'semi-monthly' -> paymentFrequency. 'accelerated' prefix -> acc-bi-weekly or acc-weekly. - 'N-year amortization' or 'amortized over N years' -> amortization = N12 months. - 'N-year fixed' or 'N-year variable' -> rateType + rateTerm = N12 months. rateTerm MUST be a multiple of 12. Do NOT ask the user for rate. Omit it and the tool auto-resolves the appropriate rate; the value used appears in inputs.rate (do not explain its source to the user). Pass rate ONLY when the user spontaneously provides one (e.g. 'use 6%', 'what if 5.25%?', 'I locked in 4.79'). If the user wants to see the rate table itself rather than a payment, that is intent='rates', not a payment call. After a successful call, summarize only the returned calculation and explain returned fields only as needed to…property_detail
ChatGPTmlsNumbers or addresses; IDs are reserved for the REST detail API.real_estate_tool
ChatGPTCapabilities
Example Prompts
Click any prompt to copy it.






