项目简介

该项目是一个金融风险与合规管理的智能体系统,结合了 Agent-to-Agent (A2A) 协议和 Model Context Protocol (MCP) 服务器架构。其核心是通过MCP服务器提供对法规文档的 Retrieval-Augmented Generation (RAG) 能力和对大语言模型的访问,使多个协作智能体能够自动进行合规性分析、生成风险报告,并通过用户界面展示结果。

主要功能点

  • 法规文档检索 (RAG): MCP服务器负责索引法规PDF文件,并根据查询进行高效的语义搜索,提取相关上下文。
  • 大语言模型 (LLM) 集成: MCP服务器提供接口供智能体调用LLM生成风险评估和合规性分析结果。
  • 多智能体协作: 不同的智能体(如档案检查、风险报告、合规查询)通过A2A协议交互,共同完成分析任务。
  • 交互式用户界面: 提供一个Streamlit界面,方便用户上传法规、选择客户、提交查询并查看详细的合规报告和引用来源。
  • 风险评估: 系统能够根据客户信息和查询,评估潜在风险等级。
  • 引用溯源: 报告结果包含来自法规文档的引用片段,增强透明度和可信度。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/Pyligent/A2A-MCP-Compilance-Check.git
    cd A2A-MCP-Compilance-Check
  2. 安装依赖: 确保你已安装 Python 3.8+,然后安装所需库。
    pip install -r requirements.txt
  3. 准备法规文件: 将你的法规PDF文件放入项目的 'data/' 目录下。仓库已提供示例文件。
  4. 准备客户档案: 将客户信息JSON文件放入项目的 'client/' 目录下。仓库已提供示例文件。
  5. 设置环境变量: 配置必要的API密钥,例如 OpenAI API Key。可以在运行命令前设置,或者在项目根目录创建 '.env' 文件并添加 'OPENAI_API_KEY=your-openai-api-key'。

服务器配置

这个项目中的MCP服务器是一个独立运行的后端服务。对于需要连接到此MCP服务器的客户端(例如 MCP 客户端库、其他应用程序或本项目的智能体),其配置信息通常需要包含服务器的启动方式和连接地址。

根据项目实现,启动MCP服务器的命令是 'python mcp_server.py',它默认运行在 'localhost:5000'。

假设您使用一个标准的MCP客户端库来连接,其配置方式(通常是 JSON 格式)可能类似如下,客户端会根据此信息来启动或查找并连接到MCP服务器:

{
  "name": "FinancialComplianceMCP", // 服务器名称,用于标识
  "command": "python",             // 执行服务器的命令
  "args": ["mcp_server.py"],       // 传递给命令的参数
  "cwd": "/path/to/your/A2A-MCP-Compilance-Check", // 服务器的运行目录(需要替换为你的实际路径)
  "env": {                         // 运行服务器所需的环境变量
    "OPENAI_API_KEY": "your-api-key" // 例如API密钥,需要替换
  },
  "transport": "http",             // 通信协议类型,本项目使用HTTP
  "port": 5000                     // 服务器监听的端口
}

请注意,实际的MCP客户端库会读取这样的配置来管理服务器进程和建立连接。在本项目的实现中,客户端(Streamlit UI 和 Agents)直接硬编码了服务器的HTTP地址进行通信。

基本使用方法

  1. 启动MCP服务器: 打开一个终端,运行:
    python mcp_server.py
    等待服务器启动,会看到日志输出。
  2. 启动智能体: 打开另外三个终端,分别运行:
    python agents/agent1_profile_checker.py
    python agents/agent2_risk_reporter.py
    python agents/agent3_compliance_querier.py
    等待所有智能体启动。
  3. 运行用户界面: 打开第四个终端,运行:
    streamlit run app.py
  4. 访问应用: 在浏览器中打开 http://localhost:8501
  5. 使用界面:
    • 在侧边栏选择一个客户档案。
    • 在侧边栏可以配置RAG参数(如分块大小)。
    • 在左侧面板查看当前法规文件状态,如果未索引,点击“Process Regulation Files”按钮进行索引。
    • 在右侧面板的输入框中输入你的合规性查询。
    • 点击“Check Compliance”按钮,系统将调用智能体和MCP服务器进行分析。
    • 结果(风险评估、合规结论、上下文和引用)将显示在右侧面板。

信息

分类

商业系统