{
  "markdown": "# mcp-ml-lab\n\n**Let AI agents run real ML experiments end-to-end.**\n\n[![PyPI](https://img.shields.io/pypi/v/mcp-ml-lab)](https://pypi.org/project/mcp-ml-lab/)\n[![Python](https://img.shields.io/pypi/pyversions/mcp-ml-lab)](https://pypi.org/project/mcp-ml-lab/)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n\nAn MCP server that gives Claude (or any MCP-aware AI agent) the ability to\nprofile a CSV, define an ML task, tune XGBoost and LightGBM with Optuna,\nand produce a markdown report with feature importance — all from natural\nlanguage.\n\n## Why this exists\n\nThe existing ML-related MCP servers wrap MLflow, ZenML, or Weights & Biases\nand expose them as **read-only** — agents can browse experiment history but\ncan't actually *run* anything. `mcp-ml-lab` fills the gap: it lets agents\nexecute the full experimentation loop from a user's natural-language request.\n\nA user typing \"train a model on titanic.csv to predict survival\" should not\nneed to know what XGBoost is, what cross-validation is, or how to write a\nhyperparameter search. The agent handles all of that — `mcp-ml-lab` is the\ntools layer that makes it possible.\n\n## Quick start\n\n```bash\npip install mcp-ml-lab\n```\n\nAdd to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS):\n\n```json\n{\n  \"mcpServers\": {\n    \"ml-lab\": {\n      \"command\": \"mcp-ml-lab\"\n    }\n  }\n}\n```\n\nRestart Claude Desktop. The five tools below are now available.\n\n## Example queries\n\nTry these in Claude Desktop with `mcp-ml-lab` connected:\n\n- *\"Profile this CSV and tell me if there's class imbalance\"*\n- *\"Compare XGBoost and LightGBM on titanic.csv with 60 seconds of tuning\"*\n- *\"Show me the top 10 features the winning model used\"*\n- *\"How did my last three experiments on the wine dataset compare?\"*\n\n## Tools\n\n| Tool | What it does |\n|---|---|\n| `inspect_data` | Profile a CSV — shape, dtypes, nulls, summary stats, class balance |\n| `define_task` | Register an ML task (CSV + target + classification/regression) |\n| `run_experiment` | Train one or more models, optionally tuning with Optuna |\n| `get_results` | Markdown report with metrics, hyperparameters, feature importance |\n| `compare_runs` | Side-by-side comparison of multiple experiments |\n\nEach tool's full signature is in its docstring; they self-document to the LLM.\n\n## How it works\n\n```\nClaude Desktop  ───MCP/stdio───  mcp-ml-lab server\n                                  │\n                                  ├── data.py        CSV loading, schema inference, preprocessor\n                                  ├── trainers/      Pluggable XGBoost + LightGBM adapters\n                                  ├── search.py      Stratified CV + Optuna TPE tuning\n                                  ├── metrics.py     Accuracy, F1, AUC, log loss\n                                  ├── storage.py     SQLite via SQLAlchemy 2.0\n                                  └── reporting.py   Markdown report generation\n```\n\nAll experiments and trials are persisted to `~/.mcp-ml-lab/store.db` so an\nagent can refer back to runs across sessions.\n\nFull design notes in [ARCHITECTURE.md](ARCHITECTURE.md).\n\n## Roadmap\n\nv0.1.0 ships classification with XGBoost and LightGBM. Planned for v0.2.0+:\n\n- Regression tasks\n- Time series forecasting (sktime / darts integration)\n- Deep learning baselines (pytorch-tabular)\n- Optuna multi-objective search (accuracy × latency × model size)\n- Persisted model artifacts with Docker reproducibility\n- Permutation feature importance (bias-free alternative to gain importance)\n- Notebook export — emit a Jupyter notebook that reproduces the winning run\n\nIssues and PRs welcome.\n\n## Development\n\n```bash\ngit clone https://github.com/rohithraju-ops/mcp-ml-lab.git\ncd mcp-ml-lab\npython -m venv .venv && source .venv/bin/activate\npip install -e \".[dev]\"\npytest -v\n```\n\nLocal debugging is easiest with the [MCP Inspector](https://github.com/modelcontextprotocol/inspector):\n\n```bash\nnpx @modelcontextprotocol/inspector mcp-ml-lab\n```\n\n## License\n\nMIT.\n\n  <!-- mcp-name: io.github.rohithraju-ops/mcp-ml-lab -->",
  "bytes": 4087,
  "sha": "ca75c1b6c39b3d66362772899a12437122fad18f032db1cc4e9a70a719712ffc",
  "repo_slug": "rohithraju-ops/mcp-ml-lab",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_rohithraju_ops_mcp_ml_lab_daf2ca50/readme"
}