- Home
- MCP servers
- MLflow
MLflow
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"kkruglik-mlflow-mcp": {
"command": "uvx",
"args": [
"mlflow-mcp"
],
"env": {
"MLFLOW_TRACKING_URI": "http://localhost:5000"
}
}
}
}You run an MCP server that lets large language models interact with an MLflow tracking server through natural language. With this server, you can explore experiments, analyze runs, compare metrics, access artifacts, and browse the model registry in a conversational workflow.
How to use
Connect your MCP client to the MLflow MCP server using the provided command. Once connected, you can ask for lists of experiments, inspect run details, filter runs by metrics or tags, view metric histories, compare runs side by side, and navigate the model registry. Use natural language prompts such as requesting the top runs by a specific metric, retrieving parameter values across runs, or listing production models in the registry.
How to install
Prerequisites you need before installing include Python 3.10 or newer and access to an MLflow tracking server that you want to connect to. You also need a way to run MCP server processes, such as uvx or a Python environment where the MCP client can be executed.
Option 1: Install the MCP server package globally and run with uvx (recommended). Run these commands in sequence:
# Run directly without installation
uvx mlflow-mcp
# Or install globally
pip install mlflow-mcp
Configuration and startup
The MCP server is configured to connect to your MLflow tracking server via an environment variable that you pass to the server process. The following configuration snippet shows how to declare an MCP server named mlflow that runs under uvx and forwards the MLflow tracking URI.
{
"mcpServers": {
"mlflow": {
"command": "uvx",
"args": ["mlflow-mcp"],
"env": {
"MLFLOW_TRACKING_URI": "http://localhost:5000"
}
}
}
}
Additional installation flow from source
If you prefer building from source, you can clone the project, synchronize dependencies, and run the MCP server locally. Use these steps to set up the development flow.
git clone https://github.com/kkruglik/mlflow-mcp.git
cd mlflow-mcp
uv sync
uv run mlflow-mcp
Environment variables
Set the MLflow tracking server URL via the environment variable MLFLOW_TRACKING_URI. This is required to point the MCP server to your MLflow instance.
Security and health
Ensure access to the MLflow tracking server is properly secured if it contains sensitive data. You can periodically check the MCP server health to verify connectivity to the tracking server using the health command exposed by the MCP tooling.
Notes and best practices
Start by pointing the MLFLOW_TRACKING_URI to a reachable MLflow tracking server. Once connected, you can perform end-to-end queries and analyses through natural language prompts, such as listing experiments, filtering runs by tags, or identifying the best-performing model by a specific metric.
Tools and endpoints available
The MCP server exposes a rich set of capabilities to interact with MLflow data, including listing experiments, retrieving metrics and parameters, querying runs, accessing artifacts, and exploring the model registry. Use natural language prompts to navigate experiments, runs, metrics, artifacts, and registered models.
Available tools
get_experiments
List all experiments in the MLflow tracking server.
get_experiment_by_name
Retrieve a specific experiment by its name.
get_experiment_metrics
Discover all unique metrics for an experiment.
get_experiment_params
Discover all unique parameters for an experiment.
get_runs
Fetch runs for an experiment with details and support for pagination and sorting.
get_run
Get detailed information for a specific run.
query_runs
Filter and sort runs using expressions like metric thresholds.
search_runs_by_tags
Find runs by tags with pagination support.
get_run_metrics
Get all metrics for a specific run and their histories.
get_run_metric
Get full metric history for a run and a given metric.
get_run_artifacts
List artifacts for a run and browse directories.
get_run_artifact
Download a specific artifact for a run.
get_artifact_content
Read artifact content (text or JSON) for inspection.
get_best_run
Identify the best run by a chosen metric, with optional ascending order.
compare_runs
Provide a side-by-side comparison for multiple runs.
get_registered_models
List all models registered in the model registry.
get_model_versions
List all versions for a given registered model.
get_model_version
Retrieve version details including metrics for a model version.
health
Check server connectivity and readiness.