Data Analysis
Generar tablas dinámicas interactivas desde datos CSV/JSON con configuración personalizable de campos de filas, columnas y valores
Llama a esta herramienta desde tu código en tres lenguajes.
curl -X POST 'https://api.elysiatools.com/es/api/tools/pivot-table-generator' \
-H 'Content-Type: application/json' \
-d '{"inputData":"Ingrese sus datos CSV o JSON...\n\nEjemplo CSV:\nRegión,Producto,Ventas,Cantidad,Fecha\nNorte,Widget A,1000,50,2024-01-15\nSur,Widget B,1500,75,2024-01-16\nNorte,Widget A,1200,60,2024-01-17\n\nEjemplo JSON:\n[\n {\"Región\": \"Norte\", \"Producto\": \"Widget A\", \"Ventas\": 1000, \"Cantidad\": 50},\n {\"Región\": \"Sur\", \"Producto\": \"Widget B\", \"Ventas\": 1500, \"Cantidad\": 75}\n]","dataFormat":"csv","rowFields":"Nombres de campo separados por comas (ej: Región, Categoría)","columnFields":"Nombres de campo separados por comas (ej: Producto, Mes)","valueFields":"Nombres de campo separados por comas (ej: Ventas, Cantidad)","aggregateFunction":"sum","filterConditions":"Ingrese condiciones de filtro (una por línea):\nRegión = Norte\nVentas > 1000\nProducto != Widget C","includeGrandTotals":true,"includePercentages":false,"maxRows":"100","maxColumns":"20"}'Envía una petición POST con tus entradas en JSON. Los parámetros de tipo archivo requieren una subida previa.
POST https://api.elysiatools.com/es/api/tools/pivot-table-generator| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| inputData | textarea | Sí | — |
| dataFormat | select | Sí | — |
| rowFields | text | No | Campos para usar como filas en la tabla dinámica. Si está vacío, usará el primer campo no numérico. |
| columnFields | text | No | Campos para usar como columnas en la tabla dinámica. Si está vacío, usará los campos restantes. |
| valueFields | text | No | Campos numéricos para agregar. Si está vacío, detectará automáticamente campos numéricos. |
| aggregateFunction | select | Sí | — |
| filterConditions | textarea | No | Filtros opcionales para aplicar antes de generar la tabla dinámica. Formato: Campo operador valor |
| includeGrandTotals | checkbox | No | Agregar filas y columnas de totales generales a la tabla dinámica |
| includePercentages | checkbox | No | Mostrar porcentajes junto a los valores |
| maxRows | number | No | Número máximo de filas para mostrar en la tabla dinámica |
| maxColumns | number | No | Número máximo de columnas para mostrar en la tabla dinámica |
Resultado de texto
{
"result": "Processed text content",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Añade esta herramienta a tu servidor Model Context Protocol para que los agentes de IA puedan listarla y llamarla.
Añade este bloque a la configuración de tu cliente MCP:
{
"mcpServers": {
"elysiatools-pivot-table-generator": {
"name": "pivot-table-generator",
"description": "Generar tablas dinámicas interactivas desde datos CSV/JSON con configuración personalizable de campos de filas, columnas y valores",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=pivot-table-generator",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}Tras conectar al endpoint SSE, lista las herramientas expuestas:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoca la herramienta por su id; los argumentos se construyen a partir de sus parámetros:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "pivot-table-generator",
"arguments": {
"inputData": "Ingrese sus datos CSV o JSON...\n\nEjemplo CSV:\nRegión,Producto,Ventas,Cantidad,Fecha\nNorte,Widget A,1000,50,2024-01-15\nSur,Widget B,1500,75,2024-01-16\nNorte,Widget A,1200,60,2024-01-17\n\nEjemplo JSON:\n[\n {\"Región\": \"Norte\", \"Producto\": \"Widget A\", \"Ventas\": 1000, \"Cantidad\": 50},\n {\"Región\": \"Sur\", \"Producto\": \"Widget B\", \"Ventas\": 1500, \"Cantidad\": 75}\n]",
"dataFormat": "csv",
"rowFields": "Nombres de campo separados por comas (ej: Región, Categoría)",
"columnFields": "Nombres de campo separados por comas (ej: Producto, Mes)",
"valueFields": "Nombres de campo separados por comas (ej: Ventas, Cantidad)",
"aggregateFunction": "sum",
"filterConditions": "Ingrese condiciones de filtro (una por línea):\nRegión = Norte\nVentas > 1000\nProducto != Widget C",
"includeGrandTotals": true,
"includePercentages": false,
"maxRows": "100",
"maxColumns": "20"
}
}
}¿Dudas o problemas? Contacta con [email protected]