关于 json
json 是面向处理 JSON、YAML 和 CSV 数据的 AI Agent 与开发者的 MCP 服务。它结合了 Schema 校验、结构化差异比较、数据转换和格式转换功能。
主要功能
- 01根据 JSON Schema 校验 JSON
- 02按路径比较 JSON 对象
- 03提取、重命名、扁平化及还原字段
- 04在 CSV 与 JSON 间转换
- 05在 YAML 与 JSON 间转换
适用场景
- 01按 Schema 检查 JSON 数据
- 02查看 JSON 对象之间的变更
- 03重塑嵌套 JSON 数据
- 04在 CSV 与 JSON 间转换表格数据
- 05在 YAML 与 JSON 间转换配置数据
MCP 相关
它向 Claude Code、Claude Desktop 等 MCP 客户端提供数据校验、比较、转换和格式转换工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| data | string | 是 | 要验证的 JSON 数据(作为 JSON 字符串) |
| schema | string | 是 | 要依据其进行验证的 JSON Schema(JSON 字符串) |
详细介绍
mcp-json-tools
一个 MCP(Model Context Protocol)服务,为 AI Agent 提供 JSON 和数据处理工具。适用于 Claude Code、Claude Desktop 以及任何兼容 MCP 的客户端。
工具
| 工具 | 描述 |
|---|---|
json_validate | 根据 JSON Schema 验证 JSON 数据,并返回包含路径的详细错误信息 |
json_diff | 比较两个 JSON 对象,显示新增、移除和变更的内容及其路径 |
json_transform | 使用 pick、rename、flatten 和 unflatten 操作转换 JSON |
csv_to_json | 将 CSV 文本转换为 JSON 数组,可配置表头、分隔符和类型转换 |
json_to_csv | 将 JSON 对象数组转换为 CSV 文本 |
yaml_to_json | 将 YAML 文本转换为 JSON |
json_to_yaml | 将 JSON 文本转换为 YAML |
安装
npm install
npm run build
在 Claude Code 中使用
claude mcp add json-tools -- node D:/products/mcp-servers/mcp-json-tools/dist/index.js
在 Claude Desktop 中使用
将以下内容添加到 Claude Desktop 配置文件中:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"json-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-json-tools/dist/index.js"]
}
}
}
工具详情
json_validate
根据 JSON Schema 验证 JSON 数据。返回一个 valid 布尔值和一个错误数组,每条错误都包含字段路径、错误消息以及验证失败的 Schema 关键字。
参数:
data(string)——要验证的 JSON 数据schema(string)——用于验证的 JSON Schema
json_diff
比较两个 JSON 对象并生成结构化差异。每项差异都包含点分隔表示法的路径、变更类型(新增、移除或变更)以及旧值和新值。
参数:
original(string)——原始 JSON 对象modified(string)——修改后的 JSON 对象
json_transform
对 JSON 数据应用转换。支持四种操作:
- pick — 按点分隔表示法路径提取指定字段
- rename — 使用映射对象重命名顶层键
- flatten — 将嵌套对象展开为以点分隔的键
- unflatten — 将以点分隔的键还原为嵌套对象
参数:
data(string)——要转换的 JSON 数据operation(string)——以下操作之一:pick、rename、flatten、unflattenfields(string[])——用于 pick:要提取的字段路径mapping(object)——用于 rename:旧键到新键的映射separator(string)——用于 flatten/unflatten:分隔符(默认值:".")
csv_to_json
将 CSV 文本解析为 JSON 对象数组。
参数:
csv(string)——要转换的 CSV 文本hasHeaders(boolean)——第一行是否为表头(默认值:true)delimiter(string)——列分隔符(默认值:",")castTypes(boolean)——是否自动转换数字和布尔值(默认值:false)
json_to_csv
将 JSON 对象数组转换为 CSV 文本。表头根据所有对象键的并集生成。
参数:
data(string)——要转换的 JSON 数组delimiter(string)——列分隔符(默认值:",")includeHeaders(boolean)——是否包含表头行(默认值:true)
yaml_to_json / json_to_yaml
在 YAML 和 JSON 格式之间进行转换。
参数:
yamlText/jsonText(string)——要转换的文本indent(number)——缩进空格数(默认值:2)
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。