Both halves are handled — the query against your data and the rendering — and because the chart choice comes from rules rather than another model call, the same question gives the same chart and nothing leaves the machine on the DuckDB path.
A visualization server that pairs a database connection with chart generation. You describe what you want to see, it queries and renders a Plotly chart as an interactive HTML widget, and the chart suggestion is rule-based rather than delegated to another model — so it works offline once configured.
- Eight chart types with the case each one serves: bar for comparing categories, line for trends over time, scatter for relationships, pie for proportions, histogram for distributions, box for comparing distributions, heatmap for correlations, area for cumulative trends
- Data access in plain language — list the tables, analyse one, or query the top rows by a measure
- DuckDB locally, with CSV import and an interactive database browser, plus the ability to switch to another `.duckdb` file mid-conversation
- Databricks as an alternative — browse catalogs, list schemas, switch catalog, and check which database you are connected to
- Automatic statistical analysis and pattern detection alongside the chart
- A CLI: `mcp-viz configure` sets up the client, `mcp-viz status` reports what is configured, `mcp-viz test` exercises the server, `mcp-viz create-db` builds a sample database, and the `mcp-viz databricks` subcommands configure, test and remove credentials
`pip install mcp-visualization-duckdb` brings DuckDB and everything else with it — no separate database install. Then `mcp-viz configure` detects your platform, finds the client config, backs it up, writes the entry and validates the result. For Databricks you need the workspace hostname, the SQL warehouse HTTP path and a personal access token, entered through `mcp-viz databricks configure`, which stores them in your system keyring or an encrypted file rather than in plain text or shell history. Setup is one-time; you reconfigure when a token expires or you move workspace or warehouse. SQL injection protection is built in.
One command — pip install mcp-visualization-duckdb && mcp-viz configure
