home / mcp / kusto mcp server

Kusto MCP Server

A mcp server that uses azure data explorer as a backend

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "zzzhdw-mcp-server-kusto": {
      "command": "uv",
      "args": [
        "--directory",
        "{{PATH_TO_PROJECT}}\\\\mcp-server-kusto\\\\src\\\\mcp_server_kusto",
        "run",
        "mcp-server-kusto",
        "--cluster",
        "{{ADX_CLUSTER_URL}}",
        "--authority_id",
        "{{TENANT_ID}}",
        "--client_id",
        "{{CLIENT_ID}}",
        "--client_secret",
        "{{CLIENT_SECRET}}"
      ]
    }
  }
}

You can access Azure Data Explorer (ADX) clusters through this MCP server. It exposes commands to list tables and materialized views, run queries against internal or external tables, and fetch table schemas, enabling you to explore and interact with your ADX data efficiently from a unified MCP client.

How to use

You will connect to the MCP server using your MCP client and then perform common data operations against your ADX cluster. Start by listing what exists in the cluster, then run queries and finally inspect schemas to understand table structures.

How to install

Prerequisites: make sure you have a runtime capable of running MCP servers (the MCP tooling commonly uses a runtime such as UVX/UV). You should also have access to your ADX cluster URL and credentials if your environment requires authentication.

Step 1: Obtain the MCP server code for Kusto (mcp-server-kusto). If you are working from the project repository, clone it to a local directory.

Step 2: Install required dependencies for the MCP server project (the project typically relies on standard package managers or build steps as defined in the project). Run the following commands in the project root to install dependencies.

# Example install flow (adjust to your environment)
# 1. Install dependencies
npm install
# 2. Build the server if applicable
npm run build
# 3. Start the MCP server using the documented runner (see command snippet below)
npm run start

Additional notes on running the server locally

When running locally with an Azure Data Explorer emulator, you can point the server at the emulator URL (for example, a local cluster URL like https://localhost:8082). If you are using the emulator, you do not need to provide authority and client credentials.

Available tools

list_internal_tables

List all internal tables in the cluster.

list_external_tables

List all external tables in the cluster.

list_materialized_views

List all materialized views in the cluster.

execute_query_internal_table

Execute a query on an internal table or materialized view.

execute_query_external_table

Execute a query on an external table.

get_internal_table_schema

Get the schema of an internal table or materialized view.

get_external_table_schema

Get the schema of an external table.