azure-mcp-interface
Facilitates seamless interaction with Microsoft Azure infrastructure via natural language queries, enabling resource exploration and management. Features intelligent argument assistance and standardized response formatting to optimize Azure task execution.
Author

Azure
Quick Info
Actions
Tags
[!IMPORTANT] 🚀 Development focus has migrated to microsoft/mcp as of August 25, 2025
🌟 Azure MCP Server Implementation
The Azure MCP Server adheres to the MCP specification, establishing a robust link between intelligent agents and various Azure services. It is designed for standalone utility or integration with the GitHub Copilot for Azure extension within VS Code. This project currently operates under Public Preview, implying potential substantial modifications before achieving General Availability.
[!WARNING] Obsolete Transport Notice: The SSE transport modality was retired in release 0.4.0 (2025-07-15).
SSE transport was formally deprecated on
2025-03-26due to inherent security limitations and architectural constraints. Users must transition away from SSE and adopt version0.4.0or later to maintain functional interoperability with contemporary MCP clients.
✅ Recommended Installation via VS Code
- Secure an installation of VS Code (Stable or Insiders):
- 💫 Stable channel
- 🔮 Insiders build
- Install the required extensions: GitHub Copilot and GitHub Copilot Chat
- Install the Azure MCP Server extension
🚀 Initial Setup
- Launch GitHub Copilot within your VS Code environment and activate Agent mode
- Initiate a refresh cycle on the available tools catalog.
- The Azure MCP Server should now appear in the toolkit inventory.
- Execute a directive requesting Azure interaction, e.g.,
Show me the storage containers within my Azure environment.- The agent should leverage the Azure MCP Server capabilities to fulfill the request.
- Consult the official documentation and review the diagnostics document for common resolutions.
- We actively foster community involvement. Your feedback is instrumental in shaping the future iteration of the Azure MCP server.
✨ Azure MCP Server Capabilities
The Azure MCP Server substantially enhances agent contextual awareness regarding Azure resources. Explore its functionality with these example directives:
🔎 Azure AI Search
- "What are the indexed collections in my Azure AI Search instance named 'mysvc'?"
- "Perform a data retrieval against this index using the query string 'my search query'"
⚙️ Azure App Configuration
- "Enumerate my existing App Configuration repositories"
- "Display all associated key-value pairings within App Config"
📦 Azure Container Registry (ACR)
- "Provide a catalog of all my Azure Container Registries"
- "List container registries residing in the 'myproject' resource group"
- "Generate a listing of all repositories managed by my Azure Container Registry"
☸️ Azure Kubernetes Service (AKS)
- "List all AKS deployments associated with my current subscription"
- "Detail every Azure Kubernetes Service cluster I possess"
📊 Azure Cosmos DB
- "Present a view of all my Cosmos DB databases"
- "Enumerate the container entities within my specified Cosmos DB database"
🧮 Azure Data Explorer
- "Retrieve Azure Data Explorer databases housed within cluster 'mycluster'"
- "Extract a sample set of 10 records from table 'StormEvents' located in Azure Data Explorer database 'db1'"
⚡ Azure Managed Lustre
- "List the Azure Managed Lustre cluster resources within resource group 'my-resourcegroup'"
- "Calculate the requisite IP address count for provisioning a 128 TiB AMLFS 500 cluster"
📊 Azure Monitor
- "Execute a query against my designated Log Analytics workspace"
🔧 Azure Resource Management
- "Provide an inventory of my configured resource groups"
- "List the deployed Azure CDN endpoints"
- "Assist in architecting an Azure application stack using Node.js"
🗄️ Azure SQL Database
- "Fetch detailed attributes for my Azure SQL database instance named 'mydb'"
- "List all database entities within my Azure SQL server 'myserver'"
- "Display all ingress firewall configurations for server 'myserver'"
- "List all configured elastic pools residing on server 'myserver'"
- "Enumerate the Active Directory administrators assigned to server 'myserver'"
💾 Azure Storage
- "Generate a list of my Azure storage accounts"
- "Retrieve comprehensive details for storage account 'mystorageaccount'"
- "Provision a new storage account in the East US region, ensuring Data Lake capability is enabled"
- "Show the table structures within my Storage account"
- "Get metadata for my Storage container"
- "Transfer my specified file into the designated blob container"
- "List the file paths within my Data Lake file system"
- "List the directories and files within my File Share"
- "Transmit a message to my designated storage queue"
🛠️ Comprehensive Toolset Coverage
The Azure MCP Server enables interaction with the following Azure service domains
### 🔎 Azure AI Search (Vector/Search Engine) * Catalog Azure AI Search environments * Inspect index schemas and configurations * Execute search queries against indexes ### ⚙️ Azure App Configuration * List configuration repositories * Manage configuration key-values * Handle configurations with specific labels * Apply locks to configuration settings ### 🛡️ Azure Best Practices * Obtain production-grade, secure recommendations for Azure SDK usage to guide code generation. ### 🖥️ Azure CLI Extension * Direct execution of Azure CLI operational commands * Full compatibility with the entire Azure CLI feature set ### 📦 Azure Container Registry (ACR) * Catalog ACRs and their repositories within a subscription scope * Filter registries and repositories based on resource group membership * Support for JSON output formatting * Ensured cross-platform operation ### 📊 Azure Cosmos DB (NoSQL Data Stores) * List Cosmos DB accounts * Enumerate and query databases * Manage containers and data items * Execute ad-hoc SQL queries against containers ### 🧮 Azure Data Explorer * List Azure Data Explorer cluster endpoints * List associated databases * List available tables * Retrieve table metadata/schema * Sample records from a specified table * Execute queries using KQL (Kusto Query Language) ### 🐬 Azure Database for MySQL - Flexible Server * List and query underlying databases. * List and retrieve schema information for tables. * List, fetch configuration, and manage parameters for servers. ### 🐘 Azure Database for PostgreSQL - Flexible Server * List and query databases. * List and retrieve schema information for tables. * List, fetch configuration, and set/get parameters for servers. ### 🛠️ Azure Developer CLI (azd) Extension * Direct execution of Azure Developer CLI commands * Capability for template discovery, initialization, provisioning, and deployment * Ensured cross-platform operation ### 🚀 Azure Deploy * Generate architectural diagrams for Azure services directly from application source code * Create deployment manifests for provisioning and application rollout * Retrieve service logs for a specified azd environment * Obtain generation rules for Bicep or Terraform configuration files * Get guidelines for constructing GitHub CI/CD pipelines ### 🧮 Azure Foundry * List deployed Azure Foundry models * Initiate deployment of foundry models * List active foundry model deployments * List associated knowledge indexes ### ☁️ Azure Function App * List existing Azure Function Apps * Retrieve specific configuration details for a Function App ### 🔑 Azure Key Vault * List, create, and import digital certificates * List and generate cryptographic keys * List and generate secret values ### ☸️ Azure Kubernetes Service (AKS) * List all provisioned Azure Kubernetes Service clusters ### 📦 Azure Load Testing * List and create load test resources * List, create, and manage load test executions * Retrieve, list, initiate re-runs, and update results of load test runs ### 🚀 Azure Managed Grafana * List existing Azure Managed Grafana instances ### ⚡ Azure Managed Lustre * List Azure Managed Lustre filesystem deployments * Determine the necessary IP address count for a specified SKU and size of AMLFS filesystem ### 🏪 Azure Marketplace * Retrieve comprehensive metadata regarding Marketplace offerings ### 📈 Azure Monitor #### Log Analytics * List Log Analytics workspaces * Execute log queries via KQL * List available schema tables #### Health Models * Query the operational health status of an entity #### Metrics * Query Azure Monitor time-series metric data for resources * List available metric definitions applicable to resources ### 🏥 Azure Service Health * Determine the current operational status for a singular resource * List the availability statuses across all resources within a subscription or group ### ⚙️ Azure Native ISV Services * List monitored resources managed by a Datadog instance ### 🛡️ Azure Quick Review CLI Extension * Scan Azure resource configurations for compliance-related advisories ### 📊 Azure Quota * List available operational regions * Check current quota utilization ### 🔴 Azure Redis Cache * List Redis Cluster topologies * List database entities within Redis Clusters * List standard Redis Cache resources * List access control policies for Redis Caches ### 🏗️ Azure Resource Groups * List all existing resource groups ### 🎭 Azure Role-Based Access Control (RBAC) * List current role assignments ### 🚌 Azure Service Bus * Examine the configuration and runtime status of queues, topics, and subscriptions ### 🗄️ Azure SQL Database * Show detailed properties for specific databases * List detailed properties for all databases * List SQL server ingress firewall rules ### 🗄️ Azure SQL Elastic Pool * List elastic pools associated with SQL servers ### 🗄️ Azure SQL Server * List Microsoft Entra ID administrative principals for SQL servers ### 💾 Azure Storage * List and provision new Storage accounts * Fetch granular details for specific Storage accounts * Administer blob containers and individual blobs * Upload data objects to blob containers * List and query Storage tables * List file paths within Data Lake file systems * Retrieve container metadata and configuration * List directories and files within File Shares ### 📋 Azure Subscription * List all accessible Azure subscriptions ### 🏗️ Azure Terraform Best Practices * Acquire secure, production-ready Terraform best practices for Azure resource provisioning and command execution. ### 🖥️ Azure Virtual Desktop * List host pools comprising the Azure Virtual Desktop service * List session hosts associated with a host pool * List user sessions connected to a specific session host ### 📊 Azure Workbooks * List existing workbooks scoped to resource groups * Generate new workbooks featuring custom visualization layouts * Modify existing workbook configurations * Retrieve workbook metadata and details * Remove obsolete workbooks ### 🏗️ Bicep * Obtain the standardized Bicep schema definition for designated Azure resource types ### 🏗️ Cloud Architect * Guide the design process for Azure cloud infrastructures through interactive questioning Agents and models are capable of discovering operational guidelines and usage patterns for the `azd` MCP extension. Refer to [AZD Best Practices](https://github.com/Azure/azure-mcp/tree/main/areas/extension/src/AzureMcp.Extension/Resources/azd-best-practices.txt) for more context. For comprehensive documentation on specific operational commands and usage examples, consult [Azure MCP Commands](https://github.com/Azure/azure-mcp/blob/main/docs/azmcp-commands.md). ## 🔄️ Updating Prior InstallationsProcedures for migrating to the most recent Azure MCP Server release
#### NPX Execution If configured to utilize the default package specification (`@azure/mcp@latest`), npx automatically checks for newer versions upon each server initialization. Conversely, using just `@azure/mcp` relies on the locally cached version until the cache is manually purged. #### NPM Execution For global installations via `npm install -g @azure/mcp`, the operational version remains static until explicitly updated using `npm update -g @azure/mcp`. #### Docker Image The bundled Docker image does not incorporate automatic version checking. Updates require pulling the newest image from the registry and re-executing the [docker setup instructions](#docker-install). #### VS Code Integration Updates follow the methodology used for the initial setup. If the server was launched via `npx` with the `-y @azure/mcp@latest` arguments, the server checks for updates on every VS Code start. Using a Docker container within VS Code inherits the same static version limitation mentioned previously.Instructions for Docker, custom MCP clients, and manual setup routes
### 🐋 Docker Installation Details (Optional) Microsoft maintains an official Azure MCP Server Docker image available on the [Microsoft Artifact Registry](https://mcr.microsoft.com/artifact/mar/azure-sdk/azure-mcp). Execute these steps for Docker deployment: 1. Establish an `.env` file containing environment variables that align with one of the recognized [EnvironmentCredential](https://learn.microsoft.com/dotnet/api/azure.identity.environmentcredential) configurations (e.g., using a service principal): ```bash AZURE_TENANT_ID={YOUR_AZURE_TENANT_ID} AZURE_CLIENT_ID={YOUR_AZURE_CLIENT_ID} AZURE_CLIENT_SECRET={YOUR_AZURE_CLIENT_SECRET} ``` 2. Modify or create the `.vscode/mcp.json` file to reference the Docker configuration. Substitute `/full/path/to/.env` with the absolute path to your configuration file. ```json { "servers": { "Azure MCP Server": { "command": "docker", "args": [ "run", "-i", "--rm", "--env-file", "/full/path/to/.env" "mcr.microsoft.com/azure-sdk/azure-mcp:latest" ] } } } ``` Authentication details can alternatively be passed using `--env` or `--volume` flags. ### 🤖 Custom MCP Client Setup (Optional) Integrating the Azure MCP Server with a custom MCP client is straightforward. Instruct your client to execute the following command and interact via standard I/O streams:npx -y @azure/mcp@latest server start
### 🔧 Manual Configuration Steps (Optional)
Follow these instructions for a step-by-step manual setup:
1. Configure `.vscode/mcp.json` to invoke the server:
```json
{
"servers": {
"Azure MCP Server": {
"command": "npx",
"args": [
"-y",
"@azure/mcp@latest",
"server",
"start"
]
}
}
}
```
Optionally, include the `--namespace 