Get the FREE Ultimate OpenClaw Setup Guide →

mcp-vegalite

MCP server from isaacwasserman/mcp-vegalite-server

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio isaacwasserman-mcp-vegalite-server uv --directory /absolute/path/to/mcp-vegalite-server run mcp_server_vegalite --output_type png

How to use

This MCP server enables an LLM to visualize data using Vega-Lite by exposing two core tools: save_data and visualize_data. Use save_data to store a structured dataset on the server so you can reference it later by name. Then call visualize_data with the saved data name and a Vega-Lite specification to render a visualization. Depending on the output_type flag, you can receive either a textual Vega-Lite spec (with data embedded) or a PNG image of the visualization via the MPC ImageContent container. This setup is ideal for iterative data exploration where the model saves intermediate results and then generates visual insights using Vega-Lite syntax.

How to install

Prerequisites:

  • Python 3.8+ installed on your system
  • uv (the Universal Verifier/UV executable) available in your PATH
  • Access to the repository files for the MCP server

Installation steps:

  1. Clone or download the MCP Vega-Lite server repository to your machine.
  2. Ensure Python and uv are installed. Install uv if needed (example: pipx install uvw or follow the uv installation guide for your platform).
  3. Install any Python dependencies listed in the repository (if a requirements.txt or setup.py exists). For example:
    • python3 -m pip install -r requirements.txt
  4. Prepare a run directory. In the example, place the server files under /absolute/path/to/mcp-vegalite-server.
  5. Run the server using the MCP launcher configuration (see mcp_config example in this document) or start it directly via uv as described below.

Note: Adjust the paths to your actual installation directory when configuring the mcpServers block.

Additional notes

Tips and common issues:

  • Ensure the run directory path in the mcp_config matches where you placed the server files; the example uses /absolute/path/to/mcp-vegalite-server and may require adjustment.
  • If you switch output_type between text and png, make sure the client (e.g., Claude Desktop) sends the appropriate parameter and can handle a Vega-Lite spec vs. a PNG image.
  • When debugging, test save_data with a small sample dataset to verify that the data is stored correctly before attempting a full visualization.
  • If using the PNG output, the response will be a base64-encoded image within the ImageContent container; ensure your client can render or download it.
  • Environment variables are not specified in the README; if your deployment requires API keys or credentials for data sources, add them under env in the MCP config.
  • If the server fails to start, verify Python version compatibility and that the uv runner has execute permissions in your environment.

Related MCP Servers

Sponsor this space

Reach thousands of developers