Stats Compass MCP Server

Turn your LLM into a data analyst.

README.md

stats-compass-mcp

Turn your LLM into a data analyst. Multiple data science tools via MCP.

Quick Start

pip install stats-compass-mcp

Claude Desktop

stats-compass-mcp install --client claude

VS Code (GitHub Copilot)

stats-compass-mcp install --client vscode

Claude Code (CLI)

claude mcp add stats-compass -- uvx stats-compass-mcp run

Restart your client and start asking questions about your data.

What Can It Do?

Category Examples
Data Loading Load CSV/Excel, sample datasets, list DataFrames
Cleaning Drop nulls, impute, dedupe, handle outliers
Transforms Filter, groupby, pivot, encode, add columns
EDA Describe, correlations, hypothesis tests, data quality
Visualization Histograms, scatter, bar, ROC curves, confusion matrix
ML Workflows Classification, regression, time series forecasting

Run stats-compass-mcp list-tools to see all available tools.

How to Prompt

Start your message with "Use stats compass to..." — this tells the AI to use the Stats Compass tools instead of trying to write code or use other methods.

Use stats compass to load ~/Downloads/sales.csv and run EDA on it
Use stats compass to find my CSV files in Downloads
Use stats compass to clean the dataset and handle missing values
Use stats compass to create a histogram of the price column
Use stats compass to test if there's a significant difference in scores between group A and B
Use stats compass to train a classification model to predict churn

Tip: Without this prefix, some AI clients may try to write Python code or use shell commands instead of the Stats Compass tools — especially for tasks like finding files on your machine.

Loading Files

Local mode: Start with "Use stats compass to load..." and provide the file path or folder.

Use stats compass to load the CSV at ~/Downloads/sales.csv
Use stats compass to find my data files in ~/Documents

Remote/HTTP mode: Use the upload feature (see below).

Remote Server Mode

For Docker deployments or multi-client setups:

stats-compass-mcp serve --port 8000

File Uploads

When running remotely, users can upload files via browser:

You: I want to upload a file
AI: Open this link to upload: http://localhost:8000/upload?session_id=abc123

[Upload in browser]

You: I uploaded sales.csv
AI: ✅ Loaded sales.csv (1,000 rows × 8 columns)

Downloading Results

Export DataFrames, plots, and trained models:

You: Save the cleaned data as a CSV
AI: ✅ Saved. Download: http://localhost:8000/exports/.../cleaned_data.csv

Connect Clients to Remote Server

VS Code (native HTTP support):

{
  "servers": {
    "stats-compass": { "url": "http://localhost:8000/mcp" }
  }
}

Claude Desktop (via mcp-proxy):

{
  "mcpServers": {
    "stats-compass": {
      "command": "uvx",
      "args": ["mcp-proxy", "--transport", "streamablehttp", "http://localhost:8000/mcp"]
    }
  }
}

Docker

docker run -p 8000:8000 -e STATS_COMPASS_SERVER_URL=https://your-domain.com stats-compass-mcp

Client Compatibility

Client Status
Claude Desktop ✅ Recommended
VS Code Copilot ✅ Supported
Claude Code CLI ✅ Supported
Cursor ✅ Supported
GPT / Gemini ⚠️ Partial

Configuration

Variable Default Description
STATS_COMPASS_PORT 8000 Server port
STATS_COMPASS_SERVER_URL http://localhost:8000 Base URL for upload/download links
STATS_COMPASS_MAX_UPLOAD_MB 50 Max upload size

Development

See CONTRIBUTING.md for development setup.

🙏 Credits

Landing page template by ArtleSa (u/ArtleSa)

License

MIT

Tools 6

data_loadingLoad CSV/Excel files, sample datasets, and list available DataFrames.
data_cleaningPerform cleaning tasks such as dropping nulls, imputing, deduplicating, and handling outliers.
data_transformsApply transformations like filtering, grouping, pivoting, encoding, and adding columns.
edaPerform Exploratory Data Analysis including descriptions, correlations, hypothesis tests, and quality checks.
visualizationGenerate plots including histograms, scatter plots, bar charts, ROC curves, and confusion matrices.
ml_workflowsExecute machine learning tasks including classification, regression, and time series forecasting.

Environment Variables

STATS_COMPASS_PORTServer port
STATS_COMPASS_SERVER_URLBase URL for upload/download links
STATS_COMPASS_MAX_UPLOAD_MBMax upload size

Try it

Use stats compass to load ~/Downloads/sales.csv and run EDA on it
Use stats compass to clean the dataset and handle missing values
Use stats compass to create a histogram of the price column
Use stats compass to test if there's a significant difference in scores between group A and B
Use stats compass to train a classification model to predict churn

Frequently Asked Questions

What are the key features of Stats Compass?

Load and explore CSV/Excel datasets. Automated data cleaning and outlier handling. Advanced data transformations and pivoting. Comprehensive EDA and statistical hypothesis testing. Built-in visualization and ML model training.

What can I use Stats Compass for?

Quickly analyzing local CSV files without writing manual Python scripts. Cleaning messy datasets by asking the AI to handle nulls and duplicates. Generating statistical visualizations for reports directly from raw data. Rapid prototyping of machine learning models for classification or forecasting.

How do I install Stats Compass?

Install Stats Compass by running: pip install stats-compass-mcp

What MCP clients work with Stats Compass?

Stats Compass works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Stats Compass docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Open Conare