mcp -kusto
A mcp server that uses azure data explorer as a backend
claude mcp add --transport stdio zzzhdw-mcp-server-kusto uv --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}} \
--env CLIENT_ID="Azure AD application (client) ID" \
--env TENANT_ID="Azure AD tenant (directory) ID" \
--env CLIENT_SECRET="Azure AD application client secret" \
--env ADX_CLUSTER_URL="Azure Data Explorer cluster URL, e.g., https://<cluster> with the appropriate region" \
--env PATH_TO_PROJECT="Path to your project root (drive letter prefixed, e.g., C:\\projects)"How to use
This MCP server provides programmatic access to an Azure Data Explorer (ADX) cluster. It exposes tool-like capabilities that let clients query and inspect data in ADX without needing to manage direct ADX SDKs. The available tools include: list internal tables, list external tables, list materialized views to discover schema objects; execute_query_internal_table and execute_query_external_table to run Kusto queries against internal/materialized views or external tables; and get_internal_table_schema and get_external_table_schema to retrieve the schema definitions for internal tables, materialized views, and external tables. To use these tools, connect to the MCP server via the MCP protocol and invoke the corresponding tool names with the appropriate parameters. The server translates MCP tool invocations into Kusto queries against your ADX cluster and returns results or schema information in a structured format.
How to install
Prerequisites:
- Python 3.8+ and the uv tool (or your preferred MCP runtime that uses the 'uv' command).
- Access to an Azure Data Explorer cluster (or an emulator for local testing).
Installation steps:
-
Ensure Python is installed and available in your PATH.
-
Install the MCP runtime (uv) if not already installed. Example (pipx):
- pipx install uv
- or follow your environment's instructions to install the uv runtime.
-
Clone or download the mcp-server-kusto repository to your local machine.
-
Install any Python dependencies required by the server (navigate to the mcp-server-kusto directory and install via your preferred method, e.g., pip install -r requirements.txt).
-
Prepare environment variables or a configuration file with your ADX cluster URL and Azure AD credentials (see env vars in the mcp_config).
-
Run the server using the uv command as configured in the MCP config. Example:
uv --directory "<path-to-project>\mcp-server-kusto\src\mcp_server_kusto"
run mcp-server-kusto
--cluster "https://<your-adx-cluster>.kusto.windows.net"
--authority_id "<tenant-id>"
--client_id "<client-id>"
--client_secret "<client-secret>"
Notes:
- If you are using the Azure Data Explorer emulator locally, you can omit the authority/client credentials and only pass the --cluster URL (e.g., https://localhost:8082).
- Ensure network access from the MCP host to the ADX cluster or emulator.
Additional notes
Tips:
- The kusto MCP server exposes a set of tools for tables and queries; use the tool names exactly as listed (e.g., list_internal_tables, execute_query_internal_table).
- When using an emulator, you can simplify authentication by skipping client credentials, but in production you should supply a valid AAD app registration (client_id/secret) and tenant_id.
- Environment variables should be kept secure; avoid committing secrets to version control.
- If you encounter authentication errors, verify that the ADX cluster URL is reachable and that the registered app has appropriate permissions on the cluster.
- For large results or complex queries, consider pagination or streaming results if supported by the MCP runtime.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP