MCP server that profiles tabular data files (CSV, Parquet, Excel, JSON) for LLM agents like Claude.
data-profiler-mcp
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
> An MCP server that lets an LLM understand any tabular data file: point it at a CSV, Parquet, Excel or JSON file and get schema, distributions, data-quality flags and dtype suggestions back as structured JSON.
Stop pasting df.head() and df.info() into chat. Ask your assistant *"profile sales.csv"* and it reads the file itself, then tells you what is in it, what is wrong with it, and how to load it more efficiently.
Works with **Claude Desktop**, **Claude Code**, **Cursor**, or any MCP-compatible client.
---
Features
Seven focused tools, all returning clean JSON:
| Tool | What it does |
|---|---|
| profile_dataset | One-call overview: shape, memory, missing-value summary, duplicate rows, a per-column summary, and plain-language quality flags. |
| preview_data | The first / last / a random sample of n rows as real records. |
| column_stats | Deep dive on one column: full percentiles, skew/kurtosis, outliers (IQR), a histogram, or top values + string lengths for text. |
| detect_quality_issues | A data-quality audit: duplicates, high-missing and constant columns, numbers stored as text, mixed-type columns, whitespace padding, likely IDs, grouped by severity. |
| suggest_dtypes | Memory-saving / type-fixing recommendations (text to numeric, low-cardinality to category, integer/float downcasting) with estimated savings. |
| compare_datasets | Diff two files: added/removed columns, dtype changes, row-count delta, and per-column null-rate and mean side by side. |
| correlation_matrix | Correlations between numeric columns (Pearson / Spearman / Kendall): pairs ranked by strength, multicollinearity flags at \|r\| >= 0.9, and target-vs-rest ranking via column. |
Supported formats: **CSV, TSV, Parquet, Excel (.xlsx/.xls), JSON and JSON Lines**. Large files are read up to a row cap and clearly flagged as sampled.
No dataset at hand? examples/sample.csv is a small sales export with deliberate quality issues (missing regions, a duplicate row, a constant column, whitespace padding) -- ask your assistant to *"profile examples/sample.csv"* and see what it flags.
---
Install
No install needed to try it: open the Glama server page and use **Try in Browser** to call the tools against a sandbox (the repo ships examples/sample.csv at /app/examples/sample.csv to profile).
Requires Python 3.10+.
Requires MCP Python SDK 2.x (mcp>=2,<3). SDK 1.x is feature-frozen upstream and no longer supported here; 0.3.0 is the last release that ran on it.
Or run it straight from source without installing:
---
Configure your client
Claude Desktop
Edit claude_desktop_config.json
(macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\) and add:
Running from source instead of installing? Point it at the checkout: