Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "find_in_section", "get_obligation", "get_reg" and 3 more
⟨253 unchanged words⟩ ({obligation_id, version, dates})."},"page_url":{"description":"The section's page on claudeforcompliance.com (verbatim text, currency notices, link to the regulator).","type":"string"},"passages":{"description":"Matching verbatim passages, ⟨341 unchanged words⟩
⟨356 unchanged words⟩ ({obligation_id, version, dates})."},"page_url":{"description":"The section's page on claudeforcompliance.com (verbatim text, currency notices, link to the regulator).","type":"string"},"paging":{"additionalProperties":{},"description":" ⟨197 unchanged words⟩
⟨327 unchanged words⟩ :"object"},"type":"array"},"page_url":{"description":"The section's page on claudeforcompliance.com (verbatim text, currency notices, link to the regulator).","type":"string"},"register_id":{"description":"The register id.", ⟨6 unchanged words⟩ : when capacity resets (00:00 UTC).","type":"string"},"source_url":{"description":"The regulator's URL for the document.","type":"string"},"status":{ ⟨19 unchanged words⟩
⟨154 unchanged words⟩ legal advice.","type":"string"},"obligations":{"description":"The register's sections ({obligation_id, section}; when no text is inlined, `opening`: the first words of the section's verbatim text, cut and marked with ...)."},"page_url":{"description":"The section's page on claudeforcompliance.com (verbatim text, currency notices, link to the regulator).","type":"string"},"parsed":{"description":"The parse of the ⟨52 unchanged words⟩ : when capacity resets (00:00 UTC).","type":"string"},"source_url":{"description":"The regulator's URL for the resolved section's document.","type":"string"},"superseded_candidates":{ ⟨46 unchanged words⟩
⟨280 unchanged words⟩ version's obligation_id.","type":"string"},"page_url":{"description":"The section's page on claudeforcompliance.com (verbatim text, currency notices, link to the regulator).","type":"string"},"rank_score":{"description":"The score results are ⟨27 unchanged words⟩ ,"section_status_date":{"description":"Date of section_status.","type":"string"},"source_url":{"description":"The regulator's URL for the document.","type":"string"},"special_program":{ ⟨34 unchanged words⟩
⟨291 unchanged words⟩ ,"not_checked"],"type":"string"},"page_url":{"description":"The matched section's page on claudeforcompliance.com.","type":"string"},"reason":{"description":"On not_checked: too_long." ⟨29 unchanged words⟩ text is assembled from.","type":"number"},"source_url":{"description":"The regulator's URL for the matched section's document.","type":"string"},"spacing_ignored":{"description":"Only spacing ⟨55 unchanged words⟩
Changed the definition of "search_regs"
⟨114 unchanged words⟩ superseded, pending, incorporated or expired text x0.2(never above its replacement), a special program's section (`special_program`: Home ⟨9 unchanged words⟩ names the program, and `obligation_type` "note" (statutorysource-creditand editorialnotes) or "index" (a chapter heading) ⟨13 unchanged words⟩ ranked last. A query that is a citation("38 U.S.C. 3737", "ML 2026-08")returns the cited section first and sets `cited`; ⟨93 unchanged words⟩
Certificate recorded, valid to 2026-12-24
Authorization not required
Changed the definition of "search_regs"
⟨38 unchanged words⟩ ,"deleted","optional-now","amends","time-limited","note"],"type":"string"},"family":{ ⟨26 unchanged words⟩
Changed the definition of "get_obligation" and "verify_quote"
⟨146 unchanged words⟩ the sentences Update 18 deletes and adds. `figures`listsisthea best-effort extraction of figurestheintextthestates;text; an empty or incomplete listmeansis not evidence that thesectiontext statesnone.
Changed the definition of "find_in_section", "get_obligation", "get_playbook_kit" and 7 more
ReturnReturnsONLYonly the verbatim paragraphs of one obligation (section) that containyour terms --thefast way to get specific requirements outgivenofterms.aInputs:long`obligation_id`;section`terms`,instead of paging through it with get_obligation. terms:1-6 short words or phrasesin the regulator's vocabulary
Unknown → Live
First tool surface recorded: 10 tools (server version 1.0.0)
https://mcp.claudeforcompliance.com/mcp (mcp_streamable_http) — from mcp_registry, with the record
Showing the latest 10 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨195 unchanged words⟩ :"string"},"figures":{"description":"FiguresBest-effortstatedextraction of figures in the text; an emptywhenoritincomplete list is not evidence that the text statesnone.no figure.","items":{"additionalProperties":{},"properties ⟨20 unchanged words⟩ "},"unit":{"description":"percent, percentage_point, currency, duration, ratio, fraction, age, day_of_period, time, count, number or temperature.","type":"string"}," ⟨301 unchanged words⟩
⟨176 unchanged words⟩ 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 ⟨63 unchanged words⟩
⟨4 unchanged words⟩ "description":"verify_quote result.","properties":{"also_in_obligation_id":{"description":"On a match in an amending issuance: the amended obligation that also carries the text.","type":"string"},"checked_against":{"description":"Source documents checked ( ⟨136 unchanged words⟩ an Update 18 revision: when it becomes mandatory.","type":"string"},"matched_against":{"description":"The checked document the text matched.","type":"string"},"matched_obligation_id":{"description":"The obligation whose stored text contains the passage.","type":"string"},"matched_register_id":{"description":"The register whose stored text contains the passage.","type":"string"},"matched_version":{ ⟨180 unchanged words⟩
⟨23 unchanged words⟩ e.g. [\"cash-out\", \"credit score\"].;Notnot document text.","items":{"maxLength":60 ⟨15 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"find_in_section result.","properties":{"alias_note":{"description":"Explains resolved_from_alias.","type":"string"},"authority":{"description":"The document and section title as published.","type":"string"},"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"canonical_id":{"description":"Set when this register is a same-text copy of that register.","type":"string"},"chars_total":{"description":"The section's total length.","type":"number"},"content_hash":{"description":"Hash of the stored text.","type":"string"},"coverage_tier":{"description":"How completely the corpus holds the document.","type":"string"},"currency":{"description":"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, modified-by, expired."},"effective_date":{"description":"Effective date, or null.","type":["string","null"]},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"fetched_at":{"description":"When the source was retrieved.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"matches_note":{"description":"How total_matches became passages_available.","type":"string"},"merged_into_lists":{"description":"Matching paragraphs merged into lists with their lead-in.","type":"number"},"merged_into_tables":{"description":"Matching paragraphs merged into whole tables.","type":"number"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"obligation_id":{"description":"The obligation (section) id.","type":"string"},"other_version":{"description":"On a dual-version section: the other version ({obligation_id, version, dates})."},"passages":{"description":"Matching verbatim passages, in section order.","items":{"additionalProperties":{},"properties":{"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"chars":{"description":"The passage's length.","type":"number"},"continues_at":{"description":"Offset where the table continues, when table_complete is false.","type":"number"},"heading":{"description":"The nearest heading above (verbatim), or null.","type":["string","null"]},"heading_path":{"description":"Every heading above, joined by \" > \", or null.","type":["string","null"]},"list_included":{"description":"The passage ends in a colon and includes the list it introduces.","type":"boolean"},"matched_terms":{"description":"The terms this passage matched.","items":{"type":"string"},"type":"array"},"offset":{"description":"Where the passage starts in the section's text.","type":"number"},"table":{"description":"The passage is a whole table.","type":"boolean"},"table_complete":{"description":"false when the table may continue past the passage.","type":"boolean"},"table_layout":{"description":"\"flattened\": the source lost its table layout; cells may not line up.","type":"string"},"verbatim":{"description":"The regulator's exact text.","type":"string"}},"type":"object"},"type":"array"},"passages_available":{"description":"Passages the matches make (tables and lists merged).","type":"number"},"passages_returned":{"description":"Passages in this response.","type":"number"},"register_id":{"description":"The register (source document) id.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"resolved_from_alias":{"description":"The retired obligation id requested; its text is now at obligation_id.","type":"string"},"section":{"description":"The section designation.","type":"string"},"snapshot_id":{"description":"The stored source snapshot.","type":"string"},"source_url":{"description":"The regulator's URL for the document.","type":"string"},"status":{"description":"E.g. current, superseded, unknown.","type":"string"},"superseded_by":{"description":"The replacing register, or null.","type":["string","null"]},"terms":{"description":"Per-term match counts.","items":{"additionalProperties":{},"properties":{"expanded_to":{"description":"Spellings and abbreviations it expanded to."},"paragraphs":{"description":"Paragraphs containing it.","type":"number"},"term":{"description":"The term as given.","type":"string"}},"type":"object"},"type":"array"},"toc_omitted":{"description":"The section's table-of-contents line was omitted.","type":"boolean"},"total_matches":{"description":"Matching paragraphs.","type":"number"},"truncated":{"description":"More passages matched than were returned.","type":"boolean"},"version":{"description":"On a dual-version section: {label: in-force | update-18-optional, dates, note}."}},"type":"object"}ReturnReturns one obligation's (section's) verbatim regulator text withfullprovenance.Answer with this textInputs:quote`obligation_id`;itoptionalexactly`offset`,with its section citation`limit`,never a paraphrase (a summary`compare_versions`.may`verbatim`followholds thequotes,textlabeledbetweenas<<<BEGINyourVERBATIM>>>summary).andIf<<<END`currency`VERBATIM>>>. `canonical_citation` isnotthenull,section'stellcitationtheinusertheitsregulator'sheadlinestyle (e.g.two versions apply, a pending"4000.1revisionII.A.5.d",superseded"B3-3.3-07",expired) and which version you quoted. For specific requirements in a"38longU.S.C.section3709(b)"),find_in_section is faster: it returns only the paragraphs containing yourorterms.null. Paging: at most 24,000 chars percall (`limit` asks for fewer). `paging` says where you are (page N of M) andresponse;`paging.how``chars_offset`says+exactly`chars_returned`whatistothedopositionnext:withinwhile`chars_total`; `next_offset` isa number, calltheagainoffsetwithof thesame obligation_idnextandpage,offset=next_offset;or nullmeanswhen the section ends in thisresponse. chars_offset + chars_returned is your position in chars_total.response; `truncated` means more textfollows this response (read on from next_offset);follows; `started_mid_section` means text beforechars_offset`chars_offset` is notinincluded;it.`paging`NevergivesassertpagethatNtheofruleM.does`currency`notisrequirenullsomethingoruntilayouversion/statushavesignalread(dual-version,everypending,page.revision-pending,Twosuperseded,versions:expired...)anwith a one-line `headline`. An FHA 4000.1 section HUD's Update 18 revises has two obligations, the in-force text andits Update 18the revision (`<id>::update-18`); `version` says which this is and `other_version`gives the other's obligation_id -- quoteidentifies theone that applies and say which.other. `compare_versions: true` adds `version_changes`:, the sentences Update 18 deletes andadds in this section.adds.`canonical_citation``figures`islists thesection's citation infigures theregulator's style (e.g. "4000.1 II.A.5.d", "B3-3.3-07", "38textU.S.C.states;3709(b)";annullemptyiflistnotmeansderivable):thecitesectionit.statesIfnone. `canonical_id`,iswhen set,this registerisa same-text copy of that one. If `figures` is emptythesection states no figure -- sayregistersothisratheronethanissupplyingaonesame-textfromcopymemory.of.
⟨34 unchanged words⟩ to return from offset (200-24000; default 24000).With a find_in_section passage offset, a small limit reads just around it.","maximum":24000,"minimum":1,"type ⟨17 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"get_obligation result.","properties":{"alias_note":{"description":"Explains resolved_from_alias.","type":"string"},"authority":{"description":"The document and section title as published.","type":"string"},"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"canonical_id":{"description":"Set when this register is a same-text copy of that register.","type":"string"},"chars_offset":{"description":"Where this response starts in the section's text.","type":"number"},"chars_returned":{"description":"Characters of text in this response.","type":"number"},"chars_total":{"description":"The section's total length.","type":"number"},"content_hash":{"description":"Hash of the stored text.","type":"string"},"coverage_tier":{"description":"How completely the corpus holds the document.","type":"string"},"currency":{"description":"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, modified-by, expired."},"editorial":{"description":"Reserved; summary is null (the text is not summarized)."},"effective_date":{"description":"Effective date, or null.","type":["string","null"]},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"fetched_at":{"description":"When the source was retrieved.","type":"string"},"figures":{"description":"Figures stated in the text; empty when it states none.","items":{"additionalProperties":{},"properties":{"as_written":{"description":"The figure as written, when it differs.","type":"string"},"offset":{"description":"Position in this response's text.","type":"number"},"unit":{"description":"percent, currency, duration, ratio, age, day_of_period or temperature.","type":"string"},"value":{"description":"The figure as a number string, e.g. \"43\", \"50/50\".","type":"string"}},"type":"object"},"type":"array"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"next_offset":{"description":"The next page's offset, or null when the section ends here.","type":["number","null"]},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"obligation_id":{"description":"The obligation (section) id.","type":"string"},"other_version":{"description":"On a dual-version section: the other version ({obligation_id, version, dates})."},"paging":{"additionalProperties":{},"description":"Page N of M.","properties":{"how":{"description":"The server's paging note.","type":"string"},"next_offset":{"description":"The next page's offset, or null at the end.","type":["number","null"]},"page":{"description":"This page's number, or null past the end.","type":["number","null"]},"pages":{"description":"Total pages at this page size.","type":"number"}},"type":"object"},"register_id":{"description":"The register (source document) id.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"resolved_from_alias":{"description":"The retired obligation id requested; its text is now at obligation_id.","type":"string"},"section":{"description":"The section designation.","type":"string"},"snapshot_id":{"description":"The stored source snapshot.","type":"string"},"source_url":{"description":"The regulator's URL for the document.","type":"string"},"started_mid_section":{"description":"Text before chars_offset is not in this response.","type":"boolean"},"status":{"description":"E.g. current, superseded, unknown.","type":"string"},"superseded_by":{"description":"The replacing register, or null.","type":["string","null"]},"truncated":{"description":"More text follows this response.","type":"boolean"},"verbatim":{"description":"The regulator's exact text, between <<<BEGIN VERBATIM>>> and <<<END VERBATIM>>>.","type":"string"},"version":{"description":"On a dual-version section: {label: in-force | update-18-optional, dates, note}."},"version_changes":{"description":"With compare_versions: sentences Update 18 deletes and adds, or {error: \"single_version\"}."}},"type":"object"}GetReturns a playbook's rule kit. FNMA AI lender letter: the verbatim LL-2026-04, InfoSec Supplement,and ECOA/Reg B/FCRA/AVM rowsto citewithfromcitations,paginatedpaginated;(follow`next_offset`next_offsetisuntilthe next page's offset, or null).when the kit is complete. FHA/VA/USDA QC: the corpus registers each check areagrounds in, read with get_regis/groundedget_obligation.in. The kit block's fingerprint and datesare the currencyidentifycheck.itsTheversion.user'sPlaybookP&Pstoolsandacceptloanonlyfilesidsstayandinreferencetheirnames,ownnochat:documentnevertext;sendthetheiruser'stextP&Pstoandthisloanserver.filesPlaybookstaytoolsintaketheironlyownids.chat.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"get_playbook_kit result.","properties":{"areas":{"description":"For a corpus-register kit: its areas and registers."},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"how_to_read":{"description":"For a corpus-register kit: the server's reading note.","type":"string"},"id":{"description":"The playbook id.","type":"string"},"kit":{"description":"The kit's kind, source and version."},"next_offset":{"description":"The next page's offset, or null when the kit is complete.","type":["number","null"]},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"offset":{"description":"Where this page starts.","type":"number"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"rows":{"description":"Kit rows: verbatim rule text with citations."},"rows_returned":{"description":"Rows in this page.","type":"number"},"rows_total":{"description":"Rows in the kit.","type":"number"},"search_family":{"description":"For a corpus-register kit: its search family."},"valid_ids":{"description":"On unknown_playbook: the valid ids.","items":{"type":"string"},"type":"array"}},"type":"object"}LoadReturns one stage reference document of a playbook (for examplee.g. the FNMA playbook's DISCOVERY, RECONCILE, SYNTHESIS, PP-UPDATE, CHANGELOG or UPDATING stage).whenInputs: `id`, `name` (one of theworkflowplaybook'sreaches`references`).thatPlaybookstage.toolsstart_playbookacceptlistsonlytheidsvalidandnames.referenceThenames, no document text; the user's P&Ps and loan files stay in their ownchat: never send their text to this server. Playbook tools take only ids.chat.
⟨22 unchanged words⟩ ,"name":{"description":"Reference name,asonelistedofbythestart_playbook'splaybook's `references`.","maxLength":64,"pattern":"^ ⟨9 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"get_playbook_reference result.","properties":{"content":{"description":"The reference's content."},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"id":{"description":"The playbook id.","type":"string"},"name":{"description":"The reference name.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"valid_ids":{"description":"On unknown_playbook: the valid ids.","items":{"type":"string"},"type":"array"},"valid_names":{"description":"On unknown_reference: the valid names.","items":{"type":"string"},"type":"array"}},"type":"object"}ListReturnstheaobligationsmanifestinofaone registerwith their(sourcesections,document):sizes,its provenanceand, `currency` (null,or awarning such as two versionsversion/statusapplysignal:/dual-version, pending revision/, superseded/,expiredexpired...)--andtellitstheobligationsuser(sections).,Returnseachawithmanifest`obligation_id`,NOTsection,the`canonical_citation`,regulator`chars_total`text:andquote`will_truncate`from(trueget_obligationwhenorthefind_in_section.sectionUseexceedsthisoneto24,000-chardecidepage).whichThesectionsmanifestarecontainsworthnoreading.regulator text. A dual-version section lists both obligations, each withits`version` ("in-force" or "update-18-optional") and `other_version`.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"get_reg result.","properties":{"also_at":{"description":"Same-text copies of this register.","items":{"type":"string"},"type":"array"},"authority":{"description":"The document title.","type":"string"},"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"canonical_id":{"description":"Set when this register is a same-text copy of that register.","type":"string"},"coverage_tier":{"description":"How completely the corpus holds the document.","type":"string"},"currency":{"description":"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, modified-by, expired."},"effective_date":{"description":"Effective date, or null.","type":["string","null"]},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"obligation_id":{"description":"Echoed on error.","type":"string"},"obligations":{"description":"The register's obligations (a manifest, not regulator text).","items":{"additionalProperties":{},"properties":{"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"chars_total":{"description":"Length of the section's text in characters.","type":"number"},"currency":{"description":"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, modified-by, expired."},"mandatory_date":{"description":"On an Update 18 revision: when it becomes mandatory.","type":"string"},"obligation_id":{"description":"The obligation (section) id.","type":"string"},"other_version":{"description":"On a dual-version section: the other version's obligation_id.","type":"string"},"section":{"description":"The section designation or title.","type":"string"},"version":{"description":"On a dual-version FHA section: \"in-force\" or \"update-18-optional\".","type":"string"},"will_truncate":{"description":"The section exceeds one 24,000-char page.","type":"boolean"}},"type":"object"},"type":"array"},"register_id":{"description":"The register id.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"status":{"description":"E.g. current, superseded, unknown.","type":"string"},"superseded_by":{"description":"The replacing register, or null.","type":["string","null"]}},"type":"object"}ListLists the guided compliance playbooks this serverruns in your chatprovides: 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 ⟨5 unchanged words⟩ each playbook's id, what it does, whento useit applies and what the usermust provide. Theprovides.user'sPlaybookP&Pstoolsandacceptloanonlyfilesidsstayandinreferencetheirnames,ownnochat:documentnevertext;sendthetheiruser'stextP&Pstoandthisloanserver.filesPlaybookstaytoolsintaketheironlyownids.chat.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"list_playbooks result.","properties":{"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"next":{"description":"The server's note on the next step.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"playbooks":{"description":"The available playbooks.","items":{"additionalProperties":{},"properties":{"id":{"description":"The playbook id.","type":"string"},"prompt":{"description":"The matching MCP prompt name.","type":"string"},"title":{"description":"The playbook's name.","type":"string"},"user_provides":{"description":"What the user supplies."},"version":{"description":"The playbook's version."},"what":{"description":"What it does.","type":"string"},"when":{"description":"When it applies.","type":"string"}},"type":"object"},"type":"array"},"privacy":{"description":"How user material is handled."},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"}},"type":"object"}ResolveResolves a regulatory citation (for examplee.g. '4000.1 II.A.8.d', 'B3-4.3-04', 'Freddie Mac Guide 5306.1' ⟨13 unchanged words⟩ 10 8 B.Ch1.A.2', 'HB-1-3555 11.3') to aregister.`register_id`.AErrors:cite`not_found`that(the cite parses but is not in thecorpus is `not_found` (withcorpus; `parsed`).Refusesshowswhentheaparse),citation`ambiguous`is(itambiguouscouldrathermeanthanseveralguessingregisters,--listedifinyou`candidates`;receivenoanguess'ambiguous'iserrormade),ask the`unparsed`user(notwhichrecognizableversionastheyamean.citation).DoesNearnotmatchessuggestarenearnotmatches.suggested. A handbook section resolves to the handbook's own ⟨5 unchanged words⟩ amend it (e.g. Mortgagee Letters) are listedseparatelyin `related` and are not the section's text. Identical copies ofonea section resolve to one register and are listed in `also_at`. A whole-handbook name returns `handbook`, an outline of its parts.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"lookup_citation result.","properties":{"also_at":{"description":"Identical copies of the section (other register ids).","items":{"type":"string"},"type":"array"},"also_at_note":{"description":"Explains also_at.","type":"string"},"candidates":{"description":"On ambiguous: the registers the citation could mean.","items":{"type":"string"},"type":"array"},"canonical_id":{"description":"Set when the register is a same-text copy of that register.","type":"string"},"citation":{"description":"The citation as given (on unparsed).","type":"string"},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"handbook":{"description":"When the citation names a whole handbook: its outline."},"hint":{"description":"On an error: the server's explanation.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"parsed":{"description":"The parse of the citation ({kind, canonical, ...})."},"register_id":{"description":"The register the citation resolves to.","type":"string"},"related":{"description":"Documents that cite or amend the section ({register_id, relation}); not its text."},"related_note":{"description":"Explains related.","type":"string"},"renumbered_from":{"description":"The old register, when the section was renumbered.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"superseded_candidates":{"description":"Candidates dropped because a current register replaces them.","items":{"type":"string"},"type":"array"},"superseded_register_id":{"description":"The register holding the prior text of this section.","type":"string"},"topics":{"description":"Topics under a structured citation."},"truncated":{"description":"The candidate scan hit its limit.","type":"boolean"}},"type":"object"}SearchFull-text search of US mortgage regulatortext.textPrefer(FannietheMae,regulator'sFreddievocabularyMac, FHA, VA, USDA, Ginnie Mae, SBA, CFPB). Inputs: `query`; optional `family` ("debt-to-incomeoneratioagency), `limit` (1-25), `currency_kind` (only sections carrying that currency signal; "any" = any signal);.commonCommon abbreviations (DTI, LTV,RSU,IRRRL, W-2, VOE, PITI,BK ...BK...) are expandedfortoyou.the regulator's terms. Each resultgivesistheone section: titleand a verbatim excerpt; match,"partial"`obligation_id`,means`canonical_citation` (thesectioncitationlacksin thewordsregulator'sinstyle,`missing_terms`or--null)ifand `excerpt`, amissingverbatimwordfragmentisnear thepointmatch,ofnot thequestion,wholethatrule.section`match`doesisnot"all_terms"answerorit."partial";ORDER:aresultspartialareresultsortedlistsbythe`rank_score`,queryhighestwordsfirst,itwithlacksnoinseparate`missing_terms`.tiersOrder:`score``rank_score`,(highest first = textmatch,score (title-weighted) x term coverage x title fit(a section whose own title names the whole query,or states it exactly, ranks higher),with superseded, pending, incorporated or expired text x0.2 (never above its replacement)and, a special program's section (`special_program`: Home Possible, HomeReady,HeritageOne,203(k), HECM...) x0.5 unless the query names theprogram. A query that IS a citation ("38 U.S.C. 3737", "M26-7 Chapter 4", "ML 2026-08") puts the cited section's own text first (`cited`); a bare handbook name ("HUD 4000.1") adds `handbook`, a map of its parts. `section_status` "deleted" marks a "Section N is deleted" stubprogram,ranked last.and `obligation_type` "note" (a statute'sstatutory source-credit and editorial notes) or "index" (a chapter heading)is not rule text:x0.2 unless the query asks fornotes/history or the chapter.them.`currency.kind``section_status` "superseded-in-partdeleted"meansmarks aMortgagee Letter already replaced SOME provisions of this text (named in the headline): quote the letter fordeleted-sectionthosestub,thisrankedtextlast.forAthequeryrest.that"modified-by":is alater issuance changes itcitation (optional now,"38mandatoryU.S.C.on3737",its"MLdate2026-08").`canonical_citation` isreturns thesection's citationcitedinsectionthefirstregulator'sandownsetsstyle`cited`;(nullawhenbareithandbookcannotnamebe("HUDderived4000.1"):cite it ratheraddsthan`handbook`,aanciteoutlinefromofmemory.its`currency_kind`parts.filters`currency`toissectionsnullwithorthatacurrencyversion/status signal(e.g. "dual-version" for FHA sectionswhoseUpdatekinds18includerevisesdual-version,"pending","revision-pending","expired"; "any" = any signal). If the titles don't fit the questionsuperseded,search again with other terms. A special program's section (HomeStyle,superseded-in-part203(k), IRRRL...) applies only to that program. Excerpts are not the full rule: answer by quoting the regulator's text verbatim with its section citation -- find_in_sectionareturnsMortgageejustLetterthereplacedparagraphssomewithprovisions,yournamedtermsin(fastest`headline`),get_obligation the whole section. A non-null `currency` is a warningmodified-by (two versions / revision pending / pending / superseded / predates the statute /aincorporatedlaterintoissuancethechangeshandbookit,/optionalexpiresuntil/itssourcemandatoryrelocateddate):tell theanduser.expired. `version` "in-force" or "update-18-optional" marksHUD's Updatethe18tworevisiontexts of an FHA section(optionalHUD'snow,Updatemandatory18onrevises (`mandatory_date`),"in-force"for thetext that governs by default;revision); `other_version` is the other text's obligation_id.An empty result: search once more in theEmptyregulator'sresultsowncarryterms`reason` (`guidance` names any shorthand to spell out). If that is also emptyempty_query,THE CORPUS DOESno_match,NOTno_match_above_threshold)ADDRESSandTHIS:maysaycarryso;`guidance`donamingnotshorthandsupplyin theanswer from your own knowledge.query.
⟨3 unchanged words⟩ ,"properties":{"currency_kind":{"description":"OnlyRestricts results to sections carrying this currencysignal, e.g. \"dual-version\", \"pending\", \"revision-pending\";signal; \"any\"for= any signal.","enum":["any"," ⟨50 unchanged words⟩
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"search_regs result.","properties":{"cited":{"description":"When the query is a citation: {citation, register_ids}."},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"handbook":{"description":"When the query names a whole handbook: its outline."},"hint":{"description":"On an error: the server's explanation.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"reason":{"description":"With empty results: empty_query, no_match or no_match_above_threshold.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"results":{"description":"Ranked sections, highest rank_score first (may be empty).","items":{"additionalProperties":{},"properties":{"also_at":{"description":"Same-text copies dropped from the list."},"authority":{"description":"The document and section title.","type":"string"},"canonical_citation":{"description":"The citation in the regulator's style (e.g. \"4000.1 II.A.5.d\", \"B3-3.3-07\"), or null.","type":["string","null"]},"currency":{"description":"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, modified-by, expired."},"excerpt":{"description":"A verbatim fragment near the match; not the whole rule.","type":"string"},"mandatory_date":{"description":"On an Update 18 revision: when it becomes mandatory.","type":"string"},"match":{"description":"all_terms or partial.","type":"string"},"missing_terms":{"description":"On partial: the query terms this section lacks.","items":{"type":"string"},"type":"array"},"obligation_id":{"description":"The obligation (section) id.","type":"string"},"obligation_type":{"description":"note or index: not rule text.","type":"string"},"other_version":{"description":"On a dual-version section: the other version's obligation_id.","type":"string"},"rank_score":{"description":"The score results are ordered by.","type":"number"},"register_id":{"description":"The register id.","type":"string"},"section":{"description":"The section title.","type":"string"},"section_status":{"description":"\"deleted\": a deleted-section stub.","type":"string"},"section_status_date":{"description":"Date of section_status.","type":"string"},"special_program":{"description":"The special program this section belongs to (ranked x0.5).","type":"string"},"version":{"description":"On a dual-version FHA section: \"in-force\" or \"update-18-optional\".","type":"string"}},"type":"object"},"type":"array"}},"type":"object"}Start aReturnsguidedonecomplianceplaybook'splaybookfullandworkflowgetinstructions, itsfullstages,instructionsthe--stageusereferencethisnameswhenand theuser asks torule-kitrunversion: theFNMAFannie Mae AI lender letter/(LL-2026-04review on)theirP&PP&Psreview, orto QC anFHA, VA or USDAloanloan-filefile.QC.ReturnsInput: theworkflowplaybookto`id`;follow,anitsunknownstages,idthereturnsreferences`unknown_playbook`towithload`valid_ids`.perPlaybookstage,toolsandaccepttheonlyrule-kitidsversion.andFollowreferencethenames,returnednoinstructionsdocumentexactly.text;Thethe user's P&Ps and loan files stay in their ownchat: never send their text to this server. Playbook tools take only ids.chat.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"start_playbook result.","properties":{"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"id":{"description":"The playbook id.","type":"string"},"instructions":{"description":"The playbook's workflow instructions."},"kit":{"description":"The rule kit ({kind, source, version, load_with})."},"load_reference_with":{"description":"How a reference is loaded, or null when there are none.","type":["string","null"]},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"privacy":{"description":"How user material is handled."},"references":{"description":"The playbook's reference names.","items":{"type":"string"},"type":"array"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"stages":{"description":"The workflow's stages."},"title":{"description":"The playbook's name.","type":"string"},"user_provides":{"description":"What the user supplies."},"valid_ids":{"description":"On unknown_playbook: the valid ids.","items":{"type":"string"},"type":"array"},"version":{"description":"The playbook's version."}},"type":"object"}CheckChecks whether a passageof text actuallyappears inthea regulator's sourcedocument. Worksdocument;onaccepts text fromANYanysource,source.notInputs:only`text`text(upthistoserver5,000returnedwords);--optionaluse`register_id` (without it, up tocheck3yourcandidateowndocumentsdraftareanswerlocatedbeforebypresentingsearch).it.`outcome`Outcomesis one of:'exact'exact (contiguous insource character for characterthe--source, quote marks and dashes as the source writes them; a line break counts as a space),;'normalized'normalized (matchesonlyaftertypographyfolding-- straight vs curlyquotequotes,and dashkindstypography,' vs " -- `typography_folded: true`; or with the`typography_folded`;source'signoring page footersremoved -- `furniture_ignored: true`;ordifferingrunningonlyheads,in`furniture_ignored`; spacing where the stored source splits or joins words,e.g. "holi days" -- `spacing_ignored: true`;`spacing_ignored`; orwithadded list markersyou added at line starts ("- ","1. ") removed -- `list_markers_ignored: true``list_markers_ignored`),;'composed'composed (every wordtraceable to source but assembledisfrominnon-contiguousthepiecessource, in source order-- legitimate for section overviews,and the outcome for a quotebutwhosefromelisionsnon-contiguousarepieces,markedas with anellipsis ('…'overview or'...'); ALWAYSancheckellipsis; `omissions`,lists the short source phrasesthat wereskipped,since a dropped 'not' changesbetweenmeaningpieces),;'not_found'not_found (no sourcesupport -- do not present this text as a quotation;support; `unsupported` lists thespans withunsupportednospans,support;and on a near miss `differences`namesgives the closest source text, the source words the text lacks and the words it adds, e.g. a dropped 'not').;Passagesnot_checked (over 5,000 wordsare refused as 'not_checked'. Pass register_id).when`coverage`youisknowtheit;shareotherwiseofupwordstofound.3`checked_against`candidatenamessourcethe documentsare located by search, named in `checked_against`checked (document, edition, retrieval date; ids in `checked_snapshot_ids`).A match also carries`matched_version`:'current', oris'superseded'current;whensuperseded (the text is aPRIORprior version of therule (with `superseded_register_id`,rule; `superseded_by`=is the current register, and dates)-- quote superseded text only as the prior version, never as current. 'update-18-optional' means the;textorisupdate-18-optional (HUD's Update 18 revision of an FHA 4000.1 section:, optionalnow, mandatoryuntilon`mandatory_date`;`mandatory_date`,`in_force_obligation_id`notis the text in force by default(`in_force_obligation_id`)-- present it as the Update 18 version.. `obligation_currency` listswarningscurrency signals on the obligation holding the text (e.g."superseded-in-part": a Mortgagee Letter replaced some provisions);. `rescinded: true` (with `rescinded_by`) meansTHISthe passage is text a later issuance removed orreplaced -- never present it as current.replaced.
before
—after
{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":{},"description":"verify_quote result.","properties":{"checked_against":{"description":"Source documents checked (document, edition, retrieval date)."},"checked_snapshot_ids":{"description":"Snapshot ids checked."},"coverage":{"description":"Share of the text's words found in the source (0 to 1).","type":"number"},"differences":{"description":"On a near miss: {closest_source, missing_from_quote, extra_in_quote}."},"elisions":{"description":"On composed: gaps (marked or not).","type":"number"},"error":{"description":"Present only on an error or refusal: not_found, ambiguous, unparsed, empty_terms, unknown_playbook, unknown_reference, offset_out_of_range, daily_capacity_reached.","type":"string"},"fallback":{"description":"On daily_capacity_reached: where the full corpus can be downloaded.","type":"string"},"furniture_ignored":{"description":"A page footer or running head was ignored.","type":"boolean"},"guidance":{"description":"On a refusal or empty search: the server's explanation.","type":"string"},"hint":{"description":"On an error: the server's explanation.","type":"string"},"limit":{"description":"On not_checked: the word limit.","type":"number"},"list_markers_ignored":{"description":"Added list markers were ignored.","type":"boolean"},"mandatory_date":{"description":"On an Update 18 revision: when it becomes mandatory.","type":"string"},"matched_version":{"description":"current, superseded (a prior version) or update-18-optional.","type":"string"},"note":{"description":"A note on this result.","type":"string"},"notice":{"description":"Terms notice: research use only, not legal advice.","type":"string"},"omissions":{"description":"On composed: short source phrases skipped between pieces."},"outcome":{"description":"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_checked: over 5,000 words.","enum":["exact","normalized","composed","not_found","not_checked"],"type":"string"},"reason":{"description":"On not_checked: too_long.","type":"string"},"register_id":{"description":"Echoed on not_found.","type":"string"},"resets":{"description":"On daily_capacity_reached: when capacity resets (00:00 UTC).","type":"string"},"segments":{"description":"On composed: source pieces the text is assembled from.","type":"number"},"spacing_ignored":{"description":"Only spacing differs.","type":"boolean"},"superseded_by":{"description":"On superseded: the current register.","type":["string","null"]},"superseded_register_id":{"description":"On superseded: the register holding the prior text.","type":"string"},"typography_folded":{"description":"Matched after folding quotes and dashes.","type":"boolean"},"unsupported":{"description":"On not_found: spans with no source support."},"words":{"description":"On not_checked: the word count.","type":"number"}},"type":"object"}