mcpField
M
MCP-Server for Data Analysis

MCP-Server for Data Analysis

本地服务
github.com/LindseyyyLi数据与分析079 周前更新

关于 MCP-Server for Data Analysis

这是一个基于 FastMCP 的 Excel 数据分析 MCP 服务,面向需要通过 MCP 客户端检查和分析桌面表格的用户。它提供描述性统计,并可从表格生成多种图表。

主要功能

  1. 01列出桌面上的 Excel 文件
  2. 02读取工作表信息和数据预览
  3. 03计算描述性统计与相关矩阵
  4. 04生成六类图表

适用场景

  1. 01检查 Excel 文件的列类型与前五行
  2. 02汇总数值、类别和日期列
  3. 03从表格数据生成统计图表

MCP 相关

服务通过 FastMCP 将 Excel 文件读取、分析和绘图能力作为工具提供给 MCP 客户端;图表以图像对象返回。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

用于数据分析的 MCP-Server

此服务主要侧重于工具,也包含一些资源和提示词的演示。FastMCP 用于定义和运行服务,以及将每个工具作为端点公开。

功能

  • 从桌面读取 Excel 文件
  • 执行描述性分析
  • 创建图表(例如,条形图、饼图、折线图、散点图、直方图和箱线图)

工具

列出 Excel 文件

fileslist_excel_files():扫描桌面上的 .xlsx 和 .xls 文件,并返回文件名列表。

读取 Excel 文件

read_excel_file(filename, sheet_name=None):从桌面读取指定的 Excel 文件。如果未提供 sheet_name,则默认读取第一个工作表。返回行数、列数、前 5 行预览和数据类型等基本信息。

分析 Excel 文件

analyze_excel_data(filename, sheet_name=None):计算数值列、类别列和日期列的描述性统计数据。适用时,还会计算数值列的相关矩阵。

生成图表

以下每个工具都会读取 Excel 文件,并使用 Matplotlib 生成图表。图表将以 Image 对象(内存中的 PNG 数据)的形式返回,之后可由与 MCP 服务交互的任何客户端处理。

create_bar_chart(filename, x_column, y_column, sheet_name=None, title=None, limit=10)

create_pie_chart(filename, labels_column, values_column, sheet_name=None, title=None, limit=8)

create_line_chart(filename, x_column, y_columns, sheet_name=None, title=None)

create_scatter_plot(filename, x_column, y_column, color_column=None, sheet_name=None, title=None)

create_histogram(filename, column, bins=10, sheet_name=None, title=None)

create_box_plot(filename, columns, sheet_name=None, title=None)

MCP 服务

直接运行脚本时(即 python excel_analytics_server.py),脚本会启动 FastMCP 服务并注册上述所有工具。之后,支持 MCP 接口的客户端即可调用这些工具。

在 Claude Desktop 中使用

前提条件

  • 下载 Claude Desktop

步骤 1:将 MCP 添加到 Python 项目中

# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create a new project directory
uv init data_analysis_tool
cd data_analysis_tool

# Create and activate a virtual environment
uv venv
source .venv/bin/activate

# Install dependencies
uv add "mcp[cli]" httpx

步骤 2:创建 MCP 服务

  • 将文件 excel_analytics_server.py 放在目录 data_analysis_tool 下
  • 运行
pip install "mcp[cli]" pandas matplotlib openpyxl

步骤 3:测试服务

mcp dev excel_analytics_server.py

步骤 4:将 MCP 连接到 Claude

  • 将以下内容添加到 claude_desktop_config.json
"data_analysis_tool": {
      "command": "/Users/username/.local/bin/uv", # remember to change the username
      "args": [
        "--directory",
        "xxx/data_analysis_tool", # change it to the directory of data_analysis_tool
        "run",
        "excel_analytics_server.py"
      ]
    }

步骤 5:完成!

  • 在 Claude 中试用!
示例 1:

image

示例 2:

image

示例 3:

image

资源

演示: https://github.com/user-attachments/assets/6bf023ae-7d73-4bfb-95dd-d648a19133a1

提示词

演示: https://github.com/user-attachments/assets/59596eae-b8d1-4e5f-951b-15d94d8d261f

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。