Skip to main content
Glama
Cal MCP Server

Cal MCP Server

by askcal

Cal MCP Server

The mortgage MCP server, with a real lender data moat. 166+ wholesale lenders · 1,400+ indexed program documents · 250+ down‑payment‑assistance programs · 50 states. First Model Context Protocol server in the mortgage industry with broker‑accessible matrix data behind it — not a calculator, not a rate scraper.

@askcal/mcp-server exposes Cal — the AI mortgage platform at askcal.io — to any Model Context Protocol client: Claude Desktop, Cursor, Continue, Goose, Zed, Cody, your own agent. Loan officers, brokers, real‑estate agents, and consumer borrowers can ask their AI assistant questions like:

  • "What's the 2026 conforming loan limit in Alameda County, CA, for a 1‑unit?"

  • "Top 5 wholesale jumbo lenders in California for a 712‑FICO, 80% LTV, $1.4M loan with a departing residence still listed."

  • "What DPA programs in Orange County California work for a first‑time buyer with 700 FICO?"

  • "Plaza Home Mortgage — what's their current master credit guideline document, and which AE covers Northern California?"

  • "Show me the structuring playbook for a sub‑580 FHA file."

…and Cal returns answers grounded in current matrix PDFs, FHFA / HUD / VA source documents, and tribal‑knowledge intel curated by working brokers.

Why this matters

The mortgage industry has spent a decade in the "everybody buys Encompass" era. AI hasn't touched the workflow because the source data is gated, fragmented, and expires. Cal's library — built from broker‑portal scrapes, indexed weekly, kept current — is the data layer that makes any mortgage AI actually useful. This MCP server is how that data reaches every agent platform built on top of MCP.

If you're an LO, this means asking Claude (or Cursor, or your own agent) the same questions you used to dig through PDFs to answer — and getting an answer in seconds with a source citation.

Related MCP server: Repliers MCP Server

Tools

The server exposes eight tools:

Name

Purpose

cal_fact_lookup

FHFA conforming loan limits, FHA loan limits, VA funding fee, FHA MIP, agency DTI caps. County‑level. 50 states + DC.

cal_search_lenders

Scenario‑aware wholesale‑lender finder. Pass FICO / LTV / loan amount / state / occupancy → ranked top 5 (or top 15 with expand=true) with score, qualifying reasons, blockers.

cal_lender_details

Full record for one lender — programs, state licenses, AE contact, broker portal URL, status, recent matrix dates.

cal_lender_documents

List indexed matrices / handbooks / overlays for a lender. Sorted master → current → superseded. Each doc includes a short extracted summary.

cal_dpa_search

Down‑payment‑assistance programs by state / county / city / FTHB / type. Up to 25 ranked programs with provider URLs.

cal_lender_intel

Tribal‑knowledge intel — strengths, watch‑outs, speed notes, scenarios they love, scenarios to avoid, AE contacts. Pass intent to narrow.

cal_scenario_pattern

Structuring playbooks for hard scenarios: departing residence, ITIN / foreign national, sub‑580 FHA, renovation, super‑jumbo, plus the matrix‑freshness citation rule.

cal_valuation

ValueGuard comparable-sales valuation. Pass the subject (price + sqft) and 4+ comps, get the indicated market value, a floor/ceiling range, an over/under-priced verdict, a confidence level, and the comps used. A list-price rebuttal in seconds.

The tool surface mirrors Cal's internal tool‑use schema, so any model (Claude Sonnet, Opus, Haiku, GPT‑4o, Gemini, …) that calls them gets the same shape Cal itself uses.

Install

Claude Desktop (macOS / Windows)

Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "cal": {
      "command": "npx",
      "args": ["-y", "@askcal/mcp-server"],
      "env": {
        "CAL_API_TOKEN": "your-token-here"
      }
    }
  }
}

Restart Claude Desktop. The cal tools appear in the slash menu.

Cursor

Settings → MCP → Add Server, then paste the same JSON.

Continue / VS Code

~/.continue/config.json → mcpServers block, same shape.

git clone https://github.com/askcal/cal-mcp-server.git
cd cal-mcp-server
npm install
npm run build
# Then point your MCP client at dist/index.js with `node` as the command
# and an absolute path in args[0].

Getting a token

CAL_API_TOKEN is an opaque bearer token. Use a long‑lived API key, not a session token — session tokens from /auth/login expire after 8 hours, which means an MCP client config that worked today returns 401 tomorrow.

Sign up at api.askcal.io (request access if you don't have a key yet — broker LOs are auto‑approved). Then:

# 1. Get a short‑lived session token from /auth/login
SESSION=$(curl -s -X POST https://api.askcal.io/auth/login \
  -H "Content-Type: application/json" \
  -H "Origin: https://askcal.io" \
  -d '{"email":"<your-email>","password":"<your-password>","portal":"team"}' \
  | sed -n 's/.*"token":"\([^"]*\)".*/\1/p')

# 2. Mint a long‑lived API key
curl -X POST https://api.askcal.io/auth/api-keys \
  -H "Content-Type: application/json" \
  -H "Origin: https://askcal.io" \
  -H "Authorization: Bearer $SESSION" \
  -d '{"label":"my-claude-desktop"}'

The response includes a key field starting with cal_live_. Copy it now — it's only shown once. Use it as CAL_API_TOKEN. The key has no expiry; revoke it any time with DELETE /auth/api-keys/<id> (list yours with GET /auth/api-keys).

Fallback — session token

If you just want to try a tool call quickly, the session token from /auth/login works too (8‑hour TTL). Don't put one in a long‑lived MCP config.

v0.2 preview

OAuth 2.1 with PKCE is on the roadmap so MCP clients can run the consent flow themselves. Until then, the API key flow above is the recommended path.

Verify it works

After installing, ask your MCP client:

"What's the 2026 conforming loan limit in Alameda County CA?"

You should get back something like:

$1,229,100 (FHFA 2026 Conforming Loan Limits, announced 2025‑11‑26).
High‑balance HCOL county. Anything above this is a jumbo loan.

If you don't, check:

  1. The token isn't expired — Cal session tokens last 24 hours by default. Refresh via /auth/login.

  2. Network can reach https://api.askcal.io.

  3. Your MCP client picked up the config — restart it after editing.

Configuration

Env var

Required

Default

Notes

CAL_API_TOKEN

yes

—

Bearer token from /auth/login.

CAL_API_BASE_URL

no

https://api.askcal.io

Override only if you're testing against a Cal instance other than production.

Data scope

Calls are scoped to the list tied to your token. If you're a broker LO with a curated approved‑lender list, results are filtered to lenders you can actually use. Cal will not leak across approved lists. The founder's demo list is the broadest, at 166 lenders.

License

MIT. The wrapper code is open. Cal's curated lender library, DPA program data, and lender intel are proprietary and remain behind the API.

About Cal

Cal is the AI mortgage platform at askcal.io, built by a 17‑year industry veteran (NMLS 275073) for working brokers. Production state at this release:

  • 166 wholesale lenders, 1,424 indexed program documents, 250 DPA programs, 50 states

  • 4 LOs in pilot, 342 questions answered in the first 24 hours of soft‑launch

Roadmap

  • v0.1 - 7 tools, API-key auth, stdio transport, npm + GitHub.

  • v0.2 (current) - ValueGuard valuation (cal_valuation), 8 tools total; repointed to the askcal.io API.

  • v0.3 - OAuth 2.1 with PKCE. .dxt Claude Desktop bundle. Optimal Blue MCP companion server.

  • v0.4 - Streamable HTTP transport. Public agency MCPs (Fannie Selling Guide, Freddie Guide, FHA Handbook 4000.1, VA Handbook 26-7, FHFA limits, HUD AMI).

  • v0.5 - Encompass MCP companion (LOS read/write). DocuSign MCP companion. One prompt fires across CRM + email + calendar + pricing + library.

Contributing

Issues and PRs welcome. The roadmap above is the priority order; if you want to take a piece, open an issue first so we don't dual‑track.

Contact

Chris Black · NMLS 275073 · chris@askcal.io

Available Tools

8 tools
cal_fact_lookupA

Look up authoritative 2026 mortgage facts: FHFA conforming loan limits, FHA loan limits, VA funding fee schedule, FHA MIP rates, and agency DTI caps. Use this whenever you need a specific dollar amount, percentage, or threshold — never quote these from training-data memory because the values reset annually and FHFA/FHA limits are different programs. Returns the requested value with a source citation (FHFA, HUD, VA, Fannie/Freddie). Coverage: all 50 US states + DC, all county-level limits, 1-4 unit properties.

Inputs: category (required), state, units, county, +2 more.

cal_lender_detailsA

Fetch the full record for a specific wholesale lender — programs offered, state licenses, account-executive contact, broker portal URL, status, and recent matrix dates. Use this after cal_search_lenders to get contact details + portal info before recommending the lender to an LO.

Inputs: lenderSlug (required).

cal_lender_documentsA

List indexed matrix / handbook / overlay documents for a lender. Returns each doc's filename, effective date, product category, authority (master vs. supplement), superseded flag, and a short extracted summary. Sorted: master → current → superseded last. Use this to verify program details or cite a specific matrix version when answering an LO question.

Inputs: lenderSlug (required).

cal_lender_intelA

Tribal-knowledge intelligence on a specific wholesale lender — strengths, watch-outs, speed notes, scenarios they love, scenarios to avoid, AE contacts, recent overlay shifts not yet in PDFs. Use this AFTER cal_lender_details when the user asks "is this lender any good for X?", "fastest path", "what gets denied", or any qualitative question about working with the lender. Pass an intent to narrow the response and save tokens — e.g. intent="scenariosTheyLove" returns just that field.

Inputs: lenderSlug (required), intent.

cal_scenario_patternA

Fetch a structuring playbook for a recognized hard mortgage scenario — departing residence with property still listed, ITIN / foreign national, sub-580 FHA, renovation (203k / reno-perm), super-jumbo > $1M — or the matrix-freshness citation rule. Each pattern returns the recommended lender shortlist + the specific guideline to apply. Call this FIRST when the LO's question matches one of these patterns — it gives you the playbook before any lender search.

Inputs: pattern (required).

cal_search_lendersA

Search Cal's scoped wholesale-lender library for programs that fit a loan scenario. Returns lenders ranked best-first with score, qualifying reasons, and any blockers (state license gaps, FICO/LTV overlays). Use this for any "who does X?" or "which lender for Y?" question — pass as much scenario detail as you have (FICO, LTV, loan amount, occupancy) and Cal will rank against the live library. Defaults to top 5; pass expand=true for top 15.

Inputs: category (required), ltv, fico, state, +5 more.

cal_valuationA

ValueGuard: run a comparable-sales valuation on a subject property and return a list-price rebuttal. Given the subject (address, list price, square footage) and at least 4 comparable listings, returns the indicated market value with a floor/ceiling range, a verdict (overpriced / at market / underpriced), a confidence level, the percent the list price sits above or below market, and the comps used. Use this for "is this list price fair", "what is this home worth", appraisal-gap or list-price-rebuttal questions. The caller must supply the comparable listings; this tool does not fetch comps.

Inputs: subject (required), listings (required), opts.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 8 tools

    Disambiguation4/5

    The lender-related tools are carefully separated into details, documents, and intel, so the core set is easy to navigate. Some overlap exists between cal_search_lenders and cal_scenario_pattern since both can produce a lender shortlist, though their descriptions provide clear sequencing guidance.

    Naming Consistency4/5

    All tools share the cal_ prefix and use lowercase snake_case, which gives the set a unified feel. However, naming style is not fully uniform: some are verb-led like cal_search_lenders and cal_fact_lookup, while others are noun-led like cal_lender_details and cal_scenario_pattern.

    Tool Count5/5

    Eight tools is a well-scoped size for a mortgage decision-support server covering lender search, DPA, facts, scenarios, and valuation. Each tool serves a distinct workflow and none feels redundant or extraneous.

    Completeness4/5

    The set covers the lender workflow thoroughly: search, details, documents, and qualitative intel, plus DPA, facts, scenario playbooks, and valuation. The main gap is that cal_valuation requires the caller to supply comparable listings, and there is no companion tool to fetch comps, which can leave agents without a complete valuation path.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      D
      quality
      D
      maintenance
      Provides access to RateSpot.io mortgage rate APIs, enabling AI assistants to fetch real-time mortgage rates, compare loan products, calculate payments, and access comprehensive lending information.
      7
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Provides AI assistants access to real-time MLS data via the Repliers API, enabling natural language property search, market statistics, and listing details.
      525 npm
      21
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI assistants to retrieve verbatim U.S. mortgage regulations with citations and effective dates, verify quotes, and run guided compliance playbooks without sending user documents to the server.
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI assistants to query and analyze self-hosted real-estate public-records data through 20 read-only MCP tools, including property search, foreclosure and distress signals, comps, market context, and optional license-gated deal scoring.
      MIT