Skip to main content
Glama
boyzhang666

Data Analysis MCP Server

by boyzhang666

数据分析MCP工具集

专业的工业数据分析工具集,基于FastAPI-MCP架构,提供多种统计分析方法,适用于时间序列分析、数据质量检查和统计建模等场景。

🚀 功能特性

核心分析工具

  • 相关性分析: 支持Pearson、Spearman、Kendall相关系数计算

  • 平稳性检验: 提供ADF、PP、KPSS时间序列平稳性检验

  • 分布分析: 数据分布特征和趋势模式分析

  • 异常值检测: 多种异常值检测方法和综合评估

  • 因果关系分析: 格兰杰因果检验、互相关分析等(支持两变量和多变量分析)

  • 时序相似度分析: DTW动态时间规整、滑动窗口分析等

  • 时间序列预测: 多项式趋势预测、指数平滑预测(专为分钟级数据优化)

技术特点

  • 基于FastAPI-MCP架构,支持AI工具调用

  • RESTful API接口,易于集成

  • 完整的数据验证和错误处理

  • 详细的分析结果和建议

  • 支持多种数据格式和参数配置

📁 项目结构

data_analysis_mcp/
├── config/                           # 配置文件目录
│   ├── __init__.py
│   ├── config.json                  # 配置文件
│   └── config.py                    # 配置加载模块
├── routers/                         # 路由模块目录
│   ├── two_correlation_calculate.py        # 两变量相关性分析
│   ├── single_statistic_calculate.py       # 单变量平稳性检验
│   ├── single_distribution_analysis.py     # 单变量分布分析
│   ├── single_outlier_detection.py         # 单变量异常值检测
│   ├── two_causal_analysis.py              # 两变量因果关系分析
│   ├── multi_causal_analysis.py            # 多变量因果关系分析
│   ├── two_similarity_analysis.py          # 两变量时序相似度分析
│   ├── single_time_series_forecast.py      # 单变量时间序列预测
│   └── utils/                              # 工具函数目录
├── log/                             # 日志文件目录
├── doc/                             # 文档目录
├── main.py                          # 应用启动文件
├── requirements.txt                 # 依赖包列表
└── README.md                        # 项目说明文档

🛠️ 安装和使用

环境要求

  • Python 3.8+

  • FastAPI

  • NumPy, SciPy, Pandas

  • Statsmodels

安装依赖

pip install -r requirements.txt

启动服务

python main.py

服务将在 http://localhost:6003 启动。

API文档

启动服务后,访问以下地址查看API文档:

  • Swagger UI: http://localhost:6003/docs

  • ReDoc: http://localhost:6003/redoc

MCP客户端配置

选择可流式传输的 HTTP (streamableHttp):

  • URL: http://127.0.0.1:6003/mcp

📊 API接口说明

1. 两变量相关性分析 (/api/correlation)

计算两组数据间的相关系数,支持Pearson、Spearman、Kendall相关性度量方法。

请求示例:

{
    "data1": [1.0, 2.0, 3.0, 4.0, 5.0],
    "data2": [2.0, 4.0, 6.0, 8.0, 10.0],
    "method": "pearson"
}

2. 单变量平稳性检验 (/api/statistic_calculate)

执行时间序列平稳性检验,支持ADF、PP、KPSS检验方法。

请求示例:

{
    "data": [1.2, 2.3, 1.8, 4.5, 2.1, 3.2, 1.9, 2.8, 3.5, 6.1],
    "test_type": "adf",
    "significance_level": 0.05
}

3. 单变量分布分析 (/api/distribution_analysis)

分析单个变量的分布特征和趋势模式。

请求示例:

{
    "data": [1.2, 2.3, 1.8, 4.5, 2.1, 3.2, 1.9, 2.8, 3.5, 6.1]
}

4. 单变量异常值检测 (/api/outlier_detection)

使用多种方法检测单个变量数据中的异常值。

请求示例:

{
    "data": [1.2, 2.3, 1.8, 4.5, 2.1, 3.2, 1.9, 2.8, 3.5, 6.1, 15.0],
    "method": "iqr"
}

5. 两变量因果关系分析 (/api/causal_analysis)

分析两个变量间的因果关系,支持格兰杰因果检验等方法。

请求示例:

{
    "data1": [1.2, 2.3, 1.8, 4.5, 2.1, 3.2, 1.9, 2.8, 3.5, 6.1],
    "data2": [2.1, 3.2, 2.5, 5.1, 2.8, 4.1, 2.6, 3.5, 4.2, 6.8],
    "method": "granger",
    "max_lag": 3
}

6. 多变量因果关系分析 (/api/multi_causal_analysis)

分析多个测点之间的因果关系网络,识别影响关系。

请求示例:

{
    "data": {
        "temperature": [20.1, 20.5, 21.0, 21.2, 21.8, 22.0, 21.5, 21.0, 20.8, 20.3],
        "pressure": [1.01, 1.02, 1.05, 1.08, 1.12, 1.15, 1.10, 1.06, 1.03, 1.01],
        "flow_rate": [10.2, 10.8, 11.5, 12.0, 12.8, 13.2, 12.5, 11.8, 11.0, 10.5]
    },
    "method": "granger"
}

7. 两变量时序相似度分析 (/api/similarity_analysis)

分析两个时间序列的相似度和最佳匹配区间。

请求示例:

{
    "data1": [1.2, 2.3, 1.8, 4.5, 2.1, 3.2, 1.9, 2.8, 3.5, 6.1],
    "data2": [1.5, 2.1, 2.0, 4.2, 2.3, 3.0, 2.1, 2.9, 3.3, 5.8],
    "window_size": 5,
    "normalize": true
}

8. 单变量时间序列预测 (/api/time_series_forecast)

对单个指标的历史数据进行未来预测,专为分钟级数据优化。

请求示例:

{
    "data": [10, 11, 12, 13, 14],
    "forecast_periods": 3,
    "method": "polynomial_trend"
}

🔧 配置说明

配置文件 (config/config.json)

{
    "server": {
        "host": "0.0.0.0",
        "port": 6003
    },
    "logging": {
        "level": "INFO",
        "max_bytes": 3145728,
        "backup_count": 1
    }
}

📝 开发说明

添加新的分析工具

  1. routers/ 目录下创建新的路由文件

  2. 定义请求和响应模型

  3. 实现分析逻辑

  4. main.py 中注册路由

  5. 更新MCP配置中的 include_operations

代码规范

  • 使用Pydantic进行数据验证

  • 添加详细的API文档字符串

  • 实现完整的错误处理

  • 添加日志记录

  • 编写单元测试

📈 应用场景

工业应用

  • 设备状态监控和异常检测

  • 过程参数相关性分析

  • 生产数据质量评估

  • 预测模型特征工程

数据科学

  • 探索性数据分析(EDA)

  • 时间序列分析

  • 统计建模预处理

  • 数据质量评估

🤝 贡献指南

  1. Fork 项目

  2. 创建特性分支 (git checkout -b feature/AmazingFeature)

  3. 提交更改 (git commit -m 'Add some AmazingFeature')

  4. 推送到分支 (git push origin feature/AmazingFeature)

  5. 打开 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

📞 联系方式

如有问题或建议,请通过以下方式联系:

  • 提交 Issue

  • 发送邮件

    • 邮箱:[zhangboy666@gmail.com]

  • 项目讨论区


版本: v1.0.0
最后更新: 2025年9月

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/boyzhang666/data-analysys-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server