Xplainable MCP Server logo

Xplainable MCP Server

Train, explain, optimise and deploy transparent glass-box ML models via workflow tools.

Install Xplainable MCP Server

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "xplainable-mcp-server": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/xplainable/xplainable-mcp-server.git",
        "xplainable-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

uvx --from git+https://github.com/xplainable/xplainable-mcp-server.git xplainable-mcp

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 4d ago.

Overview

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

6/6 checks healthy over the last 38d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev · xplainable-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1Stargazers on the source repository.
Last commit1mo agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

Xplainable MCP Server

A Model Context Protocol server for the Xplainable platform. It lets an LLM agent (Claude, or any MCP client) train, deploy, optimise, and explain transparent machine-learning models. The agent is the orchestrator: it inspects the data, decides features and preprocessing, trains, reads the metrics, and iterates.

Training always runs server-side on the Xplainable platform — the MCP host never fits a model locally.

Two Ways to Use It

  1. Hosted — connect your MCP client to https://mcp.xplainable.io (OAuth login, no installation).
  2. Local — run the server yourself over stdio with an Xplainable API key. This is what the rest of this README covers.

Quick Start (Local)

1. Get an API key

Create one at platform.xplainable.io.

2a. Claude Code

Terminal
claude mcp add xplainable \
  -e XPLAINABLE_API_KEY=your-api-key-here \
  -- uvx --from git+https://github.com/xplainable/xplainable-mcp-server.git xplainable-mcp

2b. Claude Desktop

Add to your MCP settings file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
config.json
{
  "mcpServers": {
    "xplainable": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/xplainable/xplainable-mcp-server.git", "xplainable-mcp"],
      "env": {
        "XPLAINABLE_API_KEY": "your-api-key-here"
      }
    }
  }
}

No uv? Clone and install instead:

bash
git clone https://github.com/xplainable/xplainable-mcp-server.git
cd xplainable-mcp-server
python -m venv .venv && source .venv/bin/activate
pip install -e .

then use "command": "/path/to/xplainable-mcp-server/.venv/bin/xplainable-mcp" (no args) in the config above.

3. Try it

Ask your agent: "What models and datasets do I have?" — it should call models_list_team_models and datasets_list_team_datasets.

The Iterate Loop

The tool surface puts the agent in control of every training decision:

  1. datasets_list_team_datasets / models_list_team_models / deployments_list_deployments — see the team's assets
  2. datasets_preview_dataset_json(dataset_id) — inspect columns, types, and sample rows; decide the target, columns to drop, and whether preprocessing is needed
  3. (Optional) preprocessing_list_available_transformers → preprocessing_create_preprocessor_from_spec → preprocessing_preview_from_data to verify transformed output 3b. Declare feature relationships once per dataset: datasets_infer_relationships proposes derived columns, implications and monotonic hints with evidence; commit with datasets_set_relationships (re-apply to old versions with models_apply_relationships)
  4. models_train_model(dataset_id, target_column, model_name, ...) — synchronous server-side training; returns model/version IDs, train/test metrics, and feature importances
  5. Inspect: models_get_feature_info / gpt_explain_model; compare train vs test metrics
  6. Iterate: models_refit_features for per-feature tuning, or train again with different features / preprocessing
  7. deployments_deploy(version_id) — deploy once satisfied (then deployments_activate_deployment)
  8. Act on the model: inference_predict / optimisers_run_optimiser / reports_create_report (+ poll reports_get_job_status)

Tool Surface

Tools are generated at server startup from @mcp_tool-decorated methods in the xplainable-client package — there are no checked-in generated files. The surface is flat: every registry tool is exposed, with MCP annotations derived from its category (read → read-only hint, write → destructive hint).

Configuration

VariableRequiredDescription
XPLAINABLE_API_KEYyes (local)API key from platform.xplainable.io
XPLAINABLE_HOST / XPLAINABLE_HOSTNAMEnoPlatform host override (defaults to https://platform.xplainable.io). Set both to the same value.
XPLAINABLE_INFERENCE_HOSTnoInference server override for the direct-to-inference tools (inference_score_dataset, optimisers_run_portfolio); defaults to https://inference.xplainable.io. Set it whenever the platform host is non-prod.
XPLAINABLE_ORG_ID / XPLAINABLE_TEAM_IDnoOrg/team binding, if your API key is not bound to a team
MCP_TRANSPORTnostdio (default) or streamable-http
LOG_LEVELnoDEBUG, INFO (default), WARNING, ERROR

See .env.example. The API key is read from the environment only and is never exposed through a tool.

CLI

bash
xplainable-mcp-cli list-tools            # list all available tools
xplainable-mcp-cli validate-config       # check env configuration
xplainable-mcp-cli test-connection       # test API connectivity
xplainable-mcp-cli generate-docs         # generate tool documentation

Docker (HTTP mode)

bash
cp .env.example .env   # fill in your API key
docker compose up --build

The container serves streamable-HTTP on port 8000 with a /health endpoint. For anything beyond localhost, terminate TLS at a reverse proxy.

Development

bash
git clone https://github.com/xplainable/xplainable-mcp-server.git
cd xplainable-mcp-server
pip install -e ".[dev]"

pytest            # run tests
ruff check .      # lint

Runtime tool generation

Client-backed tools are generated at import time by xplainable_mcp/runtime_tools.py from the @mcp_tool registry in xplainable-client — there is no sync step. Upgrading the pinned xplainable-client version is all it takes to pick up new or changed tools; the test suite (tests/test_surface.py) pins the tool count so surface changes are always deliberate.

Compatibility

MCP Serverxplainable-clientfastmcp
current (main)>=1.13.0>=2.0.0,<3.0.0

Contributing

See CONTRIBUTING.md.

License

MIT License — see LICENSE.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Xplainable MCP Server

xplainable-mcp-server is an MCP server that lets an LLM agent use the Xplainable platform to train, explain, optimise, and deploy transparent machine-learning models through workflow tools. It inspects datasets, supports preprocessing and feature relationships, returns training metrics and feature importances, and can run inference, optimisation, and reporting. Training runs server-side, not loca…

You can connect through the hosted server at https://mcp.xplainable.io using OAuth, or run the server locally over stdio with an Xplainable API key. Local setup can use uvx with the GitHub repository or a cloned repository installed into a Python virtual environment.

Train a model by inspecting a dataset, selecting a target and features, optionally configuring preprocessing and relationships, then calling models_train_model with the dataset ID and target column. Training runs synchronously on the Xplainable platform and returns model and version IDs, train/test metrics, and feature importances.

No, xplainable-mcp-server always trains models server-side on the Xplainable platform. The MCP host does not fit models locally; the agent orchestrates dataset inspection, feature and preprocessing decisions, training, metric review, and iteration through the available workflow tools.

Deploy a trained model version with deployments_deploy, activate it with deployments_activate_deployment, and then use inference_predict for predictions. You can also run optimisers_run_optimiser for optimisation or create reports with reports_create_report and check report progress using reports_get_job_status.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewXplainable MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/xplainable-mcp-server?style=directory)](https://allmcps.com/mcp/xplainable-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/xplainable-mcp-server"><img src="https://allmcps.com/api/badge/xplainable-mcp-server?style=directory" alt="Xplainable MCP Server on AllMCPs" /></a>