Get the FREE Ultimate OpenClaw Setup Guide →

adx

A Model Context Protocol (MCP) server that enables AI assistants to query and analyze Azure Data Explorer databases through standardized interfaces.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio pab1it0-adx-mcp-server uv --directory <full path to adx-mcp-server directory> run src/adx_mcp_server/main.py \
  --env ADX_DATABASE="your_database" \
  --env ADX_CLUSTER_URL="https://yourcluster.region.kusto.windows.net"

How to use

This MCP server provides a programmable interface to Azure Data Explorer (ADX) via the Model Context Protocol. It exposes capabilities to execute Kusto Query Language (KQL) queries, discover database metadata (tables, schemas, sample data, and statistics), and authenticate against ADX using DefaultAzureCredential or Workload Identity. The server supports multiple transports (stdio by default, with options for HTTP or Server-Sent Events) and can be deployed as a container or in a dev environment. Tools are configurable so you can enable or disable specific capabilities to suit your needs or to optimize the context window used by the MCP client.

To use it, configure your MCP client to point at the uv-based Python server and provide the required environment variables for ADX access. Typically you set ADX_CLUSTER_URL and ADX_DATABASE, with optional credentials for AKS workloads. When running in AKS with Workload Identity, the server can automatically pick up WorkloadIdentityCredential if AZURE_TENANT_ID and AZURE_CLIENT_ID are present and a token file path is provided via ADX_TOKEN_FILE_PATH.

How to install

Prerequisites:

  • Python 3.12 or newer
  • uv (the Python virtual environment manager used by this project)
  • Git

Installation steps:

  1. Clone the repository: git clone https://github.com/pab1it0/adx-mcp-server.git cd adx-mcp-server

  2. Set up a Python virtual environment and install the package in editable mode: uv venv source .venv/bin/activate # Unix/macOS .venv\Scripts\activate # Windows uv pip install -e .

  3. Run the server in development: uv --directory <path-to-repo> run src/adx_mcp_server/main.py

  4. (Optional) Build and run via Docker as described in the README if you prefer containerized deployment. For Claude Desktop integration, use the provided mcp_config example to connect to the uv-based server.

Additional notes

Notes and tips:

  • Ensure ADX_CLUSTER_URL and ADX_DATABASE are set in the environment where the MCP client runs. Optional credentials for Azure Workload Identity can be supplied via AZURE_TENANT_ID, AZURE_CLIENT_ID, and ADX_TOKEN_FILE_PATH.
  • If you encounter spawn errors (e.g., Error: spawn uv ENOENT), provide the full path to the uv executable or set NO_UV=1 in the client configuration as described in the README.
  • The MCP server supports multiple transports; choose stdio for local development or HTTP/SSE for remote access.
  • When running in AKS with Workload Identity, ensure the pod has AZURE_TENANT_ID and AZURE_CLIENT_ID and that token mounting is configured if you rely on ADX_TOKEN_FILE_PATH.
  • The server uses Azure AD credentials and DefaultAzureCredential as fallback; it will try several methods in order to authenticate.

Related MCP Servers

Sponsor this space

Reach thousands of developers