Skip to main content

Atoti Intelligence SDK

This is part of the Atoti Intelligence SDK offer.
This guide explains how to expose the Atoti MCP Server from an Atoti Python project. Read more about best practices for configuring MCP across a deployment in What are the best practices for MCP configuration?.
This guide covers exposing the Atoti MCP Server, so external clients can call session tools. It differs from connecting to other MCP Servers, where a session uses another server’s tools as its own. See Connect to other MCP Servers in Python.

Prerequisites

Before setting up the MCP Server, ensure the following requirements are met:
  • An Atoti Python project
  • A license including the Atoti Intelligence Extension tier, which itself requires Essentials

How to install the package

Install the Atoti AI package:
The ai plugin already brings the Atoti MCP Server through its own dependencies. No extra package or property is required, unlike the Java setup.

How to enable the MCP Server

Pass an AiConfig to SessionConfig when starting the session. The MCP Server needs no LLM provider. An empty AiConfig() is enough, the same way Auto-Explain works without one:

Where is the MCP endpoint?

The Atoti MCP Server is reachable at f"{session.url}/mcp", over the Streamable HTTP transport.

How to authenticate an MCP client

An MCP client authenticates against the session’s own security configuration. The following example registers a user with HTTP Basic credentials and grants it a role:
An MCP client without valid credentials receives 401 Unauthorized.
The Atoti Python SDK exposes no configuration for custom tools or for the OAuth 2.1 authentication modes. Both are set on a Java application; see How to add custom tools and Configure OAuth 2.1 discovery. A Python session serves the built-in cube tools and authenticates through its own security configuration.

Verify the setup

After enabling the MCP Server, verify that it is available:
  1. Start the Atoti session.
  2. Create at least one cube, since the cube tools need one to be useful.
  3. Point an MCP client at {session.url}/mcp.
  4. Check that the tool list contains runMdxQuery.