Skip to main content
Glama
confersolutions

MCP Mortgage Server

MCP Mortgage Server

A Model Context Protocol (MCP) server for parsing and analyzing mortgage documents (Loan Estimates & Closing Disclosures) using MISMO standards.

Version License: MIT MCP Protocol Website


๐ŸŽฏ What is This?

This is a Model Context Protocol (MCP) server that allows AI assistants (like Claude Desktop, OpenAI Agents, etc.) to parse and analyze mortgage documents. It converts Loan Estimates (LE) and Closing Disclosures (CD) into structured MISMO-compliant JSON, and checks for TRID compliance violations.

Key Features

โœ… MCP-Compliant - Works natively with Claude Desktop, OpenAI Agents SDK, and other MCP clients โœ… Secure - URL validation, SSRF prevention, file size limits, timeout protection โœ… Type-Safe - Pydantic models ensure data validation โœ… TRID Compliance - Automated tolerance checking (zero-tolerance, 10% tolerance) โœ… Resources - Access to MISMO schemas and mortgage glossary โœ… Prompts - Pre-built workflows for loan analysis


Related MCP server: Cal MCP Server

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.10 or higher

  • Claude Desktop (recommended) or another MCP-compatible client

Installation

  1. Clone the repository:

    git clone https://github.com/confersolutions/mcp-mortgage-server.git
    cd mcp-mortgage-server
  2. Install dependencies:

    pip install -r requirements.txt
  3. Test the server:

    python test_server.py

    You should see:

    โœ“ All tests passed!
    Server is ready for MCP client connections!

Usage with Claude Desktop

  1. Locate your Claude Desktop config file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json

    • Linux: ~/.config/Claude/claude_desktop_config.json

  2. Add this server:

    {
      "mcpServers": {
        "mortgage": {
          "command": "python",
          "args": ["/full/path/to/mcp-mortgage-server/server.py"]
        }
      }
    }
  3. Restart Claude Desktop

  4. Use it in Claude:

    Can you parse this loan estimate and summarize the key terms?
    URL: https://storage.googleapis.com/mortgage-docs/sample-le.pdf

    Claude will automatically call the appropriate MCP tool and parse the document.


๐Ÿ› ๏ธ Available Tools

1. hello

Simple connectivity test.

Input: { "name": "World" }
Output: "Hello, World! MCP server is working correctly."

2. parse_loan_estimate

Parse a Loan Estimate PDF into MISMO-compliant JSON.

Input:

{
  "pdf_url": "https://storage.googleapis.com/mortgage-docs/le-12345.pdf"
}

Output:

{
  "loan_amount": 300000.0,
  "interest_rate": 6.5,
  "apr": 6.73,
  "monthly_payment": 1896.20,
  "total_closing_costs": 12000.00,
  "origination_charges": 1500.00,
  ...
}

Security: Only HTTPS URLs from whitelisted domains. 10MB size limit, 30s timeout.

3. parse_closing_disclosure

Parse a Closing Disclosure PDF into MISMO-compliant JSON.

Similar to parse_loan_estimate but for final closing documents.

4. compare_le_cd

Compare Loan Estimate vs Closing Disclosure for TRID compliance.

Input:

{
  "loan_estimate_url": "https://storage.googleapis.com/docs/le.pdf",
  "closing_disclosure_url": "https://storage.googleapis.com/docs/cd.pdf"
}

Output:

{
  "is_compliant": false,
  "violations": [
    {
      "type": "zero_tolerance",
      "fee": "Origination Charges",
      "le_amount": 1500.00,
      "cd_amount": 1600.00,
      "amount_over": 100.00,
      "description": "Origination Charges increased by $100.00"
    }
  ],
  "summary": "โœ— NOT COMPLIANT: 1 violation(s) found"
}

๐Ÿ“š Resources

The server provides read-only resources:

  • mortgage://schemas/mismo-le - MISMO 3.4 Loan Estimate schema

  • mortgage://schemas/mismo-cd - MISMO 3.4 Closing Disclosure schema

  • mortgage://glossary/terms - Mortgage terminology definitions


๐Ÿ’ก Prompts

Pre-built workflows:

analyze_loan_estimate

Arguments: { "analysis_type": "comprehensive" }

Types: quick, comprehensive, compliance


๐Ÿ”’ Security

Built-in Protections

  • โœ… HTTPS only - HTTP URLs are rejected

  • โœ… Domain whitelist - Only approved storage domains (prevents SSRF attacks)

  • โœ… File size limits - 10MB maximum

  • โœ… Timeout protection - 30-second download timeout

  • โœ… PDF validation - Checks magic bytes

  • โœ… Type safety - All inputs/outputs validated with Pydantic

Allowed Domains

By default:

  • storage.googleapis.com

  • s3.amazonaws.com

  • mortgage-docs.confer.ai

To add more, set ALLOWED_DOMAINS environment variable.


๐Ÿงช Development

Run Tests

# Quick test suite
python test_server.py

# Full pytest suite
pytest tests/ -v

Test with MCP Inspector

npm install -g @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector python server.py

๐Ÿ“ˆ Roadmap

โœ… v2.0.0 (Current)

  • Modern MCP protocol implementation

  • Basic tool definitions with stub data

  • Security controls

  • Resources and prompts

  • Type-safe data models

๐Ÿšง v2.1.0 (In Progress)

  • Real PDF parsing (AI-powered or PyMuPDF)

  • Comprehensive test suite

  • Performance optimizations

๐Ÿ”ฎ v2.2.0 (Planned)

  • Streaming support

  • Progress notifications

  • Background task queue

  • Additional mortgage analysis tools


๐Ÿ”„ Migrating from v0.1.0

If upgrading from the old REST API version:

Key Changes:

  • โŒ Removed FastAPI/HTTP REST API

  • โœ… Added MCP protocol (JSON-RPC 2.0 via stdio)

  • โœ… Removed API key authentication

  • โœ… Added type-safe tool definitions

  • โœ… Added resources and prompts


๐Ÿ“– Documentation


๐Ÿค Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.


๐Ÿ“„ License

MIT License - see LICENSE file for details.


๐Ÿข About

Maintained by Confer Solutions

Contact: info@confersolutions.ai


โญ Changelog

v2.0.0 (2025-11-16) - Modern MCP Protocol

Major Rewrite: Complete architectural modernization to MCP specification 2025-03-26.

Added:

  • MCP protocol support (JSON-RPC 2.0 via stdio)

  • Four tools: hello, parse_loan_estimate, parse_closing_disclosure, compare_le_cd

  • Resources: MISMO schemas, mortgage glossary

  • Prompts: analyze_loan_estimate

  • Security: URL validation, SSRF prevention, size limits

  • Type safety: Pydantic models

Removed:

  • FastAPI/HTTP REST API

  • API key authentication

  • Rate limiting

  • Static JSON configuration

Changed:

  • Server: FastAPI โ†’ Official MCP SDK

  • Transport: HTTP โ†’ stdio

  • Dependencies: 15+ โ†’ 6 core packages

v0.1.0 (2024-04-12) - Initial Release

Deprecated: REST API version. Use v2.0.0+.


Status: โœ… Active Development | ๐Ÿ—๏ธ Beta | ๐Ÿ“ฆ Production-Ready Core

Last Updated: November 16, 2025

A
license - permissive license
-
quality - not tested
D
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
โ€“Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/confersolutions/mcp-mortgage-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server