Skip to main content
Glama

Fix and Flip Loans: flip calculator and lender terms

Server Details

Fix-and-flip profit calculator plus hard-money and DSCR lender terms by state.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation4/5

The tools have mostly distinct purposes: calculate one deal's profit, compare one deal across lenders, discover lenders by state, and fetch one lender's full terms. There is slight overlap because calculate_flip_profit can optionally price a single lender while compare_lender_costs prices all lenders, but the boundaries are clear from the descriptions.

Naming Consistency5/5

All tool names use consistent snake_case with a verb_noun pattern: calculate_flip_profit, compare_lender_costs, find_lenders, get_lender_terms. The convention is predictable and readable.

Tool Count5/5

Four tools is well-scoped for a focused fix-and-flip calculator and lender-terms lookup server. Each tool covers a distinct step: calculation, comparison, lender discovery, and lender detail.

Completeness4/5

The surface covers the core workflow: calculate deal economics, compare lender costs, find lenders, and inspect detailed lender terms. Minor gaps exist around directly listing or searching all lenders without a state filter, and there is no separate DSCR calculator despite DSCR lender terms being exposed.

Available Tools

4 tools
calculate_flip_profitFix-and-flip profit calculatorA
Read-onlyIdempotent
Inspect

Runs the fixandflip.loans calculator on a deal: profit, cash you put in, return on cash (and simple annualized), profit as % of ARV, the hard-money loan with interest, points and fees, holding and selling costs, the 70% rule maximum price and whether the deal meets it, and the breakeven sale price. Optionally prices the loan at a listed lender's advertised starting rate.

NameRequiredDescriptionDefault
arvYesAfter-repair value (expected sale price) in dollars, e.g. 340000.
lenderNoOptional lender name (e.g. "Kiavi"): use its advertised fix-and-flip starting rate instead of rate_pct. Do not give both.
monthsNoMonths from purchase to sale. Default 6.
ltc_pctNoShare of the purchase price the lender advances, %. Default 90.
rate_pctNoAnnual interest rate, %, from your own term sheet. Default 10.5 (the calculator's example, not a market rate).
financingNohard_money (default) or cash (no loan).
points_pctNoOrigination points, % of the loan. Default 2.
rehab_costYesRehab (renovation) budget in dollars, e.g. 55000.
arv_cap_pctNoLender's maximum loan as % of ARV. Default 75.
interest_onNodrawn (default): interest only on money drawn, rehab draws spread evenly; full_loan: interest on the whole loan from day one ("Dutch").
lender_feesNoUnderwriting, document and processing fees in dollars. Default 1995.
purchase_priceYesPurchase price in dollars, e.g. 210000.
rehab_funded_pctNoShare of the rehab the lender funds in draws, %. Default 100.
buy_closing_costsNoBuyer closing costs in dollars. Default 4000.
seller_closing_pctNoSeller closing costs and transfer tax as % of the sale price. Default 1.5.
holding_costs_monthlyNoTaxes, insurance and utilities per month in dollars. Default 900.
selling_commission_pctNoAgent commissions as % of the sale price. Default 5.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds real value by enumerating the computed outputs (profit, cash-in, return on cash, 70% rule check, breakeven price), which is the behavioral detail an agent needs since no output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The action is front-loaded in the first clause and the rest is a dense but purposeful enumeration of returned metrics. The long comma-chained list is slightly heavy to parse but every element earns its place as output disclosure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 17 parameters and 100% schema coverage but no output schema, the description correctly fills the remaining gap by describing what the calculator returns. Only minor items, such as how lender names are resolved or error behavior when both lender and rate_pct are supplied, are left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every one of the 17 parameters is already documented with defaults, ranges and enums. The description only restates the lender-rate option and lists outputs; it does not add interpretive meaning to any parameter beyond the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Runs the fixandflip.loans calculator on a deal') and enumerates the outputs produced, so the tool's function is immediately legible. It does not, however, distinguish itself from siblings like compare_lender_costs or get_lender_terms, which is the main thing keeping it below a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The clause 'Optionally prices the loan at a listed lender's advertised starting rate' implies usage around the lender parameter, but it never says when to prefer this over compare_lender_costs or how to obtain a valid lender name. There are no explicit when-not conditions or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compare_lender_costsCompare lenders' advertised rates on one flipA
Read-onlyIdempotent
Inspect

Prices one flip at each listed lender's advertised fix-and-flip starting rate (from its own website, read 2026-10-24), ranked by profit: interest cost, total financing and profit per lender, with your own leverage, points and fees held the same. Optional state keeps only lenders that list it (plus those to check).

NameRequiredDescriptionDefault
arvYesAfter-repair value (expected sale price) in dollars, e.g. 340000.
stateNoOptional two-letter property state, e.g. FL.
monthsNoMonths from purchase to sale. Default 6.
ltc_pctNoShare of the purchase price the lender advances, %. Default 90.
financingNohard_money (default) or cash (no loan).
points_pctNoOrigination points, % of the loan. Default 2.
rehab_costYesRehab (renovation) budget in dollars, e.g. 55000.
arv_cap_pctNoLender's maximum loan as % of ARV. Default 75.
interest_onNodrawn (default): interest only on money drawn, rehab draws spread evenly; full_loan: interest on the whole loan from day one ("Dutch").
lender_feesNoUnderwriting, document and processing fees in dollars. Default 1995.
purchase_priceYesPurchase price in dollars, e.g. 210000.
rehab_funded_pctNoShare of the rehab the lender funds in draws, %. Default 100.
buy_closing_costsNoBuyer closing costs in dollars. Default 4000.
seller_closing_pctNoSeller closing costs and transfer tax as % of the sale price. Default 1.5.
holding_costs_monthlyNoTaxes, insurance and utilities per month in dollars. Default 900.
selling_commission_pctNoAgent commissions as % of the sale price. Default 5.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a safe, read-only, idempotent, closed-world operation, so the description needn't repeat that. It adds context annotations cannot: the rates come from lenders' own websites read on 2026-10-24 (a data-freshness caveat), that results are ranked by profit, and that leverage, points and fees are held constant across lenders. It does not mention lender coverage or what happens when no lender matches the state filter.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences that lead with what the tool produces and its ranking criterion before covering the optional filter. Nothing is wasted, though the parenthetical '(plus those to check)' is slightly cryptic and the second sentence carries less weight than the first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 16 parameters, no output schema and read-only annotations, the description carries the burden of describing the result, and it does: interest cost, total financing and profit per lender. It also flags rate provenance and date. What's missing is what the comparison does when a lender cannot fund the deal (e.g. LTC/ARV cap failures), which matters for a 16-parameter comparison tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all 16 parameters are already documented with defaults, ranges and examples; the baseline is 3. The description adds a little beyond that, clarifying that the agent's own leverage/points/fee inputs are applied uniformly to every lender and that state acts as a filter with a 'to check' fallback, but it does not explain any individual input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: it prices one flip at every listed lender's advertised fix-and-flip start rate and ranks results by profit. The scope (multi-lender comparison vs. a single scenario) implicitly separates it from calculate_flip_profit, but no sibling is named explicitly. An agent can still tell what it does 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.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the situation (you have one flip's numbers and want to see which lender is cheapest) and explains the effect of the optional state filter, including the nuance that non-listing lenders are kept as 'those to check'. It never states when to prefer calculate_flip_profit, get_lender_terms, or find_lenders instead, so routing between siblings is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_lendersFind fix-and-flip or DSCR lenders by stateA
Read-onlyIdempotent
Inspect

Lists the hard-money and DSCR lenders on fixandflip.loans whose own websites (read 2026-10-24) say they lend in a state, with starting rate, leverage, minimum credit score, experience rule, loan size and a source link each. Lenders that publish no state list are returned as "check".

NameRequiredDescriptionDefault
sortNorate (default; lowest advertised starting rate first, unpublished last) or name.
limitNoLenders per page, 1 to 12, default 10.
stateNoTwo-letter property state, e.g. TX. Omit for every lender.
offsetNoLenders to skip, for paging. Default 0.
loan_typeNofix_flip (default; hard-money rehab loans) or dscr_rental (rental loans sized on rent).
credit_scoreNoOptional, fix_flip only: drop lenders whose published minimum FICO is above this score.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

It provides crucial operational traits not covered by annotations: the external source (fixandflip.loans), the data freshness/cut-off date (read 2026-10-24), and the specific fallback behavior ('check') when a lender publishes no state list.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly sized. It is highly efficient, front-loading the data source and specific attributes without unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the detailed schema and clear annotations, the description provides all necessary context—source, scope, data attributes, and error/edge case handling—making it maximally complete for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Since schema coverage is 100%, the baseline is 3. However, the description significantly improves semantic understanding by detailing the specific data points returned for each lender (starting rate, leverage, etc.), giving the agent context about the quality and type of data found.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the goal: listing hard-money and DSCR lenders. It specifies the resource (fixandflip.loans) and distinguishes this tool's function from sibling tools by focusing on lender discovery rather than calculation or specific term retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

While it doesn't explicitly list alternatives, the context of 'finding' lenders implies it should be used when a list of providers is needed, effectively differentiating it from tools focused on calculation or comparison of terms.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_lender_termsOne lender's published termsA
Read-onlyIdempotent
Inspect

Everything fixandflip.loans recorded from one lender's own website (read 2026-10-24): fix-and-flip and DSCR rates, leverage, points, terms, credit and experience rules, loan sizes, the states it lends in, license line, notes and the exact source pages.

NameRequiredDescriptionDefault
lenderYesLender name, e.g. "Kiavi", "Lima One" or "RCN Capital".

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds real context beyond them: the data is a static snapshot captured on a specific date ('read 2026-10-24'), sourced from each lender's own website, and includes exact source pages for verification. It omits any note on how stale data should be treated or what a miss looks like.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One front-loaded sentence that states what is returned, the source, and the capture date before the field list, with zero filler. The enumeration, while long, earns its place by telling the agent exactly what coverage to expect.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, but the description compensates by enumerating the returned fields (rates, leverage, points, terms, credit rules, loan sizes, states, license, notes, source pages). Combined with annotations covering the safety profile and the description covering provenance and freshness, an agent has enough to call it correctly; only the failure/empty case is unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single 'lender' parameter already carries example values (Kiavi, Lima One, RCN Capital). The description contributes only the framing that the name identifies a lender whose own site was scraped, which adds little beyond the schema; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Everything fixandflip.loans recorded from one lender's own website') and enumerates the exact fields returned, so an agent knows this is a single-lender detail lookup rather than a search. It does not explicitly name siblings like find_lenders or compare_lender_costs, so the differentiation is implied by 'one lender' rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the phrasing and the required 'lender' parameter make it clear this is for pulling detail on a lender you already have a name for, but there is no explicit when-to-use, when-not-to-use, or pointer to the sibling search/compare tools. An agent must infer the routing from context.

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.

  1. 4 tool updates
    • First observedcalculate_flip_profit
    • First observedcompare_lender_costs
    • First observedfind_lenders
    • First observedget_lender_terms

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Multifamily real estate deal analysis — analyze deals, score properties, calculate max offer prices, and look up market data. Four tools for underwriting 2-200 unit apartment properties.
    4
    96 npm
    4
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Landlord and rental-property calculators as MCP tools: cash flow, cap rate, DSCR, Airbnb break-even occupancy, rent late fees, lease notice dates, and IRS mileage. Offline and deterministic, with no dependencies.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to calculate exact debt service coverage ratios, maximum loan amounts, required rent, scenario comparisons, and amortization schedules for rental property loans, returning structured results with sources and dates.
    5
    0
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Enables multifamily renovation cost estimation, scope of work generation, contractor bid evaluation, ROI gating, and risk flagging for real estate intelligence agents.
    11
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources