# Azure Data Explorer MCP Server This is a Model Context Protocol (MCP) server that can login to Azure Data Explorer and run KQL queries. ## Features - Login to Azure Data Explorer using service principal (client credentials) - Run KQL queries against an Azure Data Explorer database - View formatted query results ## Prerequisites - Node.js (v16 or higher) - npm (v7 or higher) - Azure Data Explorer cluster - Service Principal with access to Azure Data Explorer ## Setup 1. Clone or download this repository 2. Install dependencies: ```bash npm install ``` 3. Build the project: ```bash npm run build ``` ## Running the server Start the server: ```bash npm start ``` The server will listen on standard input/output (stdio), which is the format expected by MCP clients like Claude for Desktop. ## Usage with Claude for Desktop 1. Configure Claude for Desktop to use this MCP server by editing the `claude_desktop_config.json` file: ```json { "mcpServers": { "adx-query-server": { "command": "node", "args": [ "/absolute/path/to/this/repository/build/index.js" ] } } } ``` 2. Restart Claude for Desktop 3. Use the MCP server through Claude by asking it to: - Login to Azure Data Explorer - Run KQL queries ## Available Tools ### login-to-adx Authenticates with Azure Data Explorer using client credentials. Parameters: - `cluster`: The ADX cluster URL (e.g., https://mycluster.eastus.kusto.windows.net) - `database`: The database name - `tenantId`: The Azure tenant ID - `clientId`: The Azure client/application ID - `clientSecret`: The Azure client secret ### run-adx-query Runs a KQL query against the connected Azure Data Explorer database. Parameters: - `query`: The KQL query to execute ## Development To run the server in development mode: ```bash npm run dev ``` ## License ISC