Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

C4C: Mortgage Industry Regulations

REMOTE · MCP.CLAUDEFORCOMPLIANCE.COM · SCANNED SEP 29

Verbatim U.S. mortgage regulatory text with citations and effective dates. Read-only, no sign-in.

67 Trust /100
Trust breakdown (7 categories)

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. How we score → Why this is hard to score →

Endpoint Security63
Transport & Reachability100
Schema Quality & AI Usability75
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 3284 tokens (~328/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management10
  • Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage84
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 45% of tool parameters carry a description.Partial
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the C4C: Mortgage Industry Regulations MCP server?

C4C: Mortgage Industry Regulations is a hosted endpoint at https://mcp.claudeforcompliance.com/mcp, 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.

remote · mcp.claudeforcompliance.com

# add to Claude Code
claude mcp add --transport http com-claudeforcompliance-mortgage-regs 'https://mcp.claudeforcompliance.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-claudeforcompliance-mortgage-regs": {
      "url": "https://mcp.claudeforcompliance.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-claudeforcompliance-mortgage-regs": {
      "type": "http",
      "url": "https://mcp.claudeforcompliance.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-claudeforcompliance-mortgage-regs]
url = "https://mcp.claudeforcompliance.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-claudeforcompliance-mortgage-regs": {
      "type": "remote",
      "url": "https://mcp.claudeforcompliance.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-claudeforcompliance-mortgage-regs --url 'https://mcp.claudeforcompliance.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-claudeforcompliance-mortgage-regs:
    url: "https://mcp.claudeforcompliance.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-claudeforcompliance-mortgage-regs": {
      "Transport": "http",
      "Url": "https://mcp.claudeforcompliance.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add com-claudeforcompliance-mortgage-regs -t streamable-http -u 'https://mcp.claudeforcompliance.com/mcp'
// mcp.json
{
  "mcpServers": {
    "com-claudeforcompliance-mortgage-regs": {
      "type": "http",
      "url": "https://mcp.claudeforcompliance.com/mcp"
    }
  }
}

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

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 29 Sept 26 +1
    • The server rewrote its instructions, which are the text every model session reads security
    • Tool “get_obligation” rewrote its description, which is the text the model reads security
    • Tool “verify_quote” rewrote its description, which is the text the model reads security
  • 27 Sept 26 +1
    • Tool “find_in_section” rewrote its description, which is the text the model reads security
    • Tool “get_obligation” rewrote its description, which is the text the model reads security
    • Tool “search_regs” rewrote its description, which is the text the model reads security
    • Tool “verify_quote” rewrote its description, which is the text the model reads security
    • Schema quality: 327 → 367 ▼ functional
    • Stability: unverified → 0.03 ▲ functional
    • Schema quality: excellent → good functional
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Sept 26 65

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 29 Sept 2026 · Probed https://mcp.claudeforcompliance.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=claudeforcompliance.com CN=WE1,O=Google Trust Services,C=US 25 Sept 2026 24 Dec 2026 ECDSA 256 ECDSA-SHA256 ed390a93af1c8c6f0ea4a58f82b2aecb
SANs: claudeforcompliance.com, mcp.claudeforcompliance.com, *.mcp.claudeforcompliance.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of mcp.claudeforcompliance.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
claudeforcompliance.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.claudeforcompliance.com/mcp Verified 200
http (plaintext) http://mcp.claudeforcompliance.com/mcp Inconclusive 405
MCP tools · 10 exposed · ~2,811 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
find_in_section ~359

Returns only the verbatim paragraphs of one obligation (section) that contain the given terms. Inputs: `obligation_id`; `terms`, 1-6 short words or phrases ("cash-out", "credit score", "LTV"; abbreviations are expanded; numbers match as words or digits, so "five years" finds "five (5) years"); optional `max_passages`. Each passage has `verbatim` (the regulator's exact text), `offset` (its position in the section's text), `canonical_citation` (the pinpoint cite, where derivable) and `heading_path` (every heading above it, e.g. "vi. No Cash-Out Refinances > (A) Rate and Term > (i) Standard"). A match inside a table returns the whole table (`table: true`; `table_layout: "flattened"` when the source lost its layout and cells may not line up). A passage ending in a colon includes the list it introduces (`list_included: true`). `truncated` means more passages matched than were returned. No passages means no paragraph contains the terms as given; it is not a statement about the rule. `currency` is null or a version/status signal (dual-version, pending, revision-pending, superseded, expired...). On an FHA section HUD's Update 18 revises, `version` ("in-force" or "update-18-optional") says which text this is and `other_version` identifies the other.

NameTypeReqDescription
max_passagesinteger––
obligation_idstringyes–
termsarrayyes1-6 short terms, e.g. ["cash-out", "credit score"]; not document text.
NameTypeReqDescription
alias_notestring–Explains resolved_from_alias.
authoritystring–The document and section title as published.
canonical_citationstring|null–The citation in the regulator's style (e.g. "4000.1 II.A.5.d", "B3-3.3-07"), or null.
canonical_idstring–Set when this register is a same-text copy of that register.
chars_totalnumber–The section's total length.
content_hashstring–Hash of the stored text.
coverage_tierstring–How completely the corpus holds the document.
currency––null, or a version/status signal {kind, headline, detail, effective_date, mandatory_date, expires_on, as_of, links}; kind e.g. dual-version, pending, revision-pending, superseded, superseded-in-part,…
effective_datestring|null–Effective date, or null.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
fetched_atstring–When the source was retrieved.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
matches_notestring–How total_matches became passages_available.
merged_into_listsnumber–Matching paragraphs merged into lists with their lead-in.
merged_into_tablesnumber–Matching paragraphs merged into whole tables.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
obligation_idstring–The obligation (section) id.
other_version––On a dual-version section: the other version ({obligation_id, version, dates}).
passagesarray–Matching verbatim passages, in section order.
passages_availablenumber–Passages the matches make (tables and lists merged).
passages_returnednumber–Passages in this response.
register_idstring–The register (source document) id.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
resolved_from_aliasstring–The retired obligation id requested; its text is now at obligation_id.
sectionstring–The section designation.
snapshot_idstring–The stored source snapshot.
source_urlstring–The regulator's URL for the document.
statusstring–E.g. current, superseded, unknown.
superseded_bystring|null–The replacing register, or null.
termsarray–Per-term match counts.
toc_omittedboolean–The section's table-of-contents line was omitted.
total_matchesnumber–Matching paragraphs.
truncatedboolean–More passages matched than were returned.
version––On a dual-version section: {label: in-force | update-18-optional, dates, note}.

No examples provided.

get_obligation ~434

Returns one obligation's (section's) verbatim regulator text with provenance. Inputs: `obligation_id`; optional `offset`, `limit`, `compare_versions`. `verbatim` holds the text between <<<BEGIN VERBATIM>>> and <<<END VERBATIM>>>. `canonical_citation` is the section's citation in the regulator's style (e.g. "4000.1 II.A.5.d", "B3-3.3-07", "38 U.S.C. 3709(b)"), or null. Paging: at most 24,000 chars per response; `chars_offset` + `chars_returned` is the position within `chars_total`; `next_offset` is the offset of the next page, or null when the section ends in this response; `truncated` means more text follows; `started_mid_section` means text before `chars_offset` is not included; `paging` gives page N of M. `currency` is null or a version/status signal (dual-version, pending, revision-pending, superseded, expired...) with a one-line `headline`. An FHA 4000.1 section HUD's Update 18 revises has two obligations, the in-force text and the revision (`<id>::update-18`); `version` says which this is and `other_version` identifies the other. `compare_versions: true` adds `version_changes`, the sentences Update 18 deletes and adds. `figures` is a best-effort extraction of figures in the text; an empty or incomplete list is not evidence that the text states no figure. `canonical_id`, when set, is the register this one is a same-text copy of.

NameTypeReqDescription
compare_versionsboolean–On an FHA section Update 18 revises: also return `version_changes`, the sentences Update 18 deletes and adds (verbatim units with offsets).
limitinteger–Max chars to return from offset (200-24000; default 24000).
obligation_idstringyes–
offsetinteger––
NameTypeReqDescription
alias_notestring–Explains resolved_from_alias.
authoritystring–The document and section title as published.
canonical_citationstring|null–The citation in the regulator's style (e.g. "4000.1 II.A.5.d", "B3-3.3-07"), or null.
canonical_idstring–Set when this register is a same-text copy of that register.
chars_offsetnumber–Where this response starts in the section's text.
chars_returnednumber–Characters of text in this response.
chars_totalnumber–The section's total length.
content_hashstring–Hash of the stored text.
coverage_tierstring–How completely the corpus holds the document.
currency––null, or a version/status signal {kind, headline, detail, effective_date, mandatory_date, expires_on, as_of, links}; kind e.g. dual-version, pending, revision-pending, superseded, superseded-in-part,…
editorial––Reserved; summary is null (the text is not summarized).
effective_datestring|null–Effective date, or null.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
fetched_atstring–When the source was retrieved.
figuresarray–Best-effort extraction of figures in the text; an empty or incomplete list is not evidence that the text states no figure.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
next_offsetnumber|null–The next page's offset, or null when the section ends here.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
obligation_idstring–The obligation (section) id.
other_version––On a dual-version section: the other version ({obligation_id, version, dates}).
pagingobject–Page N of M.
register_idstring–The register (source document) id.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
resolved_from_aliasstring–The retired obligation id requested; its text is now at obligation_id.
sectionstring–The section designation.
snapshot_idstring–The stored source snapshot.
source_urlstring–The regulator's URL for the document.
started_mid_sectionboolean–Text before chars_offset is not in this response.
statusstring–E.g. current, superseded, unknown.
superseded_bystring|null–The replacing register, or null.
truncatedboolean–More text follows this response.
verbatimstring–The regulator's exact text, between <<<BEGIN VERBATIM>>> and <<<END VERBATIM>>>.
version––On a dual-version section: {label: in-force | update-18-optional, dates, note}.
version_changes––With compare_versions: sentences Update 18 deletes and adds, or {error: "single_version"}.

No examples provided.

get_playbook_kit ~190

Returns a playbook's rule kit. FNMA AI lender letter: the verbatim LL-2026-04, InfoSec Supplement and ECOA/Reg B/FCRA/AVM rows with citations, paginated; `next_offset` is the next page's offset, or null when the kit is complete. FHA/VA/USDA QC: the corpus registers each check area is grounded in. The kit block's fingerprint and dates identify its version. Playbook tools accept only ids and reference names, no document text; the user's P&Ps and loan files stay in their own chat.

NameTypeReqDescription
idstringyesPlaybook id: one of fnma-ai-lender-letter, fha-underwriting-qc, va-loan-qc, usda-loan-qc.
offsetinteger–Row offset for the next page (the previous page's next_offset).
NameTypeReqDescription
areas––For a corpus-register kit: its areas and registers.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
how_to_readstring–For a corpus-register kit: the server's reading note.
idstring–The playbook id.
kit––The kit's kind, source and version.
next_offsetnumber|null–The next page's offset, or null when the kit is complete.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
offsetnumber–Where this page starts.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
rows––Kit rows: verbatim rule text with citations.
rows_returnednumber–Rows in this page.
rows_totalnumber–Rows in the kit.
search_family––For a corpus-register kit: its search family.
valid_idsarray–On unknown_playbook: the valid ids.

No examples provided.

get_playbook_reference ~155

Returns one stage reference document of a playbook (e.g. the FNMA playbook's DISCOVERY, RECONCILE, SYNTHESIS, PP-UPDATE, CHANGELOG or UPDATING stage). Inputs: `id`, `name` (one of the playbook's `references`). Playbook tools accept only ids and reference names, no document text; the user's P&Ps and loan files stay in their own chat.

NameTypeReqDescription
idstringyesPlaybook id: one of fnma-ai-lender-letter, fha-underwriting-qc, va-loan-qc, usda-loan-qc.
namestringyesReference name, one of the playbook's `references`.
NameTypeReqDescription
content––The reference's content.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
idstring–The playbook id.
namestring–The reference name.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
valid_idsarray–On unknown_playbook: the valid ids.
valid_namesarray–On unknown_reference: the valid names.

No examples provided.

get_reg ~132

Returns a manifest of one register (source document): its provenance, `currency` (null or a version/status signal: dual-version, pending revision, superseded, expired...) and its obligations (sections), each with `obligation_id`, section, `canonical_citation`, `chars_total` and `will_truncate` (true when the section exceeds one 24,000-char page). The manifest contains no regulator text. A dual-version section lists both obligations, each with `version` ("in-force" or "update-18-optional") and `other_version`.

NameTypeReqDescription
register_idstringyes–
NameTypeReqDescription
also_atarray–Same-text copies of this register.
authoritystring–The document title.
canonical_citationstring|null–The citation in the regulator's style (e.g. "4000.1 II.A.5.d", "B3-3.3-07"), or null.
canonical_idstring–Set when this register is a same-text copy of that register.
coverage_tierstring–How completely the corpus holds the document.
currency––null, or a version/status signal {kind, headline, detail, effective_date, mandatory_date, expires_on, as_of, links}; kind e.g. dual-version, pending, revision-pending, superseded, superseded-in-part,…
effective_datestring|null–Effective date, or null.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
obligation_idstring–Echoed on error.
obligationsarray–The register's obligations (a manifest, not regulator text).
register_idstring–The register id.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
statusstring–E.g. current, superseded, unknown.
superseded_bystring|null–The replacing register, or null.

No examples provided.

list_playbooks ~119

Lists the guided compliance playbooks this server provides: the Fannie Mae AI lender letter (LL-2026-04) P&P review (AI inventory, AI governance policy, risk assessment, P&P updates, change log) and FHA, VA and USDA loan-file QC against the verbatim handbooks. Returns each playbook's id, what it does, when it applies and what the user provides. Playbook tools accept only ids and reference names, no document text; the user's P&Ps and loan files stay in their own chat.

Input schema present but exposes no named parameters.

NameTypeReqDescription
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
nextstring–The server's note on the next step.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
playbooksarray–The available playbooks.
privacy––How user material is handled.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).

No examples provided.

lookup_citation ~260

Resolves a regulatory citation (e.g. '4000.1 II.A.8.d', 'B3-4.3-04', 'Freddie Mac Guide 5306.1', '38 U.S.C. 3737', 'M26-7 Chapter 4 Topic 9', 'SBA Notice 5000-872764', 'SOP 50 10 8 B.Ch1.A.2', 'HB-1-3555 11.3') to a `register_id`. Errors: `not_found` (the cite parses but is not in the corpus; `parsed` shows the parse), `ambiguous` (it could mean several registers, listed in `candidates`; no guess is made), `unparsed` (not recognizable as a citation). Near matches are not suggested. A handbook section resolves to the handbook's own register; documents that cite or amend it (e.g. Mortgagee Letters) are listed in `related` and are not the section's text. Identical copies of a section resolve to one register and are listed in `also_at`. A whole-handbook name returns `handbook`, an outline of its parts.

NameTypeReqDescription
citationstringyes–
NameTypeReqDescription
also_atarray–Identical copies of the section (other register ids).
also_at_notestring–Explains also_at.
candidatesarray–On ambiguous: the registers the citation could mean.
canonical_idstring–Set when the register is a same-text copy of that register.
citationstring–The citation as given (on unparsed).
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
handbook––When the citation names a whole handbook: its outline.
hintstring–On an error: the server's explanation.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
parsed––The parse of the citation ({kind, canonical, ...}).
register_idstring–The register the citation resolves to.
related––Documents that cite or amend the section ({register_id, relation}); not its text.
related_notestring–Explains related.
renumbered_fromstring–The old register, when the section was renumbered.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
superseded_candidatesarray–Candidates dropped because a current register replaces them.
superseded_register_idstring–The register holding the prior text of this section.
topics––Topics under a structured citation.
truncatedboolean–The candidate scan hit its limit.

No examples provided.

search_regs ~565

Full-text search of US mortgage regulator text (Fannie Mae, Freddie Mac, FHA, VA, USDA, Ginnie Mae, SBA, CFPB). Inputs: `query`; optional `family` (one agency), `limit` (1-25), `currency_kind` (only sections carrying that currency signal; "any" = any signal). Common abbreviations (DTI, LTV, IRRRL, W-2, VOE, PITI, BK...) are expanded to the regulator's terms. Each result is one section: title, `obligation_id`, `canonical_citation` (the citation in the regulator's style, or null) and `excerpt`, a verbatim fragment near the match, not the whole rule. `match` is "all_terms" or "partial"; a partial result lists the query words it lacks in `missing_terms`. Order: `rank_score`, highest first = text score (title-weighted) x term coverage x title fit, with superseded, pending, incorporated or expired text x0.2 (never above its replacement), a special program's section (`special_program`: Home Possible, HomeReady, 203(k), HECM...) x0.5 unless the query names the program, and `obligation_type` "note" (statutory source-credit and editorial notes) or "index" (a chapter heading) x0.2 unless the query asks for them. `section_status` "deleted" marks a deleted-section stub, ranked last. A query that is a citation ("38 U.S.C. 3737", "ML 2026-08") returns the cited section first and sets `cited`; a bare handbook name ("HUD 4000.1") adds `handbook`, an outline of its parts. `currency` is null or a version/status signal whose kinds include dual-version, pending, revision-pending, superseded, superseded-in-part (a Mortgagee Letter replaced some provisions, named in `headline`), modified-by (a later issuance changes it, optional until its mandatory date) and expired. `version` "in-force" or "update-18-optional" marks the two texts of an FHA section HUD's Update 18 revises (`mandatory_date` for the revision); `other_version` is the other text's obligation_id. Empty results carry `reason` (empty_query, no_match, no_match_above_threshold) and may carry `guidance` naming shorthand in the que…

NameTypeReqDescription
currency_kindstring–Restricts results to sections carrying this currency signal; "any" = any signal.
familystring––
limitinteger––
querystringyes–
NameTypeReqDescription
cited––When the query is a citation: {citation, register_ids}.
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
handbook––When the query names a whole handbook: its outline.
hintstring–On an error: the server's explanation.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
reasonstring–With empty results: empty_query, no_match or no_match_above_threshold.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
resultsarray–Ranked sections, highest rank_score first (may be empty).

No examples provided.

start_playbook ~148

Returns one playbook's full workflow instructions, its stages, the stage reference names and the rule-kit version: the Fannie Mae AI lender letter (LL-2026-04) P&P review, or FHA, VA or USDA loan-file QC. Input: the playbook `id`; an unknown id returns `unknown_playbook` with `valid_ids`. Playbook tools accept only ids and reference names, no document text; the user's P&Ps and loan files stay in their own chat.

NameTypeReqDescription
idstringyesPlaybook id: one of fnma-ai-lender-letter, fha-underwriting-qc, va-loan-qc, usda-loan-qc.
NameTypeReqDescription
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
idstring–The playbook id.
instructions––The playbook's workflow instructions.
kit––The rule kit ({kind, source, version, load_with}).
load_reference_withstring|null–How a reference is loaded, or null when there are none.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
privacy––How user material is handled.
referencesarray–The playbook's reference names.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
stages––The workflow's stages.
titlestring–The playbook's name.
user_provides––What the user supplies.
valid_idsarray–On unknown_playbook: the valid ids.
version––The playbook's version.

No examples provided.

verify_quote ~449

Checks whether a passage appears in a regulator's source document; accepts text from any source. Inputs: `text` (up to 5,000 words); optional `register_id` (without it, up to 3 candidate documents are located by search). `outcome` is one of: exact (contiguous in the source, quote marks and dashes as the source writes them; a line break counts as a space); normalized (matches after folding quote and dash typography, `typography_folded`; ignoring page footers or running heads, `furniture_ignored`; spacing where the stored source splits or joins words, `spacing_ignored`; or added list markers, `list_markers_ignored`); composed (every word is in the source, in source order, but from non-contiguous pieces, as with an overview or an ellipsis; `omissions` lists the short source phrases skipped between pieces); not_found (no source support; `unsupported` lists the unsupported spans, and on a near miss `differences` gives the closest source text, the source words the text lacks and the words it adds); not_checked (over 5,000 words). `coverage` is the share of words found. `checked_against` names the documents checked (document, edition, retrieval date; ids in `checked_snapshot_ids`); `matched_against` names the one matched, `matched_register_id` / `matched_obligation_id` the stored text containing the passage. `matched_version` is current; superseded (the text is a prior version of the rule; `superseded_by` is the current register); or update-18-optional (HUD's Update 18 revision of an FHA 4000.1 section, optional until `mandatory_date`; `in_force_obligation_id` is the text in force by default). `obligation_currency` lists currency signals on the obligation holding the text (e.g. superseded-in-part). `rescinded: true` (with `rescinded_by`) means the passage is text a later issuance removed or replaced.

NameTypeReqDescription
register_idstring––
textstringyes–
NameTypeReqDescription
also_in_obligation_idstring–On a match in an amending issuance: the amended obligation that also carries the text.
checked_against––Source documents checked (document, edition, retrieval date).
checked_snapshot_ids––Snapshot ids checked.
coveragenumber–Share of the text's words found in the source (0 to 1).
differences––On a near miss: {closest_source, missing_from_quote, extra_in_quote}.
elisionsnumber–On composed: gaps (marked or not).
errorstring–Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.
fallbackstring–On daily_capacity_reached: where the full corpus can be downloaded.
furniture_ignoredboolean–A page footer or running head was ignored.
guidancestring–On a refusal or empty search: the server's explanation.
hintstring–On an error: the server's explanation.
limitnumber–On not_checked: the word limit.
list_markers_ignoredboolean–Added list markers were ignored.
mandatory_datestring–On an Update 18 revision: when it becomes mandatory.
matched_againststring–The checked document the text matched.
matched_obligation_idstring–The obligation whose stored text contains the passage.
matched_register_idstring–The register whose stored text contains the passage.
matched_versionstring–current, superseded (a prior version) or update-18-optional.
notestring–A note on this result.
noticestring–Terms notice: research use only, not legal advice.
omissions––On composed: short source phrases skipped between pieces.
outcomestring–exact: contiguous in the source; normalized: matches after typography, spacing, footer or list-marker folding; composed: all words in source order, non-contiguous; not_found: no source support; not_c…
reasonstring–On not_checked: too_long.
register_idstring–Echoed on not_found.
resetsstring–On daily_capacity_reached: when capacity resets (00:00 UTC).
segmentsnumber–On composed: source pieces the text is assembled from.
spacing_ignoredboolean–Only spacing differs.
superseded_bystring|null–On superseded: the current register.
superseded_register_idstring–On superseded: the register holding the prior text.
typography_foldedboolean–Matched after folding quotes and dashes.
unsupported––On not_found: spans with no source support.
wordsnumber–On not_checked: the word count.

No examples provided.

Common questions

What is the C4C: Mortgage Industry Regulations MCP server?

C4C: Mortgage Industry Regulations is an MCP server listed in the public MCP registry as com.claudeforcompliance/mortgage-regs. Verbatim U.S. mortgage regulatory text with citations and effective dates. Read-only, no sign-in. This page covers its hosted endpoint (https://mcp.claudeforcompliance.com/mcp).

Is the C4C: Mortgage Industry Regulations MCP server safe to use?

C4C: Mortgage Industry Regulations scores 67 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 C4C: Mortgage Industry Regulations MCP server expose?

C4C: Mortgage Industry Regulations exposes 10 tools: get_obligation, get_reg, lookup_citation, search_regs, find_in_section, and 5 more. Their descriptions and schemas cost roughly 2,811 tokens of context every time the server is loaded.

Does the C4C: Mortgage Industry Regulations MCP server require authentication?

No. We connected to C4C: Mortgage Industry Regulations without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the C4C: Mortgage Industry Regulations MCP server still maintained?

C4C: Mortgage Industry Regulations is still listed as active in the MCP registry. We last reached this channel on 29 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.