🚀 CSV Editor - 基于MCP的AI驱动CSV处理工具
CSV Editor 是一款高性能的MCP服务器,它能让Claude、ChatGPT等AI助手通过简单命令实现强大的数据操作能力,彻底改变AI助手处理CSV数据的方式。
🚀 快速开始
快速演示
"加载销售数据并去除重复项"
"筛选2024年第四季度交易额超过10000美元的交易记录"
"计算价格和数量之间的相关性"
"用中位数填充缺失值"
"将分析结果导出为Excel文件"
通过Smithery安装
要通过 Smithery 为Claude Desktop自动安装 csv-editor,请执行以下命令:
npx -y @smithery/cli install @santoshray02/csv-editor --client claude
最快安装方式(推荐)
curl -LsSf https://astral.sh/uv/install.sh | sh
git clone https://github.com/santoshray02/csv-editor.git
cd csv-editor
uv sync
uv run csv-editor
配置你的AI助手
Claude Desktop(点击展开)
在macOS系统中,将以下内容添加到 ~/Library/Application Support/Claude/claude_desktop_config.json 文件中:
{
"mcpServers": {
"csv-editor": {
"command": "uv",
"args": ["tool", "run", "csv-editor"],
"env": {
"CSV_MAX_FILE_SIZE": "1073741824"
}
}
}
}
其他客户端(Continue、Cline、Windsurf、Zed)
详细配置请参考 MCP_CONFIG.md。
✨ 主要特性
解决的问题
AI助手在处理复杂数据操作时面临困难,它们虽然可以读取文件,但缺乏有效过滤、转换、分析和验证CSV数据的工具。
解决方案
CSV Editor弥补了这一差距,它为AI助手提供了40多种专门用于CSV操作的工具,使其成为强大的数据分析师,能够:
- 数秒内清理杂乱的数据集
- 执行复杂的统计分析
- 自动验证数据质量
- 使用自然语言命令转换数据
- 通过撤销/重做功能跟踪所有更改
关键差异化特性
| 特性 |
CSV Editor |
传统工具 |
| AI集成 |
原生MCP协议 |
手动操作 |
| 自动保存 |
具备多种策略的自动保存 |
需要手动保存 |
| 历史记录跟踪 |
带快照的完整撤销/重做功能 |
有限或无此功能 |
| 会话管理 |
多用户隔离会话 |
单用户 |
| 数据验证 |
内置质量评分 |
需要单独的工具 |
| 性能 |
通过分块处理GB级以上的文件 |
存在内存限制 |
💻 使用示例
基础用法
"Load the sales data and remove duplicates"
"Filter for Q4 2024 transactions over $10,000"
"Calculate correlation between price and quantity"
"Fill missing values with the median"
"Export as Excel with the analysis"
高级用法
数据分析师工作流
session = load_csv("daily_sales.csv")
remove_duplicates(session_id)
change_column_type("date", "datetime")
fill_missing_values(strategy="median", columns=["revenue"])
get_statistics(columns=["revenue", "quantity"])
detect_outliers(method="iqr", threshold=1.5)
get_correlation_matrix(min_correlation=0.5)
export_csv(format="excel", file_path="clean_sales.xlsx")
ETL管道
load_csv_from_url("https://api.example.com/data.csv")
filter_rows(conditions=[
{"column": "status", "operator": "==", "value": "active"},
{"column": "amount", "operator": ">", "value": 1000}
])
add_column(name="quarter", formula="Q{(month-1)//3 + 1}")
group_by_aggregate(group_by=["quarter"], aggregations={
"amount": ["sum", "mean"],
"customer_id": "count"
})
export_csv(format="parquet")
export_csv(format="json")
数据质量保证
validate_schema(schema={
"customer_id": {"type": "integer", "required": True},
"email": {"type": "string", "pattern": r"^[^@]+@[^@]+\.[^@]+$"},
"age": {"type": "integer", "min": 0, "max": 120}
})
quality_report = check_data_quality()
anomalies = find_anomalies(methods=["statistical", "pattern"])
📚 详细文档
可用工具
完整工具列表(40多种工具)
I/O操作
load_csv - 从文件加载
load_csv_from_url - 从URL加载
load_csv_from_content - 从字符串加载
export_csv - 导出到各种格式
get_session_info - 获取会话详情
list_sessions - 列出活动会话
close_session - 清理会话
数据操作
filter_rows - 复杂过滤
sort_data - 多列排序
select_columns - 列选择
rename_columns - 重命名列
add_column - 添加计算列
remove_columns - 删除列
update_column - 更新值
change_column_type - 类型转换
fill_missing_values - 处理空值
remove_duplicates - 去重
分析
get_statistics - 统计摘要
get_column_statistics - 列统计信息
get_correlation_matrix - 相关性矩阵
group_by_aggregate - 分组操作
get_value_counts - 频率计数
detect_outliers - 查找异常值
profile_data - 数据剖析
验证
validate_schema - 模式验证
check_data_quality - 质量指标
find_anomalies - 异常检测
自动保存和历史记录
configure_auto_save - 设置自动保存
get_auto_save_status - 检查状态
undo / redo - 导航历史记录
get_history - 查看操作记录
restore_to_operation - 时光回溯
配置
环境变量
| 变量 |
默认值 |
描述 |
CSV_MAX_FILE_SIZE |
1GB |
最大文件大小 |
CSV_SESSION_TIMEOUT |
3600s |
会话超时时间 |
CSV_CHUNK_SIZE |
10000 |
处理块大小 |
CSV_AUTO_SAVE |
true |
启用自动保存 |
自动保存策略
CSV Editor可以通过可配置的策略自动保存你的工作:
- 覆盖(默认) - 更新原始文件
- 备份 - 创建带时间戳的备份
- 版本化 - 维护版本历史
- 自定义 - 保存到指定位置
configure_auto_save(
strategy="backup",
backup_dir="/backups",
max_backups=10
)
高级安装选项
其他安装方法
使用pip
git clone https://github.com/santoshray02/csv-editor.git
cd csv-editor
pip install -e .
使用pipx(全局安装)
pipx install git+https://github.com/santoshray02/csv-editor.git
从GitHub安装(推荐)
pip install git+https://github.com/santoshray02/csv-editor.git
uv pip install git+https://github.com/santoshray02/csv-editor.git
pip install git+https://github.com/santoshray02/csv-editor.git@v1.0.1
🔧 技术细节
运行测试
uv run test
uv run test-cov
uv run all-checks
项目结构
csv-editor/
├── src/csv_editor/ # 核心实现
│ ├── tools/ # MCP工具实现
│ ├── models/ # 数据模型
│ └── server.py # MCP服务器
├── tests/ # 测试套件
├── examples/ # 使用示例
└── docs/ # 文档
🤝 贡献代码
我们欢迎贡献!请参考 CONTRIBUTING.md 获取贡献指南。
快速贡献指南
- 分叉仓库
- 创建功能分支
- 编写测试并进行更改
- 运行
uv run all-checks
- 提交拉取请求
📈 路线图
- [ ] SQL查询接口
- [ ] 实时协作
- [ ] 高级可视化
- [ ] 机器学习集成
- [ ] 云存储支持
- [ ] 针对10GB以上文件的性能优化
💬 支持
📄 许可证
本项目采用MIT许可证,请参阅 LICENSE 文件获取详细信息。
🙏 致谢
本项目基于以下工具构建:
准备好提升你的AI数据处理能力了吗? 两分钟内开始使用 →