项目简介

本项目是一个基于Model Context Protocol (MCP) 构建的服务器,旨在为LLM应用提供来自Screener.in的金融市场数据。它允许用户通过标准化的MCP接口,获取上市公司信息、财务比率,并下载财务报告,从而支持LLM进行更深入的金融分析和决策。

主要功能点

  • 资源 (Resources):
    • 提供公司详情查询功能,包括公司名称、行业板块、市值等基本信息。
    • 支持获取公司详细信息的同时下载财务报告。
  • 工具 (Tools):
    • 提供财务比率查询工具,可以获取公司的市盈率、负债权益比率、净资产收益率等关键财务指标。
    • 提供财务报告下载工具,允许用户下载指定公司的财务报告文件。
  • Prompt 模板 (Prompts):
    • 内置财务分析 Prompt 模板,方便用户快速生成分析公司财务状况的指令。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/minhaj3/screener.in-MCP-server.git
    cd screener.in-MCP-server
  2. 安装依赖:
    pip install -r requirements.txt

服务器配置

MCP客户端需要配置以下信息以连接到此MCP服务器:

{
  "serverName": "ScreenerServer",
  "command": "python",
  "args": ["server.py"]
}

配置参数说明:

  • 'serverName': 服务器名称,这里设置为 "ScreenerServer",与代码中 'FastMCP("Screener Server")' 的名称保持一致。
  • 'command': 运行服务器的命令,这里使用 'python'。
  • 'args': 命令参数,指定服务器启动脚本为 'server.py'。

注意:

  • 确保您的Python环境已安装所需依赖 (通过 'pip install -r requirements.txt' 安装)。
  • 运行 'server.py' 前,可能需要根据 'server.py' 文件中的代码配置 Screener.in 的 API 访问信息(如果需要)。但根据目前的代码,似乎直接使用了 'httpx' 库进行网页抓取,可能无需额外API Key配置,但可能需要关注 'server.py' 文件中 'SCREENER_CSRF_TOKEN', 'SCREENER_SESSION_ID' 等变量的设置,如果需要登录Screener.in才能访问数据,则可能需要配置这些信息。

基本使用方法

  1. 启动服务器: 在仓库根目录下运行 'python server.py' 启动 MCP 服务器。

  2. 使用 MCP 客户端连接服务器: 配置您的 MCP 客户端,使用上述提供的服务器配置信息连接到 'ScreenerServer'。

  3. 通过 MCP 客户端调用资源、工具和 Prompt:

    • 资源示例: 使用资源 URI 'company://{company_name}' 获取公司详情,例如 'company://RELIANCE'。
    • 工具示例:
      • 调用 'fetch_ratios' 工具并传入 'company_name' 参数,例如 'fetch_ratios(company_name="TCS")' 获取公司财务比率。
      • 调用 'download_report' 工具并传入 'company_name' 参数下载财务报告。
    • Prompt 示例: 使用 'analyze_financials' Prompt 模板,并传入 'company_name' 参数,例如 'analyze_financials(company_name="INFY")',以获取分析公司财务状况的 Prompt 指令。

请参考 MCP 客户端的文档,了解如何发送 MCP 请求以及如何处理服务器返回的 JSON-RPC 响应。

信息

分类

网页与API