it-tools-mcp
Version:
MCP-compliant server access to over 100 IT tools and utilities commonly used by developers, system administrators, and IT professionals.
42 lines (41 loc) • 1.42 kB
JavaScript
import { z } from "zod";
export function registerConvertJsonCsv(server) {
server.registerTool("convert_json_to_csv", {
inputSchema: {
json: z.string().describe("JSON string to convert to CSV"),
delimiter: z.string().describe("CSV delimiter").optional(),
},
// VS Code compliance annotations
annotations: {
title: "Convert Json To Csv",
readOnlyHint: false
}
}, async ({ json, delimiter = "," }) => {
try {
const Papa = (await import("papaparse")).default;
const data = JSON.parse(json);
if (!Array.isArray(data)) {
throw new Error("JSON must be an array of objects");
}
const csv = Papa.unparse(data, { delimiter });
return {
content: [
{
type: "text",
text: `CSV:\n${csv}\n\nConversion Summary:\nRows: ${data.length}\nDelimiter: \"${delimiter}\"`,
},
],
};
}
catch (error) {
return {
content: [
{
type: "text",
text: `Error converting JSON to CSV: ${error instanceof Error ? error.message : 'Unknown error'}`,
},
],
};
}
});
}