Vega-Lite

v1.0.0Analyticsstable

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

mcp-vegalitemcpai-integration
Share:
97
Stars
0
Downloads
0
Weekly
0/5

What is Vega-Lite?

Vega-Lite is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to model context protocol (mcp) server implementation that provides the llm an interface for visualizing data using vega-lite syntax.

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

This server falls under the Analytics category on MCPgee, the world's largest MCP server directory with 33,000+ servers.

Features

  • A Model Context Protocol (MCP) server implementation that pr

Use Cases

Create data visualizations using Vega-Lite syntax through MCP. Generate charts and interactive graphics via LLM interface.
isaacwasserman

Maintainer

LicenseMIT
Languagepython
Versionv1.0.0
UpdatedMay 18, 2026
Statushealthy
Maintenanceactive

Works with

ClaudeOpenAIwindowsmacoslinux

Installation

Manual Installation

npx mcp-vegalite

Configuration

Configuration Details

Config File

claude_desktop_config.json

Performance

Response Metrics

Response Time< 200ms
ThroughputMedium

Resource Usage

Memory UsageLow
CPU UsageLow

How to Set Up and Use Vega-Lite

The mcp-vegalite-server gives AI assistants the ability to create data visualizations using the Vega-Lite declarative grammar, turning raw datasets into charts, graphs, and interactive graphics without requiring the user to write visualization code. The server provides two core tools: one for saving tabular data to the server session, and one for rendering that data as a Vega-Lite chart — either as a base64-encoded PNG image or as a Vega-Lite specification artifact. This makes it straightforward for Claude to analyze data, propose an appropriate chart type, and immediately produce a visualization in response to natural language requests.

Prerequisites

  • Python 3.10 or later installed on your system
  • uv package manager installed (recommended) — or pip as an alternative
  • Claude Desktop or another MCP-compatible AI client
  • The mcp-vegalite-server source cloned locally (no PyPI package currently published)
  • No external API keys required
1

Clone the mcp-vegalite-server repository

Clone the repository to your local machine. The server runs from source using uv to manage the Python environment.

git clone https://github.com/isaacwasserman/mcp-vegalite-server.git
cd mcp-vegalite-server
2

Verify uv is installed

The server is designed to run with uv, which handles virtual environment creation and dependency installation automatically. Install uv if you do not already have it.

# Install uv if not already installed
curl -LsSf https://astral.sh/uv/install.sh | sh

# Verify installation
uv --version
3

Configure Claude Desktop with the PNG output mode

Add the mcp-vegalite-server to your Claude Desktop config. The --output_type argument can be 'png' (returns a base64 image Claude can display) or 'text' (returns the Vega-Lite JSON spec as an artifact).

{
  "mcpServers": {
    "datavis": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/mcp-vegalite-server",
        "run",
        "mcp_server_datavis",
        "--output_type",
        "png"
      ]
    }
  }
}
4

Restart Claude Desktop

Fully quit and reopen Claude Desktop. The server will start automatically when Claude launches and needs to use the visualization tools. Wait a moment for uv to set up the environment on first run.

5

Test with a simple dataset and chart request

Paste a small dataset into Claude and ask it to visualize the data. Claude will call the save_data tool to store the data and then visualize_data to render the chart.

Vega-Lite Examples

Client configuration

Claude Desktop configuration for mcp-vegalite-server with PNG output mode. Replace the directory path with the absolute path to where you cloned the repository.

{
  "mcpServers": {
    "datavis": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/yourname/mcp-vegalite-server",
        "run",
        "mcp_server_datavis",
        "--output_type",
        "png"
      ]
    }
  }
}

Prompts to try

These prompts show how to use the Vega-Lite MCP server to create data visualizations through Claude.

- "Here is my sales data: [Jan: 120, Feb: 145, Mar: 98, Apr: 167]. Create a bar chart showing monthly sales."
- "Plot a scatter chart of these points: (1,2), (3,5), (4,4), (7,8), (9,11). Add a trend line."
- "I have this CSV data [paste data]. Create a line chart showing the trend over time with a proper title and axis labels."
- "Generate a heatmap from this correlation matrix [paste matrix]. Use a red-to-blue diverging color scale."
- "Make a histogram of these response times in milliseconds: [50, 75, 80, 120, 200, 95, 60, 300]. Show the distribution."
- "Create a stacked bar chart comparing quarterly revenue across three product lines using this data [paste data]."

Troubleshooting Vega-Lite

The server fails to start with 'uv: command not found'

Install uv using the official installer: 'curl -LsSf https://astral.sh/uv/install.sh | sh' on macOS/Linux or 'powershell -c "irm https://astral.sh/uv/install.ps1 | iex"' on Windows. Alternatively, change the command to 'python' and args to ['-m', 'mcp_server_datavis', '--output_type', 'png'] after manually installing dependencies with pip.

visualize_data returns an error about an unknown data_name

The save_data tool must be called first to register the dataset before visualize_data can reference it by name. If you are prompting Claude directly with raw data, ask it to save the data first with a specific name, then visualize that name. The data is session-scoped and resets when the server restarts.

PNG output appears broken or Claude cannot display the image

Try switching to text output mode by changing --output_type to 'text' in your config. This returns the Vega-Lite JSON specification, which you can paste into the Vega-Lite online editor at vega.github.io/editor to render locally. PNG mode requires the server to have proper graphics rendering dependencies installed.

Frequently Asked Questions about Vega-Lite

What is Vega-Lite?

Vega-Lite is a Model Context Protocol (MCP) server that model context protocol (mcp) server implementation that provides the llm an interface for visualizing data using vega-lite syntax. It connects AI assistants to external tools and data sources through a standardized interface.

How do I install Vega-Lite?

Follow the installation instructions on the Vega-Lite GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.

Which AI clients work with Vega-Lite?

Vega-Lite works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.

Is Vega-Lite free to use?

Yes, Vega-Lite is open source and available under the MIT license. You can use it freely in both personal and commercial projects.

Browse More Analytics MCP Servers

Explore all analytics servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.

Quick Config Preview

{ "mcpServers": { "mcp-vegalite": { "command": "npx", "args": ["-y", "mcp-vegalite"] } } }

Add this to your claude_desktop_config.json or .cursor/mcp.json

Read the full setup guide →

Ready to use Vega-Lite?

Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.

33,000+ ServersFree & Open SourceStep-by-Step Guides