MCP Server (Mortgage Comparison Platform)

MCP Server (Mortgage Comparison Platform)

用于将贷款估算 (LE) 和结算单 (CD) PDF 解析为符合 MISMO 标准的 JSON 格式,并使用 LLM 增强上下文信息的规范 MCP 服务器。专为 AI 驱动的抵押贷款自动化、合规性和决策而构建。

confersolutions

研究与数据
访问服务器

README

MCP服务器 (抵押贷款比较平台)

一个基于FastAPI的服务器,通过标准化的API提供抵押贷款文档解析和比较工具。该服务器旨在轻松地与各种AI框架集成,包括CrewAI、AutoGen和LangChain。

目前实现了一个基本的 "hello" 工具作为概念验证,抵押贷款文档解析工具即将推出。

版本 许可证: MIT 网站

状态

这是一个beta版本 (v0.1.0),提供:

  • 具有安全功能的核心服务器基础设施
  • 用于测试框架集成的基本 "hello" 工具
  • 与CrewAI、AutoGen和LangChain的示例集成

未来的版本将添加抵押贷款文档解析和比较工具。

特性

  • 具有生产就绪功能的FastAPI服务器:
    • API密钥认证
    • 速率限制支持
    • CORS中间件配置
  • 用于AI代理的框架集成:
    • CrewAI
    • AutoGen
    • LangChain
  • 用于添加抵押贷款解析工具的可扩展架构
  • 开源,保证透明度和社区贡献

快速开始

  1. 克隆存储库:
    git clone https://github.com/confersolutions/mcp-mortgage-server.git
    cd mcp-mortgage-server
    

路线图

  • ✅ 具有安全和速率限制的核心服务器基础设施
  • ✅ 框架集成 (CrewAI, AutoGen, LangChain)
  • ✅ 基本工具实现 ("hello" 端点)
  • 🚧 贷款估算 (LE) 解析为MISMO格式
  • 🚧 结算单 (CD) 解析
  • 🚧 抵押贷款比较工具
  • 🚧 额外的抵押贷款文档分析功能

安装

  1. 克隆存储库
  2. 创建一个虚拟环境:
    python -m venv .venv
    source .venv/bin/activate  # 在Windows上: .venv\Scripts\activate
    
  3. 安装依赖项:
    pip install fastapi uvicorn slowapi python-dotenv
    pip install crewai autogen langchain langchain-openai
    

配置

在根目录中创建一个 .env 文件,包含以下变量:

API_KEY=your_api_key_here
RATE_LIMIT_PER_MINUTE=120
ALLOWED_ORIGINS=http://localhost:3000
HOST=0.0.0.0
PORT=8001
WORKERS=1

运行服务器

python server.py

服务器默认将在 http://localhost:8001 上启动。

API 端点

健康检查

GET /health
Response: {"status": "healthy"}

列出可用工具

GET /tools
Headers: X-API-Key: your_api_key_here
Response: 可用工具及其配置的列表

调用工具

POST /call
Headers: X-API-Key: your_api_key_here
Body: {
    "tool": "hello",
    "input": {
        "name": "World"  // 可选
    }
}
Response: {
    "output": "Hello, World!"
}

框架集成示例

请参阅 examples/test_all_integrations.py,了解如何将服务器与以下框架一起使用的示例:

  • CrewAI
  • AutoGen
  • LangChain

CrewAI 示例

from crewai import Agent, Task, Crew
from mcp_toolkit import MCPToolkitCrewAI

toolkit = MCPToolkitCrewAI()
tools = await toolkit.get_tools()

agent = Agent(
    role="Greeter",
    goal="Say hello to the user",
    tools=tools
)

task = Task(
    description="Say hello to the user",
    agent=agent
)

crew = Crew(
    agents=[agent],
    tasks=[task]
)

result = await crew.kickoff()

AutoGen 示例

from autogen import AssistantAgent, UserProxyAgent
from mcp_toolkit import MCPToolkitAutoGen

toolkit = MCPToolkitAutoGen()
tools = await toolkit.get_tools()

assistant = AssistantAgent(
    name="assistant",
    llm_config={"tools": tools}
)

user_proxy = UserProxyAgent(
    name="user_proxy",
    code_execution_config={"use_docker": False}
)

await user_proxy.initiate_chat(assistant, message="Please say hello to Alice")

LangChain 示例

from langchain.agents import Tool, AgentExecutor, create_react_agent
from langchain_openai import ChatOpenAI
from mcp_toolkit import MCPToolkitLangChain

toolkit = MCPToolkitLangChain()
tools = [
    Tool(
        name="hello",
        func=lambda x: asyncio.get_event_loop().run_until_complete(toolkit.hello(name=x)),
        description="A tool that says hello to someone",
        return_direct=True
    )
]

llm = ChatOpenAI(temperature=0)
agent = create_react_agent(llm, tools, prompt)
agent_executor = AgentExecutor(agent=agent, tools=tools)

result = await agent_executor.ainvoke({"input": "Please say hello to Bob"})

速率限制

服务器使用 slowapi 实现速率限制。 默认情况下,每个IP地址每分钟限制为120个请求。 可以使用 RATE_LIMIT_PER_MINUTE 环境变量配置此设置。

安全

  • /health 端点外,所有端点都需要API密钥身份验证
  • CORS已配置为允许特定的来源(通过 ALLOWED_ORIGINS 环境变量设置)
  • 所有异常都会被捕获并返回适当的错误消息

贡献

欢迎提出问题或提交拉取请求以进行改进。

关于

该项目由 Confer Solutions 维护。 如有疑问或需要支持,请通过 info@confersolutions.ai 与我们联系。

许可证

MIT许可证 - 有关详细信息,请参见 LICENSE 文件。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python