CSV分析服务器

一个用于理解和操作CSV文件的模型上下文协议(MCP)服务器,提供CSV文件的结构检查、分析和转换功能,便于LLMs理解CSV内容并为可视化工具准备数据。

  • by ryangooch
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ryangooch/csv_mcp

使用说明

CSV MCP服务器

一种模型上下文协议(MCP)服务器,为理解和操作CSV文件提供了简单的实用程序。该服务器使用Python包装的bash实用程序来高效地检查、分析和转换CSV文件,使LLM能够轻松理解CSV内容,并为ggplot等可视化工具准备数据。

特性

工具

  1. csv_inspect_structure -全面了解CSV文件结构

    • 具有推断数据类型的列名
    • 行数和列数
    • 文件开头的示例数据
    • 缺失值计数
  2. csv_get_column_info -对特定柱的深入分析

    • 唯一值计数和频率
    • 数字列的统计度量(最小值、最大值、平均值、中位数、标准偏差)
    • 数据类型检测
  3. csv_get_unique_values -列出列中的唯一值

    • 使用bash实用程序高效提取唯一值
    • 适用于分类变量
  4. csv_get_summary_statistics -数字列的统计摘要

    • 所有或选定数字列的综合统计数据
    • 计数、最小值、最大值、平均值、中位数、标准差
  5. csv_filter_and_transform -创建经过过滤/转换的CSV文件

    • 选择特定列
    • 根据条件筛选行
    • 按列值排序
    • 输出到新文件以供下游处理(例如,通过R MCP的ggplot)
  6. csv_preview_rows -预览特定行范围

    • 查看文件中任何位置的数据
    • 可用于抽查数据质量

安装

此服务器使用 uv 对于Python包管理:

cd csv_mcp
uv sync

用法

运行服务器

默认情况下,服务器使用stdio传输:

uv run python server.py

与Claude Desktop一起使用

添加到您的Claude Desktop MCP配置中:

{
  "mcpServers": {
    "csv": {
      "command": "/path/to/.venv/bin/python",
      "args": ["/absolute/path/to/csv_mcp/server.py"]
    }
  }
}

工作流示例

  1. 检查CSV文件:

    Use csv_inspect_structure with file_path="sales_data.csv"
    
  2. 分析特定列:

    Use csv_get_column_info with file_path="sales_data.csv" and column_name="region"
    
  3. 创建用于可视化的筛选数据集:

    Use csv_filter_and_transform with:
    - file_path="sales_data.csv"
    - output_path="us_sales.csv"
    - filter_conditions=["region=US"]
    - select_columns=["date", "revenue", "product"]
    
  4. 传递给R/ggplot MCP进行可视化:

    Now use the R MCP server with us_sales.csv to create visualizations
    

设计理念

  • 简单性: 使用标准bash实用程序(剪切、排序、uniq、sed、head、tail)提高效率
  • 集中: 旨在帮助LLM理解CSV内容,而不是取代完整的数据分析工具
  • 集成: 准备数据以移交给其他工具(特别是用于可视化的R/ggplot)
  • Markdown输出: 所有响应都是人类和LLM可读的标记

需求

  • Python 3.10+
  • 标准Unix实用程序(在macOS和Linux上可用)
  • MCP Python SDK
  • Pydantic v2

安全

  • 所有文件路径都经过验证和解析
  • 仅读取文件(创建新文件的csv_filter_and_transform除外)
  • 命令在超时的情况下安全执行
  • 无任意命令执行

许可证

麻省理工学院