关于 DataClean
DataClean 是用于整理 CSV、Excel 和 JSON 表格的 MCP 服务,适合数据分析和 AI Agent 工作流。它以确定性规则分析、清理和验证数据;遇到含义不明确的值时会保留并标记,不会猜测。
主要功能
- 01分析列并检测数据问题
- 02清理并导出类型化表格
- 03依据架构验证数据行
- 04规范化常见值列表
- 05保留并标记含义不明的值
- 06防止导出表格执行公式
适用场景
- 01分析前检查表格
- 02统一导入数据中的日期和数字
- 03根据必填字段检查记录
- 04整理 CSV 或 Excel 数据
MCP 相关
向 MCP 客户端提供表格分析、清理、架构验证和值规范化工具。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.keyflint.dev/dataclean/mcpclaude mcp add --transport http arceedev-dataclean https://mcp.keyflint.dev/dataclean/mcp{"mcpServers":{"arceedev-dataclean":{"type":"http","url":"https://mcp.keyflint.dev/dataclean/mcp"}}}在 Cursor 中打开{"servers":{"arceedev-dataclean":{"type":"http","url":"https://mcp.keyflint.dev/dataclean/mcp"}}}在 VS Code 中打开{"mcpServers":{"arceedev-dataclean":{"type":"http","url":"https://mcp.keyflint.dev/dataclean/mcp"}}}{"mcpServers":{"arceedev-dataclean":{"serverUrl":"https://mcp.keyflint.dev/dataclean/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
dataclean-mcp
一个 MCP 服务,可在 AI Agent 处理表格前以确定性方式清理数据。大模型会误读 1.250,50 €,会在 03/04/2026 中颠倒日和月,会被 NUL 字节和乱码(Café)难住,还会悄悄丢掉前导零。DataClean 用规则解决这些问题,而且绝不猜测:有歧义的值会原样保留并标记;只有当列中的其他值(或你传入的参数)能确定其含义时,才会进行转换。
| 工具 | 积分 | 功能 |
|---|---|---|
profile_table | 1 | 编码、分隔符、标题行,以及每列的实际类型(整数、小数、日期、日期时间、布尔值、电子邮件、URL、电话、IBAN、文本)、数字区域格式、日期顺序、货币、空值、不同值、最小值/最大值、示例和问题。还会报告重复行并提供建议的架构。 |
clean_table | 1 | 返回清理后的类型化副本,格式为 CSV、TSV、JSON、JSONL 或类型化 .xlsx:修剪并修复文本,将数字转换为普通小数,将日期转换为 ISO 8601 格式,将电话号码转换为 E.164 格式,精简 IBAN,删除重复行,并将标题设为唯一或转换为 snake_case。每个未转换的值都会连同其源行一并列出。 |
validate_schema | 1 | 根据架构检查每一行(类型、必填、唯一、最小值/最大值、min_length/max_length、枚举、模式),并返回带行号的错误。 |
normalize_values | 1 | 规范化从文档或其他工具中提取的最多 10,000 个值(金额、日期、电话、电子邮件……)。 |
pricing、credits_balance | 0 | 免费辅助工具。 |
计费方式如下:
- 无法读取的输入或无效参数会在扣除积分之前被拒绝。
- 扣除积分后发生的失败会退还积分。
修复的问题
- 数字:
1.250,50 €、$1,250.50、1 234,5、1'234.50、(45.30)、SAP 样式的1.250,50-、12,5 %、EUR 12。列中的其他值会决定1,250这类值使用千位分隔符还是小数分隔符。如果列中的值无法确定,则由number_locale决定;两者都没有时,该值会被标记为ambiguous_number。 - 日期:ISO、
13/04/2026(日优先)、04/13/2026(月优先)、5 de marzo de 2026、March 5, 2026、5-Mar-26、3. März 2026,以及带 am/pm 的时间。只有当列中的其他值或date_order能确定顺序时,才会转换03/04/2026。少数派顺序的日期会被标记为date_order_conflict。 - 文本:移除 NUL、控制字符和零宽字符,将 NBSP 转换为普通空格,修复乱码,应用 Unicode NFC,并合并和修剪空格。空值标记(
NULL、N/A、#N/A、-、nan……)会变为空。 - ID:带前导零或超过 15 位的数字字符串(邮政编码、卡号、参考编号)会保留为文本,绝不会转换为数字。
- 文件:支持 UTF-8、UTF-16 或 Windows-1252 编码的 CSV,自动检测分隔符(
, ; tab |),跳过标题上方的标题行,为不规则行补齐字段,并重命名重复或空标题。还可读取.xlsx(通过 base64)、JSON 和 JSONL。 - 安全:在 CSV 输出中,以
= + - @开头的文本单元格会加上'前缀,防止电子表格将其作为公式执行。在.xlsx输出中,这些内容会以字符串形式存储。嵌套量词的架构正则表达式会被拒绝(ReDoS)。
安装
- 在 https://mcp.keyflint.dev 购买积分以获取许可证(
LIC-...)。 - 将服务添加到你的客户端:
{
"mcpServers": {
"dataclean": {
"command": "uvx",
"args": ["dataclean-mcp"],
"env": { "KEYFLINT_LICENSE": "LIC-..." }
}
}
}
Claude Desktop 也可以安装每个 GitHub 发布版本附带的 .mcpb 捆绑包。托管模式通过运行 dataclean-mcp --http(或使用 Dockerfile)启动,并从每个请求的 Authorization: Bearer LIC-... 标头中读取许可证。
限制(通过环境变量设置):DATACLEAN_MAX_BYTES(20 MB)、DATACLEAN_MAX_ROWS(200,000)、DATACLEAN_MAX_OUTPUT(15 MB)。可通过 DATACLEAN_PRICES=clean_table=2,... 覆盖积分价格。
可视化卡片(MCP Apps)
在 Claude、ChatGPT、VS Code 和 Goose 中,每个付费工具和 credits_balance 都会在聊天中渲染为交互式卡片:显示余额和补充进度条及购买按钮,或显示结果摘要(关键数据、问题、表格预览和已扣除的点数)。卡片使用 ui://dataclean/card.html 资源,独立运行且无需访问网络。其他客户端仍会收到与之前相同的 JSON。
测试
pip install -e '.[test]'
pytest -q
测试使用模拟的 KeyFlint 网关和本地签名的许可证,因此无需联网。
许可证
Business Source License 1.1。生产环境使用需要获得许可方提供的 KeyFlint 许可证。2030-11-05,该代码将转为 Apache 2.0。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。