Change8

v3.15.0

📦 mlflowView on GitHub →
21 features🐛 44 fixes🔧 12 symbols

Summary

MLflow 3.15.0 introduces significant new features including the MCP Registry, enhanced MLflow Assistant with multi-LLM support, sharable table views, and proxy-less artifact transfers. It also brings numerous bug fixes and improvements across tracing, gateway, model registry, and UI components.

✨ New Features

  • Introduced MCP Registry for centralized cataloging, versioning, and sharing of Model Context Protocol servers with semantic-versioned configs, promotable aliases, tags, auto-discovered tools, and connection instructions.
  • MLflow Assistant now supports multiple LLM providers (Claude Code, Codex, OpenAI-compatible/Gateway endpoints) from a single settings page, displays live per-session token usage and estimated cost, and offers simplified setup via `mlflow agent setup`.
  • Added sharable table views for the Runs table, allowing users to save and share named views with specific columns, order, widths, filters, and sort settings via URL.
  • Implemented proxy-less artifact upload/download via presigned URLs for large transfers, enabling direct communication with cloud storage (e.g., S3) to reduce server load and timeouts. Falls back to proxied transfer for backward compatibility.
  • Multi-modal attachments are now supported in LLM judges (`make_judge()`) via the `get_span_image` tool, allowing evaluation of visual content (images, screenshots) by multimodal models.
  • Added Pydantic AI 2.x autologging support for Tracing/Tracking.
  • Added action recommendation for low-value issue detection results in Tracing/UI.
  • Supported per-endpoint budget policies in the AI Gateway.
  • Added `sap-ai-core:/` provider for SAP AI Core Orchestration v2 with `extra_headers` support for Evaluation/Gateway.
  • Migrated UC model artifact download to native temp-creds in Model Registry.
  • Simplified issue detection start modal in Gateway/Tracing/UI.
  • Enabled running issue detection in the background in Tracing/UI.
  • Gated UC model-registry client on native `/api/2.1` endpoints in Model Registry.
  • Enabled artifacts-only mode with workspaces in Docs/Tracking.
  • Stopped eagerly prefetching full neighboring traces in the tracing UI.
  • Authenticated OpenAI-protocol coding agents through the RBAC gateway in Docs/Gateway.
  • Added search traces functionality to the TypeScript SDK.
  • Added per-tool cards with a Monaco JSON editor and Format action to the Playground in Prompts/UI.
  • Redesigned Playground `Tools` settings with an Add-tools entry flow in Prompts/UI.
  • Added Cursor model catalog with Auto and Composer 2.5 pricing.
  • Supported numeric assessment trace filters in Tracing/Tracking.

🐛 Bug Fixes

  • Fixed computation of `mlflow.llm.cost` for Claude Code plugin traces on Databricks.
  • Fixed artifact direct download capability checks in the UI.
  • Fixed refreshing of traces saved-view on load across multiple windows.
  • Fixed UnauthorizedError constructor message.
  • Fell back to nested spans for Chat Sessions turn content.
  • Fixed experiment GC cascades for traces and logged models.
  • Fixed workspace-enabled tracking store crash-loop when the default experiment is renamed.
  • Fixed Kubernetes auth token extraction for `kubernetes-client` 36+.
  • Refreshed Assistant config when leaving settings to prevent stale provider indicator.
  • Fixed `imagePullSecrets` for garbage collection CronJob.
  • Lifted Assistant floating button above bottom-pinned action bars.
  • Fixed issue detection structured output schema.
  • Added `MLFLOW_ALLOW_PICKLE_DESERIALIZATION` guard to `mlflow.statsmodels` flavor.
  • Preserved static prefixes in notebook trace renderer URL.
  • Fixed blank and fields in run detail sidebar.
  • Normalized reasoning content parts for `ChatAgentMessage` in `parse_message`.
  • Fixed Evaluation Runs `Actions` dropdown remaining clickable when no runs are selected.
  • Surfaced truncated assistant streams as errors instead of a silent `done`.
  • Honored experiment grants on `--artifacts-only` servers when workspaces disabled.
  • Bound get-history-bulk-interval memory by sampling metric history by row.
  • Enforced artifact authorization on presigned download route in basic-auth.
  • Preserved explicit expectations in `mlflow.genai.evaluate`.
  • Supported Portkey routing configuration in the AI Gateway.
  • Showed input modal submission errors inline instead of a transient toast in `GenericInputModal`.
  • Enforced experiment permission on online scoring config endpoints.
  • Propagated contextvars into trace read thread pool workers.
  • Fixed Windows path handling in artifact downloads.
  • Fixed sidebar navigation and workflow type not updating on URL navigation or browser Back/Forward.
  • Did not send `stream_options` from the Assistant to the gateway.
  • Fixed MemAlign guideline distillation against Databricks structured-output models.
  • Sorted tags alphabetically in runs tag multiselect dropdown.
  • Fixed LLM cost on autologged `ChatDatabricks` traces by preferring `ls_provider`.
  • Fixed pytorch `pt2` export for batch-size-1 `input_example` (use `Dim.AUTO`).
  • Fixed double-counted trace token usage for rollup parent spans in `SqlAlchemyStore.log_spans`.
  • Fixed `MlflowSparkStudy` pruner and direction handling.
  • Fixed gateway Try-in-Browser traces rendering as raw `kvlist` data in the UI.
  • Fixed role modal resource pickers failing with `FEATURE_DISABLED` when workspaces are disabled.
  • Restored oneof on TemporaryCredentials.credentials.
  • Fixed runs-table column reordering before pinned anchors.
  • Fixed admin permission grants failing with `FEATURE_DISABLED` when workspaces are disabled.
  • Fixed `Columns` dropdown anchoring on the runs table.
  • Fixed artifact viewer crash on text files with many lines.
  • Fixed async trace export dropping workspace context.
  • Fixed OpenAI agent Generation span attributes storage.

Affected Symbols