.github/plugins/azure-skills/skills/azure-kusto/SKILL.md
Query and analyze data in Azure Data Explorer (Kusto/ADX) using KQL for log analytics, telemetry, and time series analysis. WHEN: KQL queries, Kusto database queries, Azure Data Explorer, ADX clusters, log analytics, time series data, IoT telemetry, anomaly detection.
npx skillsauth add microsoft/skills azure-kustoInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
4 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Execute KQL queries and manage Azure Data Explorer resources for fast, scalable big data analytics on log, telemetry, and time series data.
Use this skill immediately when the user asks to:
Key Indicators:
This skill enables querying and managing Azure Data Explorer (Kusto), a fast and highly scalable data exploration service optimized for log and telemetry data. Azure Data Explorer provides sub-second query performance on billions of records using the Kusto Query Language (KQL).
Key capabilities:
Fetch recent records from a table with simple filtering.
Example KQL:
Events
| where Timestamp > ago(1h)
| take 100
Use for: Quick data inspection, recent event retrieval
Summarize data by dimensions for insights and reporting.
Example KQL:
Events
| summarize count() by EventType, bin(Timestamp, 1h)
| order by count_ desc
Use for: Event counting, distribution analysis, top-N queries
Analyze data over time windows for trends and patterns.
Example KQL:
Telemetry
| where Timestamp > ago(24h)
| summarize avg(ResponseTime), percentiles(ResponseTime, 50, 95, 99) by bin(Timestamp, 5m)
| render timechart
Use for: Performance monitoring, trend analysis, anomaly detection
Combine multiple tables for cross-dataset analysis.
Example KQL:
Events
| where EventType == "Error"
| join kind=inner (
Logs
| where Severity == "Critical"
) on CorrelationId
| project Timestamp, EventType, LogMessage, Severity
Use for: Root cause analysis, correlated event tracking
Explore table structure before querying.
Tools: kusto_table_schema_get
Use for: Understanding data model, query planning
When executing queries, common field patterns:
ago(), between(), bin() for time filteringQuery results include:
🟢 Performance Optimized:
where before joins and aggregationstake or limit to reduce data transfer🔵 Query Patterns:
summarize for aggregations instead of count() alonebin() for time bucketing in time seriesproject to select only needed columnsextend to add calculated fields🟡 Common Functions:
ago(timespan): Relative time (ago(1h), ago(7d))between(start .. end): Range filteringstartswith(), contains(), matches regex: String filteringparse, extract: Extract values from stringspercentiles(), avg(), sum(), max(), min(): Aggregationstake or limit for exploratory queries to avoid large result setssummarize for aggregations instead of client-side processing| Tool | Purpose |
|------|---------|
| kusto_cluster_list | List all Azure Data Explorer clusters in a subscription |
| kusto_database_list | List all databases in a specific Kusto cluster |
| kusto_query | Execute KQL queries against a Kusto database |
| kusto_table_schema_get | Retrieve schema information for a specific table |
Required Parameters:
subscription: Azure subscription ID or display namecluster: Kusto cluster name (e.g., "mycluster")database: Database namequery: KQL query string (for query operations)table: Table name (for schema operations)Optional Parameters:
resource-group: Resource group name (for listing operations)tenant: Azure AD tenant IDIf Azure MCP Kusto tools fail, timeout, or are unavailable, use Azure CLI commands as fallback.
| Operation | Azure CLI Command |
|-----------|-------------------|
| List clusters | az kusto cluster list --resource-group <rg-name> |
| List databases | az kusto database list --cluster-name <cluster> --resource-group <rg-name> |
| Show cluster | az kusto cluster show --name <cluster> --resource-group <rg-name> |
| Show database | az kusto database show --cluster-name <cluster> --database-name <db> --resource-group <rg-name> |
For queries, use the Kusto REST API or direct cluster URL:
az rest --method post \
--url "https://<cluster>.<region>.kusto.windows.net/v1/rest/query" \
--body "{ \"db\": \"<database>\", \"csl\": \"<kql-query>\" }"
Switch to Azure CLI when:
tools
KQL language expertise for writing correct, efficient Kusto Query Language queries. Covers syntax gotchas, join patterns, dynamic types, datetime pitfalls, regex patterns, serialization, memory management, result-size discipline, and advanced functions (geo, vector, graph). USE THIS SKILL whenever writing, debugging, or reviewing KQL queries — even simple ones — because the gotchas section prevents the most common errors that waste tool calls and cause expensive retry cascades. Trigger on: KQL, Kusto, ADX, Azure Data Explorer, Fabric Real-Time Intelligence, EventHouse, Log Analytics, log analysis, data exploration, time series, anomaly detection, summarize, where clause, join, extend, project, let statement, parse operator, extract function, any mention of pipe-forward query syntax.
development
Deploy, evaluate, and manage Foundry agents end-to-end: Docker build, ACR push, hosted/prompt agent create, container start, batch eval, prompt optimization, prompt optimizer workflows, agent.yaml, dataset curation from traces. USE FOR: deploy agent to Foundry, hosted agent, create agent, invoke agent, evaluate agent, run batch eval, optimize prompt, improve prompt, prompt optimization, prompt optimizer, improve agent instructions, optimize agent instructions, optimize system prompt, deploy model, Foundry project, RBAC, role assignment, permissions, quota, capacity, region, troubleshoot agent, deployment failure, create dataset from traces, dataset versioning, eval trending, create AI Services, Cognitive Services, create Foundry resource, provision resource, knowledge index, agent monitoring, customize deployment, onboard, availability. DO NOT USE FOR: Azure Functions, App Service, general Azure deploy (use azure-deploy), general Azure prep (use azure-prepare).
testing
Pre-deployment validation for Azure readiness. Run deep checks on configuration, infrastructure (Bicep or Terraform), RBAC role assignments, managed identity permissions, and prerequisites before deploying. WHEN: validate my app, check deployment readiness, run preflight checks, verify configuration, check if ready to deploy, validate azure.yaml, validate Bicep, test before deploying, troubleshoot deployment errors, validate Azure Functions, validate function app, validate serverless deployment, verify RBAC roles, check role assignments, review managed identity permissions, what-if analysis, validate Container Apps deployment.
testing
Check/manage Azure quotas and usage across providers. For deployment planning, capacity validation, region selection. WHEN: "check quotas", "service limits", "current usage", "request quota increase", "quota exceeded", "validate capacity", "regional availability", "provisioning limits", "vCPU limit", "how many vCPUs available in my subscription".