mcpField
D
DSCR Loan Calculator

DSCR Loan Calculator

Remote
dscrradar.comFinance0Updated 2d ago

About DSCR Loan Calculator

DSCR Loan Calculator is an MCP server for rental-property investors and loan analysts evaluating residential DSCR financing. It calculates coverage, solves for loan or rent limits, compares scenarios, and summarizes amortization.

Key features

  1. 01Calculate DSCR and lender tier
  2. 02Solve maximum loan or required rent
  3. 03Compare up to five loan scenarios
  4. 04Summarize payments and amortization

Use cases

  1. 01Check DSCR for a rental property
  2. 02Find the loan limit at a target DSCR
  3. 03Compare financing terms for a property

MCP support

Exposes DSCR, loan-limit, rent-target, scenario-comparison, and amortization tools to MCP clients. It provides calculations, not loan offers or approvals.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

DSCR Loan Calculator MCP

Exact DSCR loan math for AI assistants: debt service coverage ratio, max loan, rent needed, scenario comparison and amortization for rental property loans.

Hosted MCP URL (no sign-in, no token): https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp

Money site with the full calculators and rate pages: dscrradar.com

Tools

ToolWhat it does
calculate_dscrDSCR = qualifying rent / PITIA. Exact P&I or interest-only payment, tax, insurance, HOA and other housing costs, and the lender band (1.25+, 1.00-1.24, 0.75-0.99, under 0.75).
max_loan_for_target_dscrLargest whole-dollar loan that keeps DSCR at or above a target. Optional purchase price and LTV cap give the minimum down payment and which limit binds.
rent_needed_for_target_dscrSmallest monthly rent that reaches a target DSCR, plus the rent for 0.75, 1.00 and 1.25.
compare_scenariosUp to 5 rate, down payment, term and interest-only scenarios side by side, with DSCR, band, rent minus PITIA and total interest.
amortization_summaryMonthly payment, number of payments, final payment, total interest, total paid and balance after N years. Supports an interest-only period first.

Every result has structured JSON, a one-paragraph summary, an as_of date, a source URL and a more link to the matching dscrradar.com page.

What it knows that your model does not

  • Cent-exact payments. Language models often get the annuity formula wrong by a few dollars, or round in the wrong place. This server uses the standard annuity formula with monthly compounding and rounds each part half up to the cent, the way a lender schedule does.
  • The real definition of PITIA (Fannie Mae Selling Guide B3-6-03): principal, interest, taxes, insurance, association dues, ground rent, special assessments.
  • Exact tier edges. A DSCR of 1.2499 is not 1.25. Tiers are decided on the exact ratio with integer math, and the 2-decimal DSCR is truncated, not rounded up.
  • Solvers. Max loan and rent needed are solved exactly against the rounded payment, not estimated.
  • How lenders actually differ. Some lenders look for 1.25, some accept 1.00, some go down to 0.75, and some offer no-ratio programs. Sources are in each result.

Install

Claude.ai custom connector, ChatGPT developer mode

Paste this URL as a custom connector. No token or sign-in.

https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp
Claude Code
claude mcp add --transport http dscr-loan-calculator https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp

Or run it locally over stdio:

claude mcp add dscr-loan-calculator -- npx -y dscr-loan-calculator-mcp
Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "dscr-loan-calculator": {
      "command": "npx",
      "args": ["-y", "dscr-loan-calculator-mcp"]
    }
  }
}
Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "dscr-loan-calculator": { "url": "https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp" }
  }
}
VS Code

Add to .vscode/mcp.json:

{
  "servers": {
    "dscr-loan-calculator": { "type": "http", "url": "https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp" }
  }
}
Test with curl
curl -s -X POST https://dscr-loan-calculator-mcp.lipmichal.workers.dev/mcp \
  -H 'content-type: application/json' -H 'accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"calculate_dscr","arguments":{"monthly_rent":2500,"loan_amount":300000,"annual_rate_pct":7,"annual_property_tax":3600,"annual_insurance":1200}}}'

Example prompts

  • "Rent is $2,500, the loan is $300,000 at 7% for 30 years, taxes $3,600 a year and insurance $1,200. What is my DSCR?"
  • "What is the biggest DSCR loan I can get on a $400,000 rental that rents for $3,000, at 7.5%, if the lender wants 1.25?"
  • "How much rent do I need for a 1.25 DSCR on a $300,000 loan at 7%?"
  • "Compare 20% down at 7%, 25% down at 7.5% and 30% down interest-only at 8% on a $400,000 property renting for $3,200."
  • "Show the balance after 10 and 20 years on a $500,000 loan at 7.5%, 10 years interest-only then 20 years amortizing."

Math and rounding

  • Monthly rate = annual rate / 12. P&I = L x r / (1 - (1 + r)^-n). At 0%, P&I = L / n.
  • Interest-only payment = L x r.
  • Monthly tax and insurance = annual amount / 12.
  • Each of these is rounded half up to the cent before they are added into PITIA.
  • Qualifying rent = gross rent x (1 - vacancy), rounded half up to the cent. Vacancy defaults to 0, because many DSCR lenders use gross rent.
  • DSCR = qualifying rent / PITIA. Shown truncated to 2 decimals and as an exact ratio to 6 decimals.
  • Amortization runs month by month. Interest is rounded half up to the cent each month and the final payment clears the balance.

23 test fixtures check these numbers. The expected values come from a separate Python Decimal script (scripts/expected.py) that uses brute-force search, not from the server code.

Data sources

See DATA_SOURCES.md. In short, the PITIA definition is from the Fannie Mae Selling Guide, and the lender bands are from Griffin Funding, Defy Mortgage and LendingOne pages fetched on 2026-10-30.

Limitations

  • This is math, not a loan offer or approval. Lender minimums, rate pricing, reserve rules and LTV caps vary by lender and change often.
  • DSCR here is the residential DSCR-loan measure (rent / PITIA). Commercial lenders often use NOI / annual debt service instead. Some lenders subtract vacancy or expenses first; use vacancy_pct and monthly_other_housing to model that.
  • Some lenders qualify interest-only loans on the amortizing payment. calculate_dscr shows both when interest_only is true.
  • The server does not quote live rates. Current DSCR rate pages are on dscrradar.com.

Development

npm install
npm run build
npm test
npx wrangler deploy

src/core.ts holds the pure math. src/stdio.ts and src/worker.ts are thin entries over the same tool registry in src/tools.ts.

License

MIT

Part of the Zovo MCP collection: https://mcp.zovo.one

More data servers from the same author

Each one is free, needs no API key and has a hosted URL you can paste into Claude or ChatGPT.

servertoolshosted URL
cups-to-grams-mcpconvert_ingredient, search_ingredients, scale_recipe, convert_oven_temperaturehttps://cups-to-grams-mcp.lipmichal.workers.dev/mcp
gold-price-per-gram-mcpget_gold_price_per_gram, get_metal_prices, calculate_jewelry_value, convert_gold_unitshttps://gold-price-per-gram-mcp.lipmichal.workers.dev/mcp
lake-level-mcpsearch_lakes, get_lake_level, get_lake_history, compare_lakeshttps://lake-level-mcp.lipmichal.workers.dev/mcp
minimum-wage-mcpget_minimum_wage, list_upcoming_increases, compare_states, annual_income_at_minimum_wagehttps://minimum-wage-mcp.lipmichal.workers.dev/mcp
no-tax-on-overtime-mcpcalculate_overtime_deduction, calculate_tips_deduction, calculate_senior_deduction, estimate_tax_savings, explain_eligibilityhttps://no-tax-on-overtime-mcp.lipmichal.workers.dev/mcp
paycheck-calculator-mcpcalculate_take_home_pay, compare_states_take_home, salary_to_hourly, hourly_to_salary, get_federal_tax_bracketshttps://paycheck-calculator-mcp.lipmichal.workers.dev/mcp
uk-income-tax-salary-mcpcalculate_uk_take_home, get_uk_tax_bands, compare_salaries, marginal_rate_at_incomehttps://uk-income-tax-salary-mcp.lipmichal.workers.dev/mcp
us-federal-holidays-business-days-mcplist_federal_holidays, is_business_day, add_business_days, count_business_days, invoice_due_datehttps://us-federal-holidays-business-days-mcp.lipmichal.workers.dev/mcp

The paid back-office collection (invoices, VAT, PDFs, spreadsheets) is at https://mcp.zovo.one

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.