Launch the MLflow server with --backend-store-uri postgresql://<user>:<pass>@<host>/<db> and --default-artifact-root s3://<bucket>/mlflow
Ensure the server process has IAM role or environment credentials granting s3:PutObject and s3:GetObject on the artifact bucket
Set MLFLOW_TRACKING_URI in client environments to point to the server; use mlflow.set_tracking_uri() in notebooks
Create the PostgreSQL database and run the schema migration by starting the server once — MLflow auto-migrates via Alembic
Configure artifact proxying with --serve-artifacts if clients lack direct S3 access, routing all artifact IO through the server
Known gotchas
Without --serve-artifacts, every client must have its own S3 credentials; the server does not proxy artifacts by default
PostgreSQL connection pool exhaustion is common under many concurrent runs — tune --gunicorn-opts to limit workers or use a connection pooler like PgBouncer
The SQLAlchemy backend does not support concurrent schema migrations; running two servers against a fresh DB simultaneously can corrupt the migration state
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp