Skip to main content
For details about versioning, see our Versioning Policy.

6.1.24

2026-08-13

Added

  • PIVOT-14439 Chat: Dynamic tool discovery can now be turned off with spring.ai.chat.client.tool-search-advisor.enabled=false, which sends the whole tool set to the model on every request instead. It stays enabled by default. See Configure Visualize This.
  • PIVOT-14439 Atoti Python SDK: Added the AiConfig.dynamic_tool_discovery attribute to turn dynamic tool discovery off. See Configure Visualize This.

Fixed

  • PIVOT-14402 Atoti Intelligence: A license that does not enable the AI components is now reported at startup. When an Atoti AI module is on the classpath but the license misses the ai-essentials component, a warning explains that the /activeviam/ai REST service is not registered, which previously surfaced only in Atoti UI as “Unable to find the AI service on any of the servers”. The ai-extension component is reported the same way when the MCP server starter is present.
  • PIVOT-14292 Atoti Intelligence: A license without the Ai Extension tier now keeps the MCP server off even when the application sets spring.ai.mcp.server.enabled=true. The tier check is applied at the highest property precedence, so it can no longer be overridden from application.yml, an environment variable or a command-line argument. A license enabling ai-extension without ai-essentials no longer starts the MCP server either, as the Extension tier builds on Essentials.
  • PIVOT-14310 Chat: AG-UI streaming responses now carry X-Accel-Buffering: no and Cache-Control: no-cache, no-transform so that reverse proxies do not buffer or compress the event stream. A buffering proxy delivered the tool-call events to the browser only at the end of the run, so client tools always hit the server-side timeout. Client tool timeouts, stale tool results and retried chat prompts are now logged. See Monitoring.

6.1.23

2026-07-09

Added

  • PIVOT-14139 Visualize This: The chat assistant now uses the Tool Search Tool pattern for dynamic tool discovery. Instead of sending every available tool to the model at the start of a conversation, the model is offered a single synthetic search tool and retrieves only the relevant tools on demand. This reduces token consumption and improves tool-selection accuracy.
  • PIVOT-14122 Visualize This: Added a Python API for the chat assistant. Session.chat exposes the chat configuration from the Atoti Python SDK, including Chat.system_prompt to read and customize the system prompt directly from Python. See Set up Visualize This in Python.
  • PYTHON-922 Auto-Explain: Added a Python API to configure Auto-Explain from the Atoti Python SDK. Cube.auto_explain exposes the tuning constants, including drill-down depth, absolute and relative contribution thresholds, the variation threshold, entropy and member limits, and included or excluded hierarchies overall and per measure. See Set up Auto-Explain in Python.

Changed

  • PYTHON-859 Auto-Explain: Root-cause analysis (root-cause members, contribution percentages, and contribution tables) no longer requires an LLM and is always available without an AI provider configured. An LLM is now only required for the optional AI summary. When no LLM is configured, the AI summary is unavailable. See Set up Auto-Explain in Java or in Python.

Fixed

  • PIVOT-14236 Chat: Fixed filters being added without their members. Member validation now resolves members by their full name path, so the assistant reliably finds them in the cube.
  • PIVOT-14139 Visualize This: Added a dependency on the Spring AI Community tool-search-tool library (org.springaicommunity:tool-search-tool). On the Spring AI 1.1.x line, the Tool Search Tool advisor is not part of the core Spring AI release (it ships in Spring AI core from 2.0 onwards), so this community artifact is required to enable the feature.

6.1.22

2026-06-18 No changes were made since the last release.

6.1.21

2026-06-17 No changes were made since the last release.

6.1.20

2026-05-29

Added

  • PIVOT-12824 Auto-Explain: Added observability instrumentation. Auto-Explain now emits OpenTelemetry spans and metrics that cover request handling, recursive analysis and summary generation. See Monitoring.
  • PIVOT-12824 Visualize This: Added observability instrumentation. The chat assistant now emits OpenTelemetry spans and metrics that cover conversation lifecycle, prompt execution and tool invocations. See Monitoring.
  • PIVOT-12996 Auto-Explain: Exposed Auto-Explain as a Spring AI tool so it can be invoked from Visualize This as part of a chat conversation.
  • PIVOT-13680 Visualize This: AI cube descriptions now expose XMLA properties, and dimension, hierarchy and level descriptions are nested under their parent to give the model a structured view of the cube. See How to configure Visualize This.
  • PIVOT-13832 Added a customizable AI disclaimer that is returned with every AI response and displayed in the UI. A default disclaimer is provided when none is configured. See Set up a custom disclaimer in Java or in Python.
  • PIVOT-13978 MCP Server: Added an MCP credentials page in starter-ai-mcp-server that lets users mint and download tokens to connect MCP clients to the Atoti MCP server. See MCP credentials page.
  • PIVOT-13970 MCP Server: Added self-issued OAuth 2.1 mode, where the Atoti server acts as its own authorization server. MCP clients (Claude Code, Claude Desktop, Cursor, …) drive the browser-based PKCE flow against Atoti and users sign in with their existing Atoti credentials, with no external identity provider required. The browser PKCE flow includes a user consent page that requests approval before issuing an authorization code; the consent step can be disabled via atoti.server.endpoint.mcp.oauth2.authserver.consent.enabled. See Configure self-issued OAuth 2.1.

Changed

  • Upgraded Spring AI to 1.1.6.
  • PIVOT-13970 MCP Server: The starter-ai-mcp-server now defaults the MCP transport to Streamable HTTP (spring.ai.mcp.server.protocol=STREAMABLE, served at POST /mcp) instead of the previous Server-Sent Events transport. If you rely on the SSE transport, restore it explicitly with spring.ai.mcp.server.protocol: SSE.
  • PIVOT-12494 AI license: When the license does not include the AI feature, Atoti now logs an informational message instead of throwing, so applications can start without AI features enabled.
  • PYTHON-826 Atoti Python SDK: SessionConfig now handles AI properties, allowing AI connection and chat options to be configured directly from Python.

Removed

  • PIVOT-13932 Chat: Removed the legacy Chat v1 REST API and its associated payload types. Use the v2 streamable HTTP API instead.

6.1.19

2026-04-16

Added

  • Visualize This: The chat assistant now exposes the AI’s reasoning process in real time. When the model reasons through a request before responding, the reasoning steps appear in the chat interface, giving visibility into how the assistant arrived at its answer.

Changed