Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp-vegalite-server

MCP.Pizza Chef: isaacwasserman

The mcp-vegalite-server is a Model Context Protocol (MCP) server that empowers large language models (LLMs) to create and manage data visualizations using Vega-Lite syntax. It provides two main tools: one to save data tables as aggregations for later use, and another to generate visualizations from these tables based on Vega-Lite JSON specifications. This server facilitates seamless integration of data visualization capabilities into AI workflows, enabling models to produce insightful charts and graphs dynamically. It supports structured data input and outputs visualization artifacts, making it ideal for applications requiring real-time, model-driven data analysis and presentation.

Use This MCP server To

Save aggregated data tables for visualization Generate charts from data using Vega-Lite specs Integrate dynamic data visualization in AI workflows Produce real-time visual insights from model data Store and retrieve data tables for repeated use

README

Data Visualization MCP Server

smithery badge

Overview

A Model Context Protocol (MCP) server implementation that provides the LLM an interface for visualizing data using Vega-Lite syntax.

Components

Tools

The server offers two core tools:

  • save_data
    • Save a table of data agregations to the server for later visualization
    • Input:
      • name (string): Name of the data table to be saved
      • data (array): Array of objects representing the data table
    • Returns: success message
  • visualize_data
    • Visualize a table of data using Vega-Lite syntax
    • Input:
      • data_name (string): Name of the data table to be visualized
      • vegalite_specification (string): JSON string representing the Vega-Lite specification
    • Returns: If the --output_type is set to text, returns a success message with an additional artifact key containing the complete Vega-Lite specification with data. If the --output_type is set to png, returns a base64 encoded PNG image of the visualization using the MPC ImageContent container.

Usage with Claude Desktop

# Add the server to your claude_desktop_config.json
{
  "mcpServers": {
    "datavis": {
        "command": "uv",
        "args": [
            "--directory",
            "/absolute/path/to/mcp-datavis-server",
            "run",
            "mcp_server_datavis",
            "--output_type",
            "png" # or "text"
        ]
    }
  }
}

mcp-vegalite-server FAQ

How do I save data tables to the mcp-vegalite-server?
Use the 'save_data' tool by providing a name and an array of data objects representing the table.
What format should the visualization specification be in?
The visualization must be specified as a JSON string following the Vega-Lite syntax.
Can I retrieve visualizations as text output?
Yes, if the '--output_type' is set to 'text', the server returns a success message with an artifact containing the visualization.
Is the mcp-vegalite-server compatible with multiple LLM providers?
Yes, it works with OpenAI, Anthropic Claude, and Google Gemini models via the MCP protocol.
What types of data can be visualized?
Any tabular data saved on the server can be visualized, as long as it can be represented in Vega-Lite specifications.
How does the server handle data aggregation?
The server stores aggregated data tables provided by the user for later visualization requests.
Can I update or overwrite existing data tables?
Yes, saving data with an existing name will overwrite the previous table.
What is the expected input for the 'visualize_data' tool?
It requires the name of the saved data table and a Vega-Lite JSON specification string.