MCP_Data_cleaner-MCP_Agent_Challenge
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"gradio": {
"args": [
"mcp-remote",
"https://sitzfleisch-data-cleaner.ms.show/gradio_api/mcp/sse",
"--transport",
"sse-only"
],
"command": "npx"
}
}
}
可用工具 (2 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
toggle_db_visibility 1 个参数
该工具无需必填参数,直接调用即可
clean_data_interface 17 个参数
数据清洗界面逻辑
该工具无需必填参数,直接调用即可
服务介绍
MCP 数据清洗器
项目简介
这是一个功能强大的结构化数据清洗MCP服务器,支持多种数据格式(CSV、Excel、JSON),并提供丰富的自定义清洗选项。
MCP Server 功能
本项目基于 Model Context Protocol (MCP) 架构,将数据清洗功能封装为标准化的MCP服务器。MCP是一种开放协议,允许不同的AI工具和应用程序之间进行无缝集成和通信。
开发想法来源:
- 在AI驱动的数据分析工作流中,数据清洗是一个关键但重复的步骤
- 传统的数据清洗工具往往孤立存在,难以与AI助手和其他工具集成
- 通过MCP协议,我们可以将专业的数据清洗能力作为服务提供给任何支持MCP的客户端
- 这样AI助手就能直接调用数据清洗功能,实现真正的端到端数据处理自动化
MCP Server 优势:
- 🔌 标准化接口:遵循MCP协议,可被任何MCP客户端调用
- 🚀 即插即用:无需复杂配置,启动即可提供服务
- 🔄 实时处理:支持流式数据处理和实时清洗
- 📊 详细报告:提供完整的数据清洗过程报告和统计信息
- 🛠️ 高度可定制:支持多种清洗策略和参数配置
功能特点
- 支持多种输入格式:CSV、Excel、JSON和数据库(SQLite、MySQL等)
- 提供全面的数据清洗功能:
- 重复值检测与移除
- 缺失值处理(删除或填充)
- 自动数据类型转换
- 异常值检测与处理
- 文本数据清洗
- 灵活的输出格式:CSV、Excel、JSON
- 直观的Gradio交互界面
- 详细的清洗报告
- MCP服务器模式:可作为MCP工具被其他应用调用
项目结构
MCP_Data_cleaner/
- README.md # 项目说明文档
- app.py # Gradio界面和MCP服务器主程序
- data_cleaner.py # 数据清洗核心逻辑
- modelscope.yml # ModelScope部署配置文件
- requirements.txt # 项目依赖
部署到ModelScope平台
- 登录ModelScope平台,进入MCP广场
- 创建新的MCP服务,上传整个项目代码
- 确认部署配置(modelscope.yml)正确无误
- 启动部署,等待服务上线
本地使用方法
安装依赖
bash
pip install -r requirements.txt
启动应用
bash
python app.py
应用会在本地启动一个Gradio界面,默认地址为 http://localhost:7860
使用指南
- 选择输入数据格式(CSV/Excel/JSON/数据库)
- 对于文件格式,上传相应的文件;对于数据库,填写数据库配置信息
- 选择输出格式
- 根据需求配置清洗选项:
- 重复值处理:选择是否移除重复记录
- 缺失值处理:选择处理策略和填充方式
- 数据类型转换:配置是否自动转换日期和数值类型
- 异常值处理:选择是否处理异常值及处理策略
- 文本清洗:配置文本清洗选项
- 点击"开始清洗"按钮
- 清洗完成后,可以下载清洗后的文件并查看清洗报告
扩展与定制
如需添加更多功能,可以:
- 在data_cleaner.py中扩展DataCleaner类,添加新的清洗方法
- 在app.py中扩展Gradio界面,添加新的配置选项
- 更新requirements.txt添加必要的依赖包
使用案例
案例:电商销售数据清洗与分析
背景:某电商平台需要对销售数据进行清洗和分析,数据包含大量缺失值、重复记录和格式不一致的问题。
数据描述:
- 文件格式:CSV
- 记录数量:约10,000条
- 字段:订单ID、商品名称、价格、数量、客户ID、购买日期、支付方式、配送地址
问题:
- 约5%的记录是重复的
- 价格字段有时包含货币符号,有时不包含
- 购买日期格式不一致(有MM/DD/YYYY和YYYY-MM-DD两种格式)
- 约8%的记录缺少支付方式- 部分价格异常(如0元或极高价格)
清洗流程:
- 数据导入 :从CSV文件中导入数据到DataFrame。
- 重复值处理 :检测并移除重复记录。
- 缺失值处理 :删除缺少支付方式的记录,对其他缺失值进行填充。
- 数据类型转换 :将价格字段转换为数值类型,将购买日期转换为统一格式。
- 异常值处理 :移除价格为0或异常高的记录。
- 文本清洗 :清理商品名称字段中的特殊字符。
执行清洗:
- 调用MCP服务器的
MCP_clean_data方法,传入清洗配置和数据。 - 服务器收到请求后,调用
DataCleaner类进行数据清洗。 - 清洗完成后,返回清洗后的结果和报告。
清洗结果
- 清洗后的文件:包含清洗后的订单数据
- 清洗报告:详细记录了清洗过程中的操作和统计信息
- 清洗报告示例:
- 共处理了10,000条记录
- 移除了50条重复记录
- 填充了80条缺失值
- 转换了100条数据类型
- 移除了100条异常值
- 清理了100条文本数据
- 清洗完成时间:2023-08-15 14:30:00
- 清洗耗时:10秒
- 清洗后数据大小:100MB
- 清洗后数据格式:CSV
后续分析:
清洗后的数据可直接用于:
- 销售趋势分析
- 客户购买行为研究
- 商品定价策略优化
- 预测模型训练
效果对比:
| 指标 | 清洗前 | 清洗后 |
|---|---|---|
| 记录数 | 10,000 | 9,487 |
| 完整性 | 92% | 100% |
| 一致性 | 68% | 100% |
| 准确性 | 85% | 98% |
| 数据质量得分 | 72/100 | 94/100 |
结论:
通过MCP数据清洗服务,用户能够快速处理复杂的数据质量问题,无需编写代码或深入了解数据清洗技术。整个过程从上传文件到获得清洗结果仅需几分钟,大大提高了数据分析的效率。
同时,作为MCP服务器,这一功能可以被AI助手和其他应用无缝调用,实现数据处理的自动化和智能化。