# io.github.financeratecalc/frc-mcp (remote · frc-mcp.ziyetis.workers.dev)

FHA denial statistics from the 2025 federal HMDA record. 12 tools incl. counterparty screen.

- Trust score: 71/100 (medium)
- Change this week: +1
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-21

## Components

- remote · `frc-mcp.ziyetis.workers.dev`: 71/100 (this document), [markdown](https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp.md), [page](https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp)
- npm · `frc-mcp`: 81/100, [markdown](https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp-2.md), [page](https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp-2)

## Channel facts

- Endpoint: `https://frc-mcp.ziyetis.workers.dev`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.7.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-21.

- **Endpoint Security**: 46/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 14 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS check failed: the endpoint is reachable over plaintext HTTP.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 67/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2736 tokens (~195/item across 14 items; 14 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 100/100
  - No destabilizing schema changes in the last 30 days.
- **Tool Coverage**: 83/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 50% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 14 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 15 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the io.github.financeratecalc/frc-mcp server?

io.github.financeratecalc/frc-mcp is a hosted endpoint at https://frc-mcp.ziyetis.workers.dev/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http financeratecalc-frc-mcp 'https://frc-mcp.ziyetis.workers.dev/'
```

### Cursor

```json
{
  "mcpServers": {
    "financeratecalc-frc-mcp": {
      "url": "https://frc-mcp.ziyetis.workers.dev/"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "financeratecalc-frc-mcp": {
      "type": "http",
      "url": "https://frc-mcp.ziyetis.workers.dev/"
    }
  }
}
```

### Codex

```toml
[mcp_servers.financeratecalc-frc-mcp]
url = "https://frc-mcp.ziyetis.workers.dev/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "financeratecalc-frc-mcp": {
      "type": "remote",
      "url": "https://frc-mcp.ziyetis.workers.dev/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add financeratecalc-frc-mcp --url 'https://frc-mcp.ziyetis.workers.dev/' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  financeratecalc-frc-mcp:
    url: "https://frc-mcp.ziyetis.workers.dev/"
```

### Netclaw

```json
{
  "McpServers": {
    "financeratecalc-frc-mcp": {
      "Transport": "http",
      "Url": "https://frc-mcp.ziyetis.workers.dev/"
    }
  }
}
```

### Vellum

```bash
assistant mcp add financeratecalc-frc-mcp -t streamable-http -u 'https://frc-mcp.ziyetis.workers.dev/'
```

### Other

```json
{
  "mcpServers": {
    "financeratecalc-frc-mcp": {
      "type": "http",
      "url": "https://frc-mcp.ziyetis.workers.dev/"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-21 (score 71, 0)

- [functional] Server version: 1.10.0 → 1.14.0

### 2026-09-20 (score 71, 0)

- [security] Tool “get_door_effect_summary” rewrote its description, which is the text the model reads
- [security] Tool “check_claim_contract” rewrote its description, which is the text the model reads
- [security] Tool “get_conditional_door_map” rewrote its description, which is the text the model reads
- [security] Tool “get_denial_reason_shares” rewrote its description, which is the text the model reads
- [security] Tool “get_lender_denial_stats” rewrote its description, which is the text the model reads
- [security] Tool “get_metro_lender_gap” rewrote its description, which is the text the model reads
- [security] Tool “get_national_fha_stats” rewrote its description, which is the text the model reads
- [security] Tool “get_small_loan_penalty” rewrote its description, which is the text the model reads
- [security] Tool “get_state_denial_stats” rewrote its description, which is the text the model reads
- [security] Tool “list_cohorts” rewrote its description, which is the text the model reads
- [security] Tool “list_lenders” rewrote its description, which is the text the model reads
- [security] Tool “run_cohort” rewrote its description, which is the text the model reads
- [security] Tool “screen_counterparties” rewrote its description, which is the text the model reads
- [security] Tool “screen_counterparties_quote” rewrote its description, which is the text the model reads
- [functional] Server version: 1.9.0 → 1.10.0

### 2026-09-16 (score 71, +1)

- [functional regression] Schema quality: 2434 → 2797
- [functional improvement] Tool coverage: 45% → 50%
- [functional] Server version: 1.8.2 → 1.9.0
- [functional] New tool “get_small_loan_penalty”
- [functional] New tool “get_denial_reason_shares”

### 2026-09-15 (score 70, 0)

- [functional] Server version: 1.8.1 → 1.8.2

### 2026-09-14 (score 70, 0)

- [functional] Server version: 1.6.0 → 1.8.1

### 2026-09-13 (score 70, 0)

- [functional regression] Schema quality: 1595 → 2434
- [functional improvement] Tool coverage: 31% → 45%
- [functional] Schema quality: good → excellent
- [functional] Server version: 1.3.3 → 1.6.0
- [functional] New tool “screen_counterparties_quote”
- [functional] New tool “get_conditional_door_map”
- [functional] New tool “list_cohorts”
- [functional] New tool “run_cohort”

### 2026-09-12 (score 70, 0)

- [functional] Server version: 1.3.1 → 1.3.3

### 2026-09-11 (score 70, −1)

- [security] Tool “list_lenders” rewrote its description, which is the text the model reads
- [security] Tool “get_state_denial_stats” rewrote its description, which is the text the model reads
- [security] Tool “get_national_fha_stats” rewrote its description, which is the text the model reads
- [security] Tool “get_lender_denial_stats” rewrote its description, which is the text the model reads
- [security] Tool “get_door_effect_summary” rewrote its description, which is the text the model reads
- [security] Tool “check_claim_contract” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 114 → 199
- [functional improvement] Tool coverage: 15% → 31%
- [functional] Server version: 1.1.0 → 1.3.1
- [functional] New tool “screen_counterparties”

## MCP tools (14)

### `check_claim_contract` (~208 tokens)

USE BEFORE WRITING ANY SENTENCE CONTAINING AN FRC FIGURE. Given a claim id and the use you propose (population, period, scope, and whether you assert a cause, predict an individual, recommend a lender or draw a legal conclusion), returns a deterministic verdict: pass, needs_qualifier (naming the missing qualifier) or block (with a reason code), plus a safe sentence you may use verbatim and the required attribution. Most misuse of these statistics is omission, not invention: the number is right and the population is missing. NOT FOR: figures published by anyone other than FinanceRateCalc.

Input parameters:

- `attribution_present` (boolean)
- `causal_assertion` (boolean)
- `individual_prediction` (boolean)
- `legal_conclusion` (boolean)
- `passport_id` (string, required)
- `personalized_recommendation` (boolean)
- `qualifier_dropped` (boolean)
- `scope_beyond_universe` (boolean)

### `get_national_fha_stats` (~228 tokens)

ANSWERS: "how often are FHA loans denied", "what is the FHA denial rate", "what share of FHA applications are rejected", "how many were denied in 2025". Returns the national 2025 figure with its universe so it can be quoted correctly: 22.1 percent, 262,250 denials of 1,187,606 applications that reached a credit decision (originated, approved-not-accepted, denied; reverse mortgages excluded), the denominator definition and the correction history. Most published FHA denial rates are 2023 purchase-only figures near 13.6 percent, a different universe, so state the universe when quoting. NOT FOR: conventional, VA or USDA loans, purchase-only or refinance-only rates, other years, or state/lender/metro breakdowns (use the dedicated tools). Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

### `get_lender_denial_stats` (~202 tokens)

ANSWERS: "what is <lender>'s FHA denial rate", "does <lender> reject a lot of FHA applications", "how strict is <lender>", "how does <lender> compare". PARAM: lender name, slug or LEI. Returns that lender's 2025 decisioned volume, denial rate, rank among the 100 largest FHA lenders, and the applicant-mix caveat any comparison must carry. COVERS ONLY the 100 largest FHA lenders by 2025 volume. NOT FOR: whether a person will be approved, or lenders outside that set. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `lender` (string, required): Lender name, slug, or 20-char LEI

### `list_lenders` (~168 tokens)

ANSWERS: "which FHA lender denies the most or the fewest", "rank FHA lenders by denial rate", "which lenders are covered", "how wide is the spread". Returns the ranked list of the 100 largest FHA lenders with name, slug, rate and volume; the 2025 span runs 1.8 to 78.7 percent inside the same federal program. NOT FOR: lenders outside the top 100, or any recommendation about where to apply. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `limit` (integer)
- `sort` (string)

### `get_small_loan_penalty` (~207 tokens)

ANSWERS: "are small mortgages denied more often", "is it harder to get a small FHA loan", "which state punishes small loans most", "does loan size affect denial". PARAM: optional two-letter state; omit for the ranked list. Returns denial rates under $150K and over $250K, the ratio, the ranking and any open discrepancy note. In 2025 the penalty exceeded 1x in every jurisdiction with a published split, from 1.19x to 4.45x (Idaho, 53.4 vs 12.0). NOT FOR: loan sizes between the bands, which are not published. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `state` (string): Two-letter USPS code, optional

### `get_denial_reason_shares` (~185 tokens)

ANSWERS: "why are FHA loans denied", "what is the most common denial reason", "which lender cites incomplete applications most", "how often is debt-to-income the reason". PARAM: optional lender; omit for cross-lender medians. Returns median and maximum share of each HMDA denial reason across the 95 of the 100 largest lenders that report reasons, and which lender carries the highest share of each. Reason fields are not a partition; shares need not sum to 100. NOT FOR: why a particular application was denied. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `lender` (string): Lender name or slug, optional

### `get_state_denial_stats` (~162 tokens)

ANSWERS: "what is the FHA denial rate in <state>", "is it harder to get an FHA loan in <state>", "how does <state> compare with the national rate". PARAM: two-letter USPS code only (OH, TX); full names are rejected. Returns the state 2025 rate and counts against the national 22.1 percent. NOT FOR: metro or city questions (use get_metro_lender_gap) or lender-level questions. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `state` (string, required)

### `get_door_effect_summary` (~179 tokens)

ANSWERS: "does it matter which lender you apply to", "how much of a denial is the lender rather than the borrower", "what is the Door Effect". Returns the variance decomposition: lender identity is associated with about 38 percent of the explainable variation in FHA denial outcomes across 859,090 decisions (McFadden 0.1712 to 0.2760), with model, sample and limits. Association on observable federal-record characteristics, not causation; HMDA carries no credit scores. NOT FOR: saying a lender caused a denial, or any individual estimate. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

### `get_metro_lender_gap` (~213 tokens)

ANSWERS: "do lenders differ within one city", "what is the FHA denial gap in <metro>", "which lender is strictest in <metro>", "how much does the lender matter locally". PARAM: metro name or slug. Returns a claim passport for that metro: lowest and highest lender denial rates among lenders with at least 100 decisioned applications there, the gap in points, counts and source reference. Cleveland is the widest in 2025 at 73.7 points (6.4 vs 80.1). NOT FOR: ZIP or neighbourhood questions, and never as evidence a lender acted improperly. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `metro` (string, required): Metro name or slug, e.g. 'Cleveland, OH' or 'cleveland-oh'

### `screen_counterparties` (~277 tokens)

ANSWERS: "run my list of lenders through the federal record", "screen these LEIs", "which of my counterparties deny more than their applicant mix predicts". PARAM: a list of public LEIs. Returns per-entity observed versus expected FHA denial rates, coverage flags, method version and an evidence manifest hash. Public entity identifiers only: never borrower files, credit data or personal information. Free preview; the full Evidence Brief needs a licence a human buys on the pricing page, and an agent may relay the offer but can never complete a purchase. Screening signals, not findings of misconduct. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `lei_list` (array, required): 1-40 public Legal Entity Identifiers (20-character ISO 17442). Hard cap 100; duplicates removed deterministically.
- `license_key` (string): Optional. A Lemon Squeezy license key issued for 'Counterparty Screen' (one-time or quarterly). Only pass it if the user explicitly provided it.
- `requested_format` (string): Optional. 'evidence_brief' requests the full audit artefact (licensed mode).

### `screen_counterparties_quote` (~152 tokens)

ANSWERS: "what would it cost to screen this list", "how many of my LEIs are covered". PARAM: a list of public LEIs. Returns coverage and price before anything runs. Always call before screen_counterparties on a new list. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `lei_list` (array, required): 1-40 public LEIs to be quoted.
- `license_key` (string): Optional. Include it to see the account's remaining balance in the quote.

### `list_cohorts` (~109 tokens)

ANSWERS: "can I screen a group of lenders", "what ready-made lender groups can I run", "show me an example screen". Returns the public cohorts screenable without uploading anything, with size and definition. Call before run_cohort. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

### `run_cohort` (~206 tokens)

ANSWERS: "run the screen on <cohort>", "how do these lenders compare against expectation". PARAM: cohort id from list_cohorts. Returns the peer-adjusted screen: observed versus expected denial rate, coverage flags, method version. Free preview; the full Evidence Brief needs a licence a human buys on the pricing page. Screening signals, never evidence of misconduct. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `cohort_id` (string, required): One of the ids returned by list_cohorts, e.g. top-volume-fha, high-coverage-only, above-expectation, depository-institutions, screening-only.
- `license_key` (string): Optional. Only pass it if the user explicitly provided one.
- `requested_format` (string)

### `get_conditional_door_map` (~181 tokens)

ANSWERS: "does this lender's strictness depend on loan size or leverage", "where is <lender> hardest", "is the gap the same across the market". PARAM: lender name or slug. Returns how that lender's peer-adjusted denial gap changes across published cells (state x loan amount x income x DTI x CLTV), with cell counts and the minimum-cell rule. NOT FOR: suppressed small cells, or any individual prediction. Historical observation computed from the public CFPB HMDA 2025 record (actions 1,2,3; loan_type 2). Not a prediction about any individual application. Attribution: FinanceRateCalc, CC BY 4.0.

Input parameters:

- `lender` (string): Lender name or 20-char LEI. Omit to list every lender with a published conditional surface.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp#diagnostics

## Score history

- 2026-09-21: 71
- 2026-09-20: 71
- 2026-09-19: 71
- 2026-09-18: 71
- 2026-09-17: 71
- 2026-09-16: 71
- 2026-09-15: 70
- 2026-09-14: 70
- 2026-09-13: 70
- 2026-09-12: 70
- 2026-09-11: 70
- 2026-09-10: 71
- 2026-09-09: 71
- 2026-09-08: 71
- 2026-09-07: 70
- 2026-09-06: 70
- 2026-09-05: 69
- 2026-09-04: 69
- 2026-09-03: 68
- 2026-09-02: 68
- 2026-09-01: 67
- 2026-08-31: 67
- 2026-08-30: 66
- 2026-08-29: 66
- 2026-08-28: 65
- 2026-08-27: 65
- 2026-08-26: 64
- 2026-08-25: 62
- 2026-08-24: 62
- 2026-08-23: 61

## Common questions

### What is the io.github.financeratecalc/frc-mcp server?

io.github.financeratecalc/frc-mcp is listed in the public MCP registry as io.github.financeratecalc/frc-mcp. FHA denial statistics from the 2025 federal HMDA record. 12 tools incl. counterparty screen. This page covers its hosted endpoint (https://frc-mcp.ziyetis.workers.dev).

### Is the io.github.financeratecalc/frc-mcp server safe to use?

io.github.financeratecalc/frc-mcp scores 71 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.financeratecalc/frc-mcp server expose?

io.github.financeratecalc/frc-mcp exposes 14 tools: check_claim_contract, get_national_fha_stats, get_lender_denial_stats, list_lenders, get_small_loan_penalty, and 9 more. Their descriptions and schemas cost roughly 2,677 tokens of context every time the server is loaded.

### Does the io.github.financeratecalc/frc-mcp server require authentication?

No. We connected to io.github.financeratecalc/frc-mcp without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the io.github.financeratecalc/frc-mcp server still maintained?

io.github.financeratecalc/frc-mcp is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://frc-mcp.ziyetis.workers.dev/
- Repository: https://github.com/financeratecalc/frc-mcp
- Website: https://financeratecalc.com/mcp-server.html
- Changelog RSS feed: https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp.json
- HTML version of this page: https://verifymcp.io/servers/financeratecalc-frc-mcp/frc-mcp
