关于 Json diff
Json diff 是用于 AI 辅助工作流的 Python MCP 服务,可比较 JSON 值。jsonDiff 工具接受字符串或字典,返回结构化差异,并忽略数组顺序差异。
主要功能
- 01比较 JSON 字符串和字典
- 02检测嵌套结构差异
- 03忽略数组顺序
- 04返回结构化差异报告
- 05提供清晰错误信息
适用场景
- 01在对话中比较预期与实际 JSON
- 02检查嵌套 JSON 文档的差异
- 03无需编写对比代码即可核对 JSON 结果
MCP 相关
它向 MCP 客户端提供 jsonDiff 对比工具,接收两个 JSON 值并返回差异、一致性状态和说明信息。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| actualKey | string | 是 | |
| expectKey | string | 是 |
详细介绍
来自项目 READMEMCP JSONDiff Kel
基于 Model Context Protocol (MCP) 的高效JSON对比工具,专为AI对话场景设计。
📋 项目简介
在AI辅助开发过程中,JSON对比常常遇到以下问题:
- 准确性不足: 传统AI对比方法可能存在误判
- 理解偏差: AI可能误解需求,生成对比代码而非直接对比结果
- 输出冗长: 对比结果过于详细,难以快速获取关键信息
本项目通过MCP协议提供标准化的JSON对比服务,确保AI能够准确、快速地完成JSON对比任务。
🛠️ 部署指南
使用 uvx(推荐)
uvx mcp-jsondiff-kel@latest
使用 pip
pip install mcp-jsondiff-kel
从源码安装
git clone https://github.com/your-username/mcp-jsondiff.git
cd mcp-jsondiff
pip install -e .
应用配置
Claude Desktop 配置
在应用配置文件中添加以下配置:
{
"mcpServers": {
"mcp_jsondiff": {
"command": "uvx",
"args": [
"mcp-jsondiff-kel@latest"
]
}
}
}
Cherry Studio 配置
{
"mcpServers": {
"mcp_jsondiff": {
"command": "uvx",
"args": [
"mcp-jsondiff-kel@latest"
]
}
}
}
📖 使用示例
演示示例用 Cherry Studio进行演示
首先在对话框中选择此 mcp 工具
然后输入形如如下的文案即可进行对比 json对比,预期值:{"a":1,"b":2}, 实际值:{"a":1,"b":2}
字符串对比

json 对比

转义后的 json 对比

嵌套 json 对比

演示视频
🚀 项目特性
- 🔍 智能对比: 基于
deepdiff库的深度JSON差异检测 - ⚡ 快速响应: 优化的对比算法,支持大型JSON文档
- 🔄 灵活输入: 支持JSON字符串和字典对象两种输入格式
- 📊 清晰输出: 结构化的差异报告,快速定位问题
- 🔧 MCP集成: 无缝集成到支持MCP协议的AI应用中
- 🐍 Python原生: 基于Python 3.13+,性能优异
🔧 API 文档
核心工具:jsonDiff
功能: 对比两个JSON对象或字符串,返回详细的差异信息
参数:
expectKey(Union[str, dict]): 期望的JSON值,支持JSON字符串或字典对象actualKey(Union[str, dict]): 实际的JSON值,支持JSON字符串或字典对象
返回值:
{
"differences": "DeepDiff对象,包含所有差异信息",
"is_identical": "布尔值,表示两个JSON是否完全一致",
"message": "字符串,描述对比结果或错误信息"
}
特性:
- 自动忽略数组顺序差异 (
ignore_order=True) - 支持嵌套JSON结构对比
- 智能错误处理,提供清晰的错误信息
🧪 调试与测试
使用MCP检查器调试
npx @modelcontextprotocol/inspector uvx mcp-jsondiff-kel
本地运行测试
cd src/mcp_jsondiff_kel
python server.py
🏗️ 项目结构
mcp-jsondiff/
├── pyproject.toml # 项目配置和依赖
├── README.md # 项目文档
├── src/
│ └── mcp_jsondiff_kel/
│ ├── __init__.py # 包入口点
│ ├── __main__.py # 命令行入口
│ └── server.py # MCP服务器核心逻辑
└── uv.lock # 依赖锁定文件
🔧 技术栈
- Python 3.13+: 核心运行时
- FastMCP: MCP协议实现框架
- DeepDiff: JSON差异检测引擎
- Hatchling: 构建系统
🤝 贡献指南
我们欢迎社区贡献!请遵循以下步骤:
- Fork 本仓库
- 创建特性分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启 Pull Request
开发环境设置
# 克隆仓库
git clone https://github.com/your-username/mcp-jsondiff.git
cd mcp-jsondiff
# 安装开发依赖
pip install -e ".[dev]"
# 运行测试
python -m pytest
📝 更新日志
v0.1.5
- 初始版本发布
- 支持基础JSON对比功能
- MCP协议集成
- 错误处理和用户友好的输出格式
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
👥 作者
- yohan - [email protected]
🙏 致谢
- Model Context Protocol - 提供MCP协议标准
- DeepDiff - 强大的差异检测库
- FastMCP - 高效的MCP实现框架
📞 支持与反馈
如果您在使用过程中遇到问题或有改进建议,请:
- 在 GitHub Issues 中提交问题
- 发送邮件至 [email protected]
- 参与社区讨论
⭐ 如果这个项目对您有帮助,请给我们一个星标!
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。