项目简介
本项目是一个基于 Model Context Protocol (MCP) 实现的服务器端应用,专注于股票交易数据的分析。它通过连接外部股票API和MongoDB数据库,抓取、存储并分析股票的交易量和交易额分布,旨在识别在特定价格水平上具有显著交易活动的“量价墙”或其他重要价格区间。
主要功能点
- 数据抓取: 从配置的股票API获取最新的订单簿(买卖盘)数据和历史成交明细。
- 数据存储: 将抓取到的订单簿和成交数据存储到MongoDB数据库中,方便后续分析和历史回溯。
- 量价分析: 对存储的成交数据进行深度分析,统计不同价格区间的买卖交易量和交易额。
- 识别关键价格: 根据量价分析结果,自动识别出交易活动最活跃、形成“量价墙”的关键价格水平。
- 提供分析结果: 通过MCP协议,将分析结果(包括关键价格水平的详细量价信息、市场状态、交易总结等)提供给支持MCP协议的LLM客户端或其他应用程序。
- 支持多种交易时段: 能够区分正常交易时间和盘后交易的数据,并进行相应的分析。
安装步骤
- 确保您已安装 Node.js 和 npm。
- 克隆或下载本仓库代码。
- 在项目根目录下打开终端。
- 运行以下命令安装项目依赖:
npm install
服务器配置
本MCP服务器需要外部配置才能正确运行,主要通过 '.env' 文件进行设置。在启动服务器前,您需要创建或修改项目根目录下的 '.env' 文件,并提供以下必要的配置信息:
- 'API_BASE_URL': 股票数据API的基础URL。
- 'MONGO_HOST', 'MONGO_PORT', 'MONGO_DATABASE': MongoDB数据库的连接信息。
- 可选的MongoDB认证信息 ('MONGO_USER', 'MONGO_PASSWORD', 'MONGO_AUTH_SOURCE', 'MONGO_AUTH_MECHANISM')。
- 'TIMEZONE': 用于时间处理的时区,例如 'GMT+7'。
- 'PAGE_SIZE', 'TRADES_TO_FETCH', 'DAYS_TO_FETCH': 数据抓取和分析相关的参数。
- 'TRANSPORT_TYPE': 服务器与客户端通信的传输协议,支持 'stdio' (标准输入输出) 或 'sse' (Server-Sent Events)。
- 'PORT': 如果使用 'sse' 传输协议,指定服务器监听的端口。
对于需要连接本MCP服务器的MCP客户端,通常需要配置服务器的启动方式。本服务器的名称为 "Volume Wall Detector MCP"。启动命令通常是 'npm start'。客户端配置中需要指定运行的命令 (command) 和参数 (args),例如:
- 'command': 'npm'
- 'args': '["start"]'
客户端在启动时会执行这个命令来启动MCP服务器进程,并通过配置的传输协议与之建立通信。
基本使用方法
配置好 '.env' 文件并安装完依赖后,可以在项目根目录下使用以下命令启动MCP服务器:
npm start
或者在开发模式下启动:
npm run dev
服务器启动后,即可通过配置的传输协议(stdio或sse)与支持MCP协议的客户端进行通信,调用服务器提供的工具(如 'fetch-order-book', 'fetch-trades', 'analyze-stock')来获取股票数据和分析结果。
信息
分类
商业系统