MCP server + CLI

Dolex on the
command line.

Dolex ships as both an MCP server and a CLI — let Claude drive it, or run it yourself with a single dolex command.

The same analysis engine and 43 chart types your AI assistant uses, available straight from the shell. Point dolex at a CSV and get a chart, a SQL answer, or a full analysis plan — built for scripts, CI, and pipelines.

npm install -g @outsidedata/dolexFull CLI reference →
~/data — dolex
$ dolex visualize sales.csv -i "compare revenue by region" ✓ bar "Revenue by region" • Bar Chart (score: 75): default comparison — categories with one numeric value data 6 rows × 2 cols chart ~/.dolex/charts/chart-spec-d6f07a5c.html hash spec-d6f07a5c $ dolex query sales.csv "SELECT region, MEDIAN(revenue) m FROM sales GROUP BY 1" region m────── ─────East 21000West 14300$

Charts default to ~/.dolex/charts/ — pipe-friendly via --stdout / --json.

Two frontends, one core

Two doors to the same engine — your AI assistant drives it in conversation, or you run it yourself from the shell.

For AI assistants

MCP server

Register Dolex once and Claude gains 22 tools — connect CSV files or a live Postgres/Mongo database, query, auto-analyze, and visualize, all in conversation. Runs locally; CSVs never leave your machine, and database queries hit only your own infrastructure.

$ dolex mcp
For scripts & direct use

Command line

Run the same toolkit yourself with a dolex command — composable in shell scripts, CI, and Makefiles, or a one-liner to chart a CSV. Reads a CSV file, a JSON array on stdin, or a registered source.

$ dolex visualize sales.csv -i "trend over time"
Commands

One binary, twelve verbs

Chart
Turn data into a chart for its shape
2
visualize
Render a chart from your data
Matches a pattern to your data and intent, writes a self-contained HTML chart (optionally a PNG).
e.g.dolex visualize sales.csv -i "revenue by region"
refine
Tweak a chart by its hash
Sort, filter, limit, recolor, switch chart type — across separate invocations.
e.g.dolex refine spec-1a2b --sort desc --limit 10
Explore
Query and understand your data
4
query
Run SQL, print rows
Full SQL with custom aggregates (MEDIAN, P25/P75, STDDEV). Output as table, json, csv, or ndjson.
e.g.dolex query diamonds.csv "SELECT cut, MEDIAN(price) …"
analyze
Auto-generate an analysis plan
Classifies columns and proposes prioritized analyses with ready-to-run SQL for each.
e.g.dolex analyze diamonds.csv
describe
Profile columns
Types, roles, distributions, stats, and sample rows for every column.
e.g.dolex describe diamonds.csv
check
Audit data quality & footguns
Type traps, sentinels, leaked/identical columns, duplicate rows, outliers. Exits non-zero on HIGH findings.
e.g.dolex check diamonds.csv
Derived columns
Persisted transforms that survive across commands
3
transform
Add a derived column
Define a new column with an expression; it persists to a sidecar manifest and is visible to later commands.
e.g.dolex transform diamonds.csv --create ppc --expr "price / carat"
columns
List columns by layer
See source / derived / working columns for a dataset.
e.g.dolex columns diamonds.csv
drop
Remove derived columns
Drop derived or working columns in dependency order.
e.g.dolex drop diamonds.csv ppc
Reference & server
Browse patterns, manage sources, run the MCP server
4
patterns
Browse all 43 chart types
List every pattern by category, or show one in detail.
e.g.dolex patterns
sources
Manage data sources
Register CSV files, Postgres, or MongoDB by name; shared with the MCP server.
e.g.dolex sources add sales ~/data/sales.csv
deps
Check environment capabilities
Report which source types and optional features are available here, and how to enable the rest.
e.g.dolex deps
mcp
Run the MCP stdio server
The same binary becomes the MCP server for Claude Desktop / Code.
e.g.dolex mcp
43 chart types
Bump charts, beeswarms, Sankeys, ridgelines, choropleths — Dolex matches the visualization to the shape of your data and the question being asked.
Real SQL engine
In-memory SQLite over your CSVs with custom aggregates, window functions, time bucketing, and joins. Handles 500k+ rows — no code generation.
100% offline
Charts render as self-contained HTML with embedded D3 — zero CDN calls. 33 TopoJSON maps ship with the package. Your data stays on your machine.
PNGHTML charts, querying, and analysis need nothing extra. Rendering a chart straight to a .png (the --png flag) is opt-in — enable it once with npm install playwright && npx playwright install chromium.

Install it and chart something

One global install gets you the dolex command and the MCP server.

npm install -g @outsidedata/dolex