Skip to main content
Glama
negrip

chartjs-mcp-server

by negrip

ChartJS MCP Server

Servidor MCP (Model Context Protocol) que genera gráficos Chart.js v4 para agentes de IA. Está pensado para integrarse con GLOB.AI OS / Globant Enterprise AI (GEAI) a través de su proxy MCP, aunque funciona con cualquier cliente MCP estándar.

Esta versión parte del proyecto de código abierto ax-crew/chartjs-mcp-server (MIT) y lo adapta para funcionar con GLOB.AI OS / Globant Enterprise AI: cambia la salida de imagen embebida por un link a un gráfico interactivo servido por un HTTP server propio, ajusta el esquema de la tool para el proxy de GEAI y agrega configuración por .env, entre otras mejoras. El detalle de los cambios está al final de este README.

En lugar de intentar embeber la imagen en el chat (donde muchas UIs bloquean o degradan las imágenes por políticas de seguridad), el server renderiza el gráfico, guarda una página HTML interactiva y devuelve un link clickeable. El usuario abre el link y ve el gráfico a pantalla completa, con tooltips y leyendas interactivas.

📈 [Ventas por trimestre — 2026](http://localhost:8123/charts/chart-U7pXnxRKq087ou18.html)

Características

  • Link interactivo como salida principal (sin límites de tamaño de imagen ni CSP).

  • 8 tipos de gráfico: bar, line, pie, doughnut, polarArea, radar, scatter, bubble.

  • Servidor HTTP embebido en el propio proceso del MCP.

  • Configuración por .env (sin dependencias externas).

  • Seguro por diseño: links no adivinables, sin listado de directorio, sin path traversal, retención automática de archivos.

  • Formatos alternativos: html (snippet crudo), json (config validado), svg (data URI vectorial).

Related MCP server: ECharts ChartPage MCP Server

Requisitos

  • Node.js >= 18

  • Windows / Linux / macOS

Ver REQUIREMENTS.txt para el detalle.

Instalación

git clone https://github.com/negrip/chartjs-mcp-server.git
cd chartjs-mcp-server
npm install
npm run build

Configuración

Copiar la plantilla y ajustar según el entorno:

cp .env.example .env

Variable

Default

Descripción

CHARTS_OUTPUT_DIR

<temp>/chartjs-mcp-charts

Dónde se guardan los HTML de los gráficos

CHARTS_HTTP_HOST

127.0.0.1

Interfaz del server (0.0.0.0 para exponer en red)

CHARTS_HTTP_PORT

8123

Puerto del server (fallback automático hasta +9)

CHARTS_BASE_URL

http://localhost:<puerto>

URL base de los links. Obligatoria en servidor

CHARTS_MAX_FILES

50

Cantidad de gráficos que se conservan

Uso en GLOB.AI OS / Globant Enterprise AI

Esta es la guía rápida. El paso a paso completo (incluida la puesta en un servidor con HTTPS/reverse proxy) está en DEPLOYMENT.md.

1. Registrar el MCP en el proxy

En la configuración del proxy MCP:

{
  "mcpServers": {
    "ChartJS": {
      "command": "node",
      "args": ["/ruta/a/chartjs-mcp-server/dist/index.js"]
    }
  }
}

Al reiniciar el proxy, la tool queda registrada como ChartJS__generatechart.

2. Cargar los parámetros de la tool

En Integrations → ChartJS → Tool Parameters, cargar a mano (el proxy no propaga el schema completo):

Key

Type

Data Type

Required

chartConfig

Application

String

outputFormat

Application

String

Ambos deben quedar Required (la plataforma envía el schema con strict: true). chartConfig va como String (el server parsea el JSON internamente).

3. Adjuntar la tool al agente e instruirlo

Agregar ChartJS__generatechart al resource pool del agente. El agente debe: obtener los datos, armar el chartConfig con valores reales, llamar a la tool con outputFormat: "interactive", y reproducir el link markdown tal cual lo devuelve la tool.

En DEPLOYMENT.md hay un bloque de instrucciones sugerido para el prompt del agente.

API de la tool

generateChart(chartConfig, outputFormat?)

  • chartConfig (object | JSON string, requerido): configuración completa Chart.js v4.

  • outputFormat (opcional, default "interactive"):

    • interactive — renderiza, guarda el HTML interactivo y devuelve el link markdown.

    • png — alias legacy de interactive.

    • html — snippet HTML crudo self-contained.

    • json — config Chart.js validado (para render client-side).

    • svg — SVG vectorial como data URI markdown (bar/line/pie/doughnut).

Documentación

  • DEPLOYMENT.md — guía completa: arquitectura, integración con GLOB.AI OS paso a paso, despliegue en servidor, seguridad, troubleshooting.

  • REQUIREMENTS.txt — requisitos de sistema y dependencias.

Cambios respecto del proyecto original

Este proyecto deriva de ax-crew/chartjs-mcp-server. Principales adaptaciones para su uso con GLOB.AI OS / GEAI:

  • Salida como link a un gráfico interactivo (servidor HTTP embebido), en lugar de la imagen embebida — evita las restricciones de CSP y de tamaño de data URI de las UIs de chat.

  • chartConfig acepta objeto o JSON string, con type declarado en el esquema para que el proxy de GEAI lo propague correctamente al modelo.

  • Respuesta como texto/markdown (compatibilidad con proxies MCP que descartan contenido de tipo imagen).

  • Formato principal interactive (con png como alias); nuevo formato svg con renderer vectorial propio.

  • Configuración por .env sin dependencias externas.

  • Mejoras internas: compresión de PNG, liberación de recursos por render, escapes de HTML, identificadores de archivo no adivinables y retención automática.

Licencia

MIT — ver LICENSE. Se conserva la licencia y el aviso de copyright del proyecto original.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/negrip/chartjs-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server