Vibe querying with MCP server for Azure Data Explorer (Kusto)

Vibe querying with MCP server for Azure Data Explorer (Kusto)

By abhirockzz GitHub

Vibe querying with MCP server for Azure Data Explorer (Kusto)

golang azure
Overview

What is MCP Kusto?

MCP Kusto is an implementation of an MCP server for Azure Data Explorer (Kusto) that facilitates data analysis and exploration using its Go SDK.

How to use MCP Kusto?

To use MCP Kusto, clone the repository from GitHub, build the server, and configure it with your MCP client/tool, such as VS Code Insiders in Agent mode.

Key features of MCP Kusto?

  • Lists all databases and tables in Azure Data Explorer clusters.
  • Retrieves the schema of specific tables.
  • Executes read-only KQL queries against databases.

Use cases of MCP Kusto?

  1. Data exploration and analysis in Azure Data Explorer.
  2. Integrating with development tools like VS Code for enhanced data interaction.
  3. Automating database queries and schema retrieval.

FAQ from MCP Kusto?

  • What is required to run MCP Kusto?

You need to have the Azure Data Explorer permissions and the Azure CLI for authentication.

  • Is there a specific environment to run MCP Kusto?

Yes, it is designed to work with tools like VS Code Insiders in Agent mode.

Content

Vibe querying with MCP server for Azure Data Explorer (Kusto)

This is an implementation of an MCP server for Azure Data Explorer (Kusto) built using its Go SDK. You can use this with VS Code (or other MCP tools) for making data analysis and exploration easier.

It exposes tools for interacting with Azure Data Explorer:

  1. list_databases - Lists all databases in a specific Azure Data Explorer cluster.
  2. list_tables - Lists all tables in a specific Azure Data Explorer database.
  3. get_table_schema - Gets the schema of a specific table in an Azure Data Explorer database.
  4. execute_query - Executes a read-only KQL query against a database.

Word(s) of caution: As much as I want folks to benefit from this, I have to call out that Large Language Models (LLMs) are non-deterministic by nature and can make mistakes. I would recommend you to always validate the results and queries before making any decisions based on them.

Here is a sneak peek:

kusto mcp server in action

How to run

git clone https://github.com/abhirockzz/mcp_kusto
cd mcp_kusto

go build -o mcp_kusto main.go

Configure the MCP server

This will differ based on the MCP client/tool you use. For VS Code you can follow these instructions on how to configure this server using a mcp.json file.

Here is an example of the mcp.json file:

{
  "servers": {
    "Kusto MCP server": {
      "type": "stdio",
      "command": "enter path to binary e.g. /Users/demo/Desktop/mcp_kusto",
      "args": []
    },
    //other MCP servers...
  }
}

Here is an example of Claude Desktop configuration:

{
  "mcpServers": {
    "Kusto MCP server": {
      "command": "enter path to binary e.g. /Users/demo/Desktop/mcp_kusto",
      "args": []
    },
    //other MCP servers...
  }
}

Authentication

  • The user principal you use should have permissions required for .show databases, .show table, .show tables, and execute queries on the database. Refer to the documentation for Azure Data Explorer for more details.

  • Authentication (Local credentials) - To keep things secure and simple, the MCP server uses DefaultAzureCredential. This approach looks in the environment variables for an application service principal or at locally installed developer tools, such as the Azure CLI, for a set of developer credentials. Either approach can be used to authenticate the MCP server to Azure Data Explorer. For example, just login locally using Azure CLI (az login).

You are good to go! Now spin up VS Code, Claude Desktop, or any other MCP tool and start vibe querying your Azure Data Explorer (Kusto) cluster!

Local dev/testing

Start with MCP inspector - npx @modelcontextprotocol/inspector ./mcp_kusto

No tools information available.

Mirror of

mcp azure
View Details

Azure Cosmos DB MCP Client and Server

cosmosdb azure
View Details
⚡ go-mcp
⚡ go-mcp by ktr0731

⚡ A type-safe, intuitive Go SDK for building MCP servers with ease and confidence

golang mcp
View Details
TimeMCP
TimeMCP by chew-z

Golang MCP server to replace modelcontextprotocol/time MCP server

golang time
View Details

MCP server for Perplexity

golang perplexity-api
View Details
Azure Mcp Servers
Azure Mcp Servers by manekinekko

This directory showcases various Model Context Protocol (MCP) servers. These servers enable Large Language Models (LLMs) to securely access tools and data sources from Microsoft Azure.

Azure Application Insights MCP Server

application-insights azure
View Details