Excel to JSON MCP(模型上下文协议)提供了一个标准化接口,用于通过模型上下文协议将Excel和CSV数据转换为JSON格式。此MCP实现提供了两个特定的数据转换工具:
Excel to JSON MCP是WTSolutions的Excel to JSON的一部分:
可用的MCP服务器:
服务器配置JSON:
{
"mcpServers": {
"excel2json": {
"args": [
"mcp-remote",
"https://mcp.wtsolutions.cn/sse",
"--transport",
"sse-only"
],
"command": "npx",
"tools": [
"excel_to_json_mcp_from_data",
"excel_to_json_mcp_from_url"
]
}
}
}
传输方式:SSE
URL:https://mcp.wtsolutions.cn/excel-to-json-mcp-sse
服务器配置JSON:
{
"mcpServers": {
"excel2jsonsse": {
"type": "sse",
"url": "https://mcp.wtsolutions.cn/sse"
}
}
}
传输方式:Streamable HTTP
URL:https://mcp.wtsolutions.cn/excel-to-json-mcp-shttp
服务器配置JSON:
{
"mcpServers": {
"excel2jsonmcp": {
"type": "streamableHttp",
"url": "https://mcp.wtsolutions.cn/mcp"
}
}
}
将制表符分隔的Excel数据或逗号分隔的CSV文本数据转换为JSON格式。
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
| data | string | 是 | 至少包含两行(标题行+数据行)的制表符分隔或逗号分隔的文本数据 |
注意: 输入数据必须是至少包含两行(标题行+数据行)的制表符分隔(Excel)或逗号分隔(CSV)文本。
- 第一行将被视为“标题”行,此MCP将使用它作为列名,随后作为JSON键。
- 后续行将被视为“数据”行,此MCP将它们视为JSON值。
将以下数据转换为JSON格式:
Name Age IsStudent
John Doe 25 false
Jane Smith 30 true
将以下数据转换为JSON格式:
Name,Age,IsStudent
John Doe,25,false
Jane Smith,30,true
从提供的URL转换Excel文件为JSON格式。
| 参数 | 类型 | 必需 | 描述 |
|---|---|---|---|
| url | string | 是 | 指向Excel(.xlsx)文件的URL |
注意:
- Excel文件中的每个工作表应至少包含两行(标题行+数据行)。
- 第一行将被视为“标题”行,此MCP将使用它作为列名,随后作为JSON键。
- 后续行将被视为“数据”行,此MCP将它们视为JSON值。
- 此Excel文件应为'.xlsx'格式。
- Excel文件中的每个工作表将被转换为一个JSON对象。
- 每个JSON对象将具有'sheetName'(字符串)和'data'(对象数组)属性。
- 'data'数组中的每个JSON对象将具有对应于列名的属性。
- 'data'数组中的每个JSON对象将具有对应于单元格值的值。
将Excel文件转换为JSON,文件URL:https://tools.wtsolutions.cn/example.xlsx
(仅适用于您没有URL且正在使用在线AI LLM的情况)
我刚刚上传了一个.xlsx文件给您,请提取其URL并将其发送给MCP工具'excel_to_json_mcp_from_url'进行Excel到JSON的转换。
MCP工具返回具有以下结构的JSON对象:
| 字段 | 类型 | 描述 |
|---|---|---|
| isError | boolean | 表示处理请求时是否发生错误 |
| msg | string | 'success'或错误描述 |
| data | string | 如果使用URL,则为工作表对象数组;如果使用直接数据,则为字符串;如果有错误,则为空字符串。每个工作表对象包含'sheetName'(字符串)和'data'(对象数组)属性,如果使用URL |
{
"content": [{
"type": "text",
"text": "{\"isError\":false,\"msg\":\"success\",\"data\":\"[{\"Name\":\"John Doe\",\"Age\":25,\"IsStudent\":false},{\"Name\":\"Jane Smith\",\"Age\":30,\"IsStudent\":true}]\"}"
}]
}
以上是来自MCP工具的响应,在大多数情况下,您的LLM应该解释该响应,并以如下形式呈现给您一个JSON对象。
注意,不同的LLM模型可能有不同的方式来解释JSON对象,因此请检查您的LLM模型是否正确解释了JSON对象。
{
"isError": false,
"msg": "success",
"data": "[{\"Name\":\"John Doe\",\"Age\":25,\"IsStudent\":false},{\"Name\":\"Jane Smith\",\"Age\":30,\"IsStudent\":true}]"
}
{
"isError": false,
"msg": "success",
"data": [
{
"Name": "John Doe",
"Age": 25,
"IsStudent": false
},
{
"Name": "Jane Smith",
"Age": 30,
"IsStudent": true
}
]
}
[
{
"Name": "John Doe",
"Age": 25,
"IsStudent": false
},
{
"Name": "Jane Smith",
"Age": 30,
"IsStudent": true
}
]
{
"content": [{
"type": "text",
"text": "{\"isError\": true, \"msg\": \"Network Error when fetching file\", \"data\": \"\"}"
}]
}
以上是来自MCP工具的响应,在大多数情况下,您的LLM应该解释该响应,并以如下形式呈现给您一个JSON对象。
注意,不同的LLM模型可能有不同的方式来解释JSON对象,因此请检查您的LLM模型是否正确解释了响应。
{
"isError": true,
"msg": "Network Error when fetching file",
"data": ""
}
或者您的LLM可能会告诉您:“获取文件时出现网络错误,请稍后再试”。
API自动检测并转换不同数据类型:
MCP返回常见问题的描述性错误消息:
Excel Data Format Invalid:当输入数据不是制表符分隔或逗号分隔时At least 2 rows are required:当输入数据少于两行时Both data and url received:当同时提供'data'和'url'参数时Network Error when fetching file:当从提供的URL下载文件时出错File not found:当无法找到提供的URL处的文件时Blank/Null/Empty cells in the first row not allowed:当标题行包含空单元格时Server Internal Error:当发生意外错误时通过使用Excel to JSON MCP,您同意服务协议,以及隐私政策。
目前免费。