监管文档处理服务

该项目包含三个模型上下文协议(MCP)服务器,用于从ESMA和CSRC获取、总结和比较监管文档。

  • by heithemkacem
  • HTML
  • 本地部署
  • 更新于
在 GitHub 查看 heithemkacem/test-mcp-server

使用说明

监管文件MCP服务器

该项目由三个模型上下文协议(MCP)服务器组成,旨在获取、汇总和比较ESMA和CSRC的监管文件。

组件

  1. ESMA MCP服务器 (端口8001)

    • 从欧洲证券和市场管理局(ESMA)获取文件
    • 处理MiFID II、MiFIR、招股说明书条例、MAR和MiCA等文件
    • 位于 esma_mcp/
  2. 中国证监会MCP服务器 (端口8002)

    • 从中国证监会获取文件
    • 处理证券法和其他监管文件
    • 位于 csrc_mcp/
  3. MCP服务器常用工具 (端口8003)

    • 提供文档摘要和比较功能
    • 与ESMA和CSRC的文件一起工作
    • 位于 common_tools_mcp/

安装

每个服务器都有自己的需求文件。要安装所有依赖项,请执行以下操作:

# Install ESMA server dependencies
pip install -r esma_mcp/requirements.txt

# Install CSRC server dependencies
pip install -r csrc_mcp/requirements.txt

# Install Common Tools server dependencies
pip install -r common_tools_mcp/requirements.txt

运行服务器

您可以使用提供的脚本一次运行所有服务器:

./start_servers.sh

或者单独运行它们:

# Run ESMA server
python esma_mcp/src/esma_server.py

# Run CSRC server
python csrc_mcp/src/csrc_server.py

# Run Common Tools server
python common_tools_mcp/src/common_tools_server.py

测试

要测试所有服务器,请执行以下操作:

python test.py

环境变量

可以设置以下环境变量:

  • ESMA_MCP_PORT (默认值:8001)
  • CSRC_MCP_PORT (默认值:8002)
  • COMMON_TOOLS_MCP_PORT (默认值:8003)
  • ESMA_MCP_URL (默认值:http://localhost:8001/sse)
  • CSRC_MCP_URL (默认值:http://localhost:8002/sse)
  • COMMON_TOOLS_MCP_URL (默认值:http://localhost:8003/sse)

您可以在 .env 文件。

目录结构

.
├── esma_mcp/
│   ├── requirements.txt
│   └── src/
│       └── esma_server.py
├── csrc_mcp/
│   ├── requirements.txt
│   └── src/
│       └── csrc_server.py
├── common_tools_mcp/
│   ├── requirements.txt
│   └── src/
│       └── common_tools_server.py
├── regulatory_docs/
│   ├── esma/
│   │   ├── raw/
│   │   ├── processed/
│   │   ├── summaries/
│   │   └── comparisons/
│   └── csrc/
│       ├── raw/
│       ├── processed/
│       ├── summaries/
│       └── comparisons/
├── start_servers.sh
└── test.py

可用工具

ESMA服务器工具

  • fetch_esma_documents:从ESMA网站获取文件
  • list_local_documents:列出本地存储的ESMA文件

CSRC服务器工具

  • fetch_csrc_documents:从中国证监会网站获取文件
  • list_local_documents:列出本地存储的中国证监会文件

通用工具服务器

  • summarize_documents:为下载的文档生成摘要
  • compare_documents:比较监管机构之间或监管机构内部的文件

示例用法

from mcp import ClientSession
from mcp.client.sse import sse_client

async with sse_client(url="http://localhost:8001/sse") as streams:
    async with ClientSession(*streams) as session:
        await session.initialize()

        # Fetch MiFID II documents from ESMA
        result = await session.call_tool(
            "fetch_esma_documents",
            arguments={"document_types": ["MiFID II"]}
        )