Home / MCP / Data Visualization MCP Server
Provides data loading and Vega-Lite visualization capabilities via MCP for quick data exploration.
Configuration
View docs{
"mcpServers": {
"datavis": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/mcp-datavis-server",
"run",
"mcp_server_vegalite",
"--output-type",
"png"
]
}
}
}This MCP server lets you visualize data using Vega-Lite syntax. You load your data into the server, then request Vega-Lite visualizations so you can quickly explore patterns, trends, and insights without leaving your workflow.
You interact with the server through an MCP client to save data tables and generate Vega-Lite visualizations. First, save a data table you want to visualize, then request a Vega-Lite visualization that references that saved data.
Prerequisites you need before running the data visualization MCP server are a running MCP runtime and, if you choose to use Docker, a working Docker environment.
Option A — Run with the MCP runtime (uv) locally using the provided directory. You start the server with the following command structure.
uv --directory /absolute/path/to/mcp-datavis-server run mcp_server_vegalite --output-type pngOption B — Run via Docker using the published image. You start the server with this command.
docker run -i --rm mcp-server-vegalite --output-type png- The server supports two core tools: save_data and visualize_data. Use save_data to store a data table by name and data rows, then call visualize_data with the saved name and a Vega-Lite specification to render a visualization.
- When you request a visualization, you can receive either a text artifact containing the Vega-Lite spec with the embedded data or a base64 PNG image of the visualization, depending on the output type you specify.
Save a table of data aggregations to the server for later visualization. Input: name (string) and data (array of objects). Returns a success message.
Visualize a saved data table using Vega-Lite. Input: data_name (string) and vegalite_specification (JSON string). Returns either a text artifact with the Vega-Lite spec and data or a base64 PNG image depending on output type.