MCP Directory

Vizro-MCP

Official

MCP server that works alongside an LLM to build validated Vizro charts and dashboards.

Unverified
stdio (local)
No auth
Python

Add to your client

Copy the config for your MCP client and paste it into its config file.

Install / run
uvx vizro-mcp

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "vizro-mcp": {
      "command": "uvx",
      "args": [
        "vizro-mcp"
      ]
    }
  }
}

Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.

Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf

Before you start

  • An MCP-enabled LLM client (Claude Desktop, Cursor, or VS Code)
  • uv (for the uvx install) OR Docker (for the containerized install)
  • For local-data dashboards with the Docker setup, mounting your data directory/file into the container

About Vizro-MCP

Vizro-MCP is an official McKinsey MCP server that turns an LLM into an assistant for building Vizro data-visualization apps. Rather than letting a model 'vibe-code' a dashboard that may not run, it exposes tools that supply Vizro model JSON schemas, load and profile datasets, and strictly validate the generated configuration — returning readable, maintainable Python code plus an optional live PyCafe preview. It also ships prompt templates for common starting points (starter dashboard, EDA dashboard from one dataset, and a single Vizro chart). It works with MCP-enabled hosts including Claude Desktop, Cursor and VS Code, and can be installed via uv/uvx or Docker.

Tools & capabilities (6)

get_vizro_chart_or_dashboard_plan

Returns instructions for creating a Vizro chart or dashboard. Should be called FIRST when asked to create Vizro things; call again with advanced_mode=True if plain JSON config is no longer sufficient (e.g. custom CSS, components or actions).

get_model_json_schema

Returns the JSON schema for a specified Vizro model (e.g. Card, Dashboard, Page, Graph, Grid), so the model knows the exact valid configuration shape. Flags deprecated models and points to replacements.

get_sample_data_info

When the user provides no data, returns metadata for a built-in sample dataset (iris, tips, stocks, or gapminder) suited to different chart types.

load_and_analyze_data

Loads a local file (absolute path) or remote URL into a pandas DataFrame and returns detailed structure/metadata. Supports CSV, JSON, HTML, Excel (.xls/.xlsx), ODS and Parquet. Read-only (uses pd.read_*).

validate_dashboard_config

Validates a complete Vizro dashboard model configuration against the Pydantic models. On success returns runnable Python code and, for remote data, a PyCafe live-preview link (opened in the browser when auto_open is true). Should be run after every iteration.

validate_chart_code

Validates a user-created Vizro chart (a ChartPlan plus dataset metadata) and optionally opens the PyCafe preview link in a browser.

What this server can do

Vizro-MCP provides tools for these capabilities — tap one to see every MCP server that does the same:

When to use it

  • Generating a multi-page Vizro dashboard from a local or remote dataset by describing it in plain language
  • Creating and validating individual Plotly/Vizro charts with runnable, maintainable Python output
  • Getting a live PyCafe preview link to iterate on a dashboard's design until it is right
  • Exploring data with built-in sample datasets when you have none of your own
  • Producing validated, consistent dashboard config that is easy to alter, maintain and deploy

Security notes

The server only reads data and never writes, deletes or modifies data on your machine; data loading uses pandas read functions. There is currently no authentication to manage access, so run Vizro-MCP locally only and not as a hosted server. The load_and_analyze_data tool reads local files/URLs, and validate_dashboard_config / validate_chart_code can open a PyCafe live-preview link in your browser (disable via auto_open=false). Data is sent to your model vendor through your host LLM application; users are responsible for use of any third-party generative AI tools and their outputs.

Vizro-MCP FAQ

Which LLM clients are supported?

Vizro-MCP is best used with Claude Desktop, Cursor or VS Code, but it works with most LLM products that support MCP server configuration. For best results the docs recommend a high-performing model (e.g. claude-4-sonnet) rather than an 'auto' setting.

How do I install it?

Add a standard mcpServers block to your client. The uv option uses command 'uvx' with args ['vizro-mcp'] (install uv first). Alternatively, use Docker with command 'docker' and args ['run','-i','--rm','mcp/vizro']; mount your data directory with --mount to access local files.

Is my data safe?

The server only reads data and never writes, deletes or modifies anything on your machine; data loading uses pandas read functions. Note that there is currently no authentication, so it should be run locally rather than as a hosted server, and your prompts/data are sent to your model vendor via your host LLM application.

What is the PyCafe link about?

The validate_dashboard_config and validate_chart_code tools can open a live preview of your dashboard/chart on PyCafe (py.cafe). If you don't want the link opened automatically, set auto_open to false or tell the LLM not to open it.

Can it use my own data?

Yes. The load_and_analyze_data tool accepts an absolute local path or a URL and supports CSV, JSON, HTML, Excel, ODS and Parquet files. With the Docker setup you must mount the data directory or file into the container.

Alternatives to Vizro-MCP

Compare all alternatives →

Official MCP server providing persistent, file-backed knowledge-graph memory across sessions.

Verified
stdio (local)
No auth
TypeScript
9 tools
Updated 5 months agoRepo

Structured step-by-step reasoning tool for breaking problems into revisable thought sequences.

Verified
stdio (local)
No auth
TypeScript
1 tool
Updated 6 months agoRepo

Fully managed remote server for AWS docs, blogs, What's-New and Well-Architected guidance — no key.

Verified
HTTP (remote)
No auth
Hosted
6 tools
Updated 5 months agoRepo