KeyReady — Australian home loan readiness
Server Details
Australian home loan readiness: ~90 lenders' rules, stamp duty, grants, 5% Deposit Scheme, rates
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- silas-dsc/keyready
- GitHub Stars
- 0
TDQS
Scored across 5 tools
Each tool targets a clearly distinct question: overall readiness, stamp duty, 5% scheme eligibility, live lender rates, and broker referral. There is no overlap or risk of misselection between them.
All names follow a consistent snake_case verb_noun pattern (assess_, calculate_, check_, list_, refer_). The verbs match the action each tool performs, making the set highly predictable.
Five tools is well-scoped for a focused loan-readiness server, and each covers a distinct step in the buyer's journey. None appear redundant or trivial.
The surface covers assessment, costs (stamp duty), eligibility (5% scheme), rates, and referral, forming a coherent workflow. Minor gaps exist — no standalone repayment/borrowing-power calculator or lender-by-lender match list — but these are partially absorbed by assess_home_loan_readiness.
Available Tools
5 toolsassess_home_loan_readinessAssess home loan readinessBRead-onlyIdempotentInspect
Check a borrower’s situation against each Australian lender’s published rules. Returns how many lenders it fits, borrowing power, LVR, stamp duty, grants, 5% Deposit Scheme eligibility, profession LMI waivers, the fastest fixes and a link to the full interactive report.
| Name | Required | Description | Default |
|---|---|---|---|
| gift | No | Family gift toward the deposit | |
| loan | No | Loan amount in AUD; if omitted, savings + gift less upfront costs is used as the deposit | |
| site | No | Which KeyReady site the report link should open | core |
| price | Yes | Purchase price in AUD | |
| state | Yes | State or territory where the property is | |
| low_doc | No | Self-employed without two years of lodged tax returns | |
| purpose | No | owner | |
| savings | No | ||
| location | No | Capital city / regional centre, or elsewhere in the state | capital |
| household | No | ||
| applicants | Yes | One or two borrowers; the first is the main borrower | |
| dependants | No | ||
| first_home | Yes | Never owned property in Australia | |
| profession | No | Main borrower’s profession. Some lenders waive LMI for listed professions. | |
| credit_score | No | Equifax-style score out of 1200, if known | |
| hecs_balance | No | ||
| property_type | No | house | |
| lives_overseas | No | Main borrower currently lives outside Australia | |
| personal_loans | No | Personal and car loan balances | |
| credit_defaults | No | no | |
| income_currency | No | AUD | |
| new_or_existing | No | existing | |
| credit_card_limits | No | Total credit card limits (not balances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent and closed-world, so the safety profile is covered. The description earns credit for enumerating the outputs (lender fit count, borrowing power, LVR, stamp duty, grants, scheme eligibility, LMI waivers, fixes, report link) since there is no output schema, though it omits caveats such as results being estimates against published policy rather than approvals.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first front-loads the core action, the second packs the return values into a dense list with no filler. Slightly long return enumeration, but each item is a distinct result the caller needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 23-parameter financial assessment with no output schema, the description gives a reasonable picture of what comes back but says little about input expectations or the estimates-vs-approvals nature of the output. Adequate, but gaps remain for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 23 parameters and only 61% schema description coverage, the description adds essentially nothing about inputs — no explanation of how savings/gift/loan interact, what 'site' controls, or how multi-applicant income is combined. The enum-heavy, under-documented surface is left entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: checking a borrower's situation against each Australian lender's published rules. It is clear what the tool computes, but it doesn't explicitly position itself against siblings like calculate_stamp_duty or check_5_percent_deposit_scheme even though it partially overlaps with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No indication of when to use this composite assessment versus the narrower sibling tools (calculate_stamp_duty, check_5_percent_deposit_scheme, list_lender_rates). The agent must infer that this is the 'full picture' option and the others are point calculators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
calculate_stamp_dutyCalculate stamp duty and grantsARead-onlyIdempotentInspect
Exact 2026–27 transfer (stamp) duty for any Australian state or territory, including first home buyer concessions, owner-occupier rates, the First Home Owner Grant and foreign purchaser surcharge.
| Name | Required | Description | Default |
|---|---|---|---|
| price | Yes | ||
| state | Yes | ||
| new_home | No | Brand-new home, off the plan, or building | |
| first_home | No | ||
| vacant_land | No | ||
| foreign_buyer | No | Buyer is a temporary visa holder or other foreign person | |
| owner_occupier | No | ||
| house_and_land_package | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/closed-world, so the safety profile is covered. The description adds genuine context by pinning the rates to the 2026–27 financial year, but says nothing about assumptions, limitations, or that results are jurisdiction-specific estimates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence, front-loaded with the exact capability and year, no filler or restated title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only calculator with an already-declared safe profile, the core capability and rate vintage are clear. With no output schema, though, the shape of the result (duty amount only, or a breakdown with grant/surcharge components) is left unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 25% across 8 params, but the description partially compensates by naming the concepts that map to key booleans (first home buyer concessions → first_home, foreign purchaser surcharge → foreign_buyer, owner-occupier rates → owner_occupier). Undocumented flags such as vacant_land and house_and_land_package get no explanation anywhere.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: exact transfer/stamp duty calculation for Australian states, with the concession types named (first home buyer, owner-occupier, FHOG, foreign surcharge). It is clearly distinguishable from the lending-focused siblings, though it does not name them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied — the description tells you what it computes but not when to choose it over check_5_percent_deposit_scheme or assess_home_loan_readiness. No prerequisites (e.g. must be a purchase, must supply price/state) or exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_5_percent_deposit_schemeCheck 5% Deposit Scheme eligibilityARead-onlyIdempotentInspect
Check eligibility for the Australian Government 5% Deposit Scheme (First Home Guarantee) or Family Home Guarantee (single parents, 2% deposit), including the property price cap for the area.
| Name | Required | Description | Default |
|---|---|---|---|
| price | Yes | ||
| state | Yes | ||
| location | No | capital | |
| first_home | Yes | ||
| single_parent | No | ||
| will_live_in_it | No | ||
| all_buyers_citizens_or_pr | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. The description adds that the check spans two distinct schemes with different deposit thresholds (5% vs 2%) and a location-dependent price cap, but says nothing about what the response contains or how ineligibility is reported.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence naming the schemes first, then the qualifying distinctions, with no wasted clauses. It is dense but every phrase carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Annotations cover safety and idempotency, and no output schema exists. The gap is parameter meaning rather than missing behavioural framing, so for this complexity level the description is close to sufficient but still leaves key eligibility inputs undefined.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 7 parameters, so the description must carry the semantic load. It hints at first_home, single_parent, price and state (via 'property price cap for the area'), but leaves location (capital vs regional, which directly drives the cap), will_live_in_it and all_buyers_citizens_or_pr entirely unexplained, which are the least self-evident inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Check eligibility) and a specific resource (Australian Government 5% Deposit Scheme / First Home Guarantee and Family Home Guarantee), including the price-cap dimension. No sibling tool in the list overlaps with eligibility checking, so an agent can route here without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the scenario (a buyer considering a first-home or single-parent guarantee) but never states when to prefer this over assess_home_loan_readiness or calculate_stamp_duty, nor any exclusions or prerequisites. Usage is inferable from context only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_lender_ratesList lender ratesARead-onlyIdempotentInspect
Live variable principal-and-interest home loan rates, each with its comparison rate, at a given LVR from lenders’ Open Banking product data (as of 2026-10-27). Lender names are masked. Always show the comparison rate beside each rate, with the warning returned.
| Name | Required | Description | Default |
|---|---|---|---|
| lvr | No | Loan-to-value ratio, % | |
| limit | No | ||
| purpose | No | owner |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, closed-world behavior, and the description adds genuinely new context: the data source is lenders' Open Banking product data, the snapshot date is 2026-10-27, lender names are masked, and a warning must accompany results. These are facts the agent could not derive from the annotations, though it does not state result ordering, pagination, or what happens when no products match.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. The operational scope (product type, rate basis, LVR, recency, masking) comes first and the mandatory presentation rule second, which is the right priority order for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the data provenance, freshness, anonymization, and the required warning, which is substantial for a tool with no output schema. However, it leaves the purpose (owner vs investment) and limit parameters entirely unexplained and gives no sense of result shape beyond 'each rate with its comparison rate', so an agent must guess at two of three inputs.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%: lvr is documented in the schema, while limit and purpose are not. The description restates the LVR scoping (no added syntax or semantics) and never clarifies the owner/investment purpose enum or what limit controls. With two of three parameters undocumented, the description fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb/resource pair — live variable principal-and-interest home loan rates with comparison rates, scoped to a given LVR — drawn from lenders' Open Banking product data. The scope qualifiers (variable, P&I only, LVR-based) make the tool's purpose unambiguous, though it never names or distinguishes itself from the sibling tools, which happen to cover clearly different domains (stamp duty, deposit scheme, broker referral).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the agent must infer that this tool is for rate-listing at a specific LVR. There is no explicit when-to-use/when-not statement and no routing to alternatives such as assess_home_loan_readiness or refer_to_broker. The one directive present ('Always show the comparison rate beside each rate, with the warning returned') is an output obligation rather than a selection guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refer_to_brokerRefer to a mortgage broker (with consent)AInspect
Send the user’s situation and readiness report to Goodlend Mortgage Brokers, a licensed mortgage broker, who will contact them. ONLY call this after you have shown the user this disclosure and they have explicitly agreed in this conversation: This site is run by Goodlend Mortgage Brokers (Gariwed Falls Pty Ltd (ACN 682 875 798) ATF Holvor Investments Unit Trust No. 1), Credit Representative 556461 of Connective Credit Services Pty Ltd, ACL 389328. If you ask to be contacted, your details and report go only to us. If you take out a loan with our help, the lender pays us commission, as set out in the Credit Guide we give you before we help; you never pay us a fee. Collect their name, email and phone. The user then gets an email link to confirm before the broker sees anything. Never call it on the user’s behalf without that agreement.
| Name | Required | Description | Default |
|---|---|---|---|
| gift | No | Family gift toward the deposit | |
| loan | No | Loan amount in AUD; if omitted, savings + gift less upfront costs is used as the deposit | |
| name | Yes | ||
| site | No | core | |
| Yes | |||
| phone | Yes | ||
| price | Yes | Purchase price in AUD | |
| state | Yes | State or territory where the property is | |
| consent | Yes | True only if the user explicitly agreed to the disclosure in this conversation | |
| low_doc | No | Self-employed without two years of lodged tax returns | |
| purpose | No | owner | |
| savings | No | ||
| location | No | Capital city / regional centre, or elsewhere in the state | capital |
| household | No | ||
| applicants | Yes | One or two borrowers; the first is the main borrower | |
| dependants | No | ||
| first_home | Yes | Never owned property in Australia | |
| profession | No | Main borrower’s profession. Some lenders waive LMI for listed professions. | |
| credit_score | No | Equifax-style score out of 1200, if known | |
| hecs_balance | No | ||
| property_type | No | house | |
| lives_overseas | No | Main borrower currently lives outside Australia | |
| personal_loans | No | Personal and car loan balances | |
| preferred_time | No | Anytime | |
| credit_defaults | No | no | |
| income_currency | No | AUD | |
| new_or_existing | No | existing | |
| credit_card_limits | No | Total credit card limits (not balances) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare openWorldHint=true and readOnlyHint=false, but the description adds material context the annotations cannot: the name of the external third party receiving the data, the double opt-in flow ('the user then gets an email link to confirm before the broker sees anything'), and the commission/fee arrangement. It does not address what a duplicate call does, which matters given idempotentHint=false, so not a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The action and the consent gate are front-loaded, and the quoted disclosure is long but functional since it must be shown verbatim. The closing 'Never call it on the user's behalf without that agreement' restates the earlier precondition and is mild redundancy, but it is defensible for a compliance-critical call.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The workflow, consent, privacy and third-party disclosure are all covered, which is the highest-risk part of this tool. For a 28-parameter submission with no output schema, however, the description says nothing about the return (confirmation, reference, link re-send) or about which of the many optional financial fields are genuinely needed, leaving an agent under-informed before filling a large payload.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50% across 28 parameters, so the description has to carry weight, and it does partially: 'Collect their name, email and phone' maps to three of the eight required fields and the consent gate is emphasized. The other required fields (applicants, state, price, first_home) and the roughly twenty optional financial inputs get no semantic treatment beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence states a specific verb and destination: send the user's situation and readiness report to Goodlend Mortgage Brokers, who then contact them. That is unambiguous and no sibling tool (assess/calculate/check/list) does anything comparable. It stops short of naming a sibling or stating the boundary explicitly, which is what keeps it from a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is tightly constrained: 'ONLY call this after you have shown the user this disclosure and they have explicitly agreed in this conversation', reinforced at the end with 'Never call it on the user's behalf without that agreement.' That is a clear precondition and a clear prohibition. What is missing is the alternative path (what to do instead when the user declines), so the agent has no named fallback.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
assess_home_loan_readiness2 fields changed- changed
Input schema / properties / profession / descriptionPrevious value: -"Main borrower’s profession — some lenders waive LMI for listed professions"New value: +"Main borrower’s profession. Some lenders waive LMI for listed professions." - changed
Input schema / properties / property_type / enumPrevious value: -[ - "house", - "apartment", - "house_land", - "land" -]New value: +[ + "house", + "apartment", + "land", + "house_land" +]
- Changed
refer_to_broker2 fields changed- changed
Input schema / properties / profession / descriptionPrevious value: -"Main borrower’s profession — some lenders waive LMI for listed professions"New value: +"Main borrower’s profession. Some lenders waive LMI for listed professions." - changed
Input schema / properties / property_type / enumPrevious value: -[ - "house", - "apartment", - "house_land", - "land" -]New value: +[ + "house", + "apartment", + "land", + "house_land" +]
5 tool updates
- First observed
assess_home_loan_readiness - First observed
calculate_stamp_duty - First observed
check_5_percent_deposit_scheme - First observed
list_lender_rates - First observed
refer_to_broker
Related MCP Connectors
Real Australian lender serviceability, plus repayments, borrowing power and stamp duty.
Australian mortgage tools: repayment & borrowing-power calculators, guidance & enquiry capture.
Live US mortgage, auto, HELOC, personal & deposit rates with evidence, plus who can join each lender
Is an Australian rent fair? ABS rents index check, plus sourced property and lending indicators.
Related MCP Servers
- AlicenseAqualityAmaintenanceOne-call Australian prudential data plumbing via APRA — cited responses for banking, superannuation and insurance context, not a data broker.699 PyPIMIT
- AlicenseNot gradedqualityDmaintenanceQuery 13,000+ US consumer lenders with eligibility criteria, rates, CFPB complaints, and ratings. Find matching lenders by borrower profile, get full profiles, compare lenders, and check eligibility.MIT
- AlicenseAqualityAmaintenanceLocal MCP for Australian accountants: ATO benchmarks, Payday Super timing, limited Division 7A reviews, 7 bounded tax worksheets and cited legislation search, plus synthetic CTR/BAS test data.185Functional Source , Version 1.1, ALv2 Future
- AlicenseAqualityBmaintenanceEnables transparent, indicative mortgage calculations for annuities and linear mortgages, including comparisons, product listings, and interest rate information.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.