ServicesAboutNotesContact Get in touch →
EN FR
Note

Visualization MCP Server Ecosystem

The available MCP servers for generating charts and interactive visualizations — AntV, Vega-Lite, DuckDB-Plotly, and how to pick between them.

Planted
mcpclaude codeaianalyticsdata engineering

Before building a custom visualization server, check what’s already available. The rendering layer is the one part of MCP Apps where existing servers cover most use cases. Your effort is better spent on the data access layer — connecting your actual data sources.

The Main Options

AntV mcp-server-chart

The broadest chart coverage. AntV’s server offers 26+ chart types including geographic maps, network graphs, and sankey diagrams — beyond what you’d get from a standard chart library.

Terminal window
npx -y @antv/mcp-server-chart

Installation is a single command, which matters when you’re deciding whether to spend an afternoon evaluating the concept or a week building custom infrastructure. Start here. If the chart types meet your needs, you’re done.

The server is production-ready and actively maintained by the AntV team. It handles the rendering; you feed it data. The tool call interface accepts structured data and chart type specification, then returns the rendered visualization.

When to use: rapid prototyping, wide chart type coverage, geographic or network visualizations.

Vega-Lite Server

Takes a declarative approach. Instead of specifying rendering logic (draw a bar here, color this axis), you describe the visualization structure — the grammar of graphics approach. The server handles the rendering based on your specification.

The upside: Vega-Lite specifications are precise and reproducible. The same specification always produces the same chart. This makes it easier to iterate on visualizations programmatically and to save specifications you want to reuse.

The downside: there’s a steeper conceptual model. The AI needs to generate valid Vega-Lite JSON, which it does reasonably well but not perfectly for complex specifications.

When to use: when reproducibility and specification precision matter more than simplicity; statistical charts where the grammar-of-graphics model is a natural fit.

mcp-visualization-duckdb

The privacy-first option. Combines Plotly visualizations with local DuckDB processing so data never leaves your machine. Useful when:

  • You’re analyzing data that shouldn’t be sent to external APIs
  • You want to query local files (CSV, Parquet, JSON) before deciding whether to load them to a warehouse
  • Client data handling agreements prohibit routing data through cloud services

DuckDB’s ability to query multiple file formats directly also makes this useful for ad-hoc analysis before your data pipeline is ready — you can visualize a CSV export without setting up a proper data source.

When to use: sensitive data, local file analysis, privacy requirements, air-gapped environments.

Data Source Servers (the Other Half)

Visualization servers are only half the equation. They render data — you still need servers that provide the data.

BigQuery: Google’s official MCP Toolbox for Databases provides bigquery-execute-sql, bigquery-forecast, and bigquery-conversational-analytics tools. See BigQuery MCP Server Setup for the full setup guide and authentication options.

dbt: dbt Labs’ official server exposes CLI operations (build, run, test, compile) and the semantic layer through list_metrics and query_metrics. The Fusion tier adds column-level lineage. See the dbt MCP server setup guide for configuration.

GA4: google-analytics-mcp exposes run_report with 200+ dimensions and metrics, plus real-time reporting. A natural language query like “revenue by country and device category for the last 30 days” returns structured data the visualization server can consume directly.

Looker: Google’s Looker MCP Server (launched August 2025) connects MCP to the Looker semantic layer. This means your MCP visualizations use governed metric definitions — the same revenue definition as your production dashboards — rather than raw SQL.

Combining Servers in Practice

A typical MCP Apps data workflow chains two servers: a data server that returns structured results, and a visualization server that renders them. You don’t always need to call the visualization server explicitly — the AI will use it when the user’s request implies a chart.

For ad-hoc exploration: BigQuery data server + AntV chart server. Ask questions in natural language, get charts.

For governed analysis: Looker MCP + AntV or Vega-Lite. The data comes from Looker’s semantic layer (consistent metrics, row-level security), the rendering comes from the chart server.

For sensitive data: local DuckDB source + mcp-visualization-duckdb. Everything stays on your machine.

When to Build Custom

Custom MCP Server Decision Criteria covers the general build-vs-browse decision. For visualization specifically: don’t build custom rendering unless none of the existing servers cover your chart types or design requirements.

Do build custom when your UI needs to go beyond charting — interactive filters, drill-down navigation, forms that call server-side tools, or complex state management. The Building MCP Apps Visualization Server note covers the TypeScript SDK for custom App development. Custom apps are appropriate when the interaction model matters, not just the chart type.

Example Configuration

Install the AntV server and connect your data source:

{
"mcpServers": {
"antv-chart": {
"command": "npx",
"args": ["-y", "@antv/mcp-server-chart"]
},
"bigquery": {
"command": "npx",
"args": ["-y", "@google/mcp-toolbox"],
"env": {
"GOOGLE_CLOUD_PROJECT": "your-project-id"
}
}
}
}

The interaction model: ask for data and a visualization in the same sentence — “Show me a bar chart of orders by country for the last 30 days” — and the AI routes to the right servers.