key-drivers-mcp Server

MCP server for key driver and feature importance analysis based on rule mining

Documentation

key-drivers-mcp

MCP server for key driver and feature importance analysis. Load any CSV dataset and ask what drives an outcome — survival, credit default, diagnosis, income — and get a ranked breakdown with sub-driver analysis showing not just which factors matter, but how they combine to amplify or completely reverse each other.

Powered by araxai (CleverMiner association rule analysis).

Configuration

Add this to your MCP client config (e.g. Claude Code .mcp.json). No installation needed — uvx fetches and runs the package automatically.

{
  "mcpServers": {
    "key-drivers": {
      "type": "stdio",
      "command": "uvx",
      "args": ["key-drivers-mcp"]
    }
  }
}

No uv? Install it with pip install uv, or use pipx install key-drivers-mcp and set "command": "key-drivers-mcp" instead.

Tools

ToolPurpose
load_datasetLoad a CSV file into session memory
list_datasetsList all loaded datasets
find_driversFind key drivers of a target outcome
explain_segmentDriver analysis conditioned on a segment variable (CLARA)

Examples

Titanic — what drove survival?

"What are the key drivers to survive in titanic.csv?"

Baseline survival rate: 38.4%

DriverSurvival ratevs Baseline
Sex: female74.2%1.9× higher
Sex: male18.9%2.0× lower
Low fare ≤ £10.5020.9%1.8× lower
Deck D75.8%2.0× higher

Sub-drivers are returned automatically. Within male passengers, 1st class men recovered to 36.9% — nearly double the male average. Within low-fare passengers, women still survived at 60.8% while men reached only 10.7%.


Titanic — drill-down from global to a specific segment

"And within women in 3rd class, what helped survival?"

The global result shows sex as the top driver (women 74.2%, men 18.9%). Sub-drivers within women immediately reveal that 3rd class women dropped to 50% — a coin flip, far below the female average. That triggers a follow-up with filters={"sex": "female", "pclass": "3"}:

144 women in 3rd class — segment baseline: 50%

DriverSurvival ratevs Segment baseline
Embarked at Queenstown72.7%1.5× higher
Fare £6.75–£7.7772.4%1.4× higher
Embarked at Southampton37.5%1.3× lower

Queenstown passengers (mostly Irish emigrants boarding late in small groups) survived at nearly twice the rate of Southampton passengers — a pattern completely invisible in the global analysis. Each drill-down level answers a narrower question using the previous result as the starting point.


German Credit — how factors combine and reverse each other

"What are the key drivers for good credit?"

Baseline: 70% good credit rating

An overdrawn checking account drops approval to 50.7% — but the sub-driver analysis shows the outcome depends sharply on what else is true:

ProfileGood credit ratevs Baseline
Overdrawn checking account50.7%1.4× lower
Overdrawn + loan duration > 24 months34.4%2.0× lower
Overdrawn + critical credit history73.1%back to baseline
Long loan duration > 30 months52.0%1.3× lower
Long loan + no property38.9%1.8× lower
Long loan + no checking account79.3%1.1× higher

The same risk factor (overdrawn account) leads to very different outcomes depending on credit history. Borrowers with no checking account are actually safer on long loans — likely self-employed or asset-wealthy.


Diabetes — combinations push risk above 80%

"What are the key drivers for testing positive for diabetes?"

Baseline: 34.9% positive

DriverProbabilityvs Baseline
Glucose > 147 mg/dL74.3%2.1× higher
Glucose > 147 + age 27–3388.5%2.5× higher
Glucose > 147 + BMI 33.7–37.884.2%2.4× higher
Glucose > 147 + many pregnancies (>7)85.7%2.5× higher
Glucose ≤ 109 mg/dL14.0%2.5× lower
Age ≤ 2313.3%2.6× lower

High glucose is already a strong signal (74%), but combining it with age 27–33, elevated BMI, or high pregnancy count pushes risk above 84%. The tool surfaces these compound profiles in a single call.


Income — education can completely override marital status

"What drives income above $50K for women specifically?"

Using filters={"sex": "Female"} — women's baseline: 10.9% (vs 23.9% overall):

Profile>50K ratevs Women's baseline
Doctorate56.6%5.2× higher
Prof-school47.7%4.4× higher
Doctorate + married88.0%8.1× higher
Prof-school + married84.2%7.7× higher
Prof-school + never-married35.7%3.3× higher
Own-child relationship1.2%9.0× lower

Never-married women with a doctorate still reach 35.7% — three times the women's baseline — showing that education fully overrides the marital status penalty. The same inversion appears in the overall dataset: never-married alone → 4.5%, but never-married + Doctorate → 44.3%, almost twice the global baseline.


How it works

araxai uses association rule analysis (CleverMiner) to find statistically significant rules that explain why a target class occurs. Each driver rule reports:

  • probability — how often the target class occurs in that segment
  • vs_global_baseline — lift relative to the whole dataset
  • vs_parent_segment — lift relative to the parent rule (for sub-drivers)
  • strength+/- signs indicating rule reliability

Numeric columns are automatically binned into quantiles. The server enriches every top-level driver with a sub-analysis, so compound profiles like "overdrawn + long loan" or "high glucose + age 27–33" are returned in a single call.

Requirements

  • Python 3.11+
  • araxai >= 0.3.0
  • mcp[cli] >= 1.0.0