Microsoft and Azure MCP Servers
Your team runs on Azure. Your app connects to Azure SQL, stores blobs in Azure Storage, authenticates through Entra ID, and deploys through Azure DevOps pipelines. Every time the AI needs to understand your infrastructure, you end up pasting Azure portal screenshots into chat or manually describing your resource configuration. The AI generates Terraform that targets the wrong SKU, writes connection strings with the wrong format, and suggests services you do not have provisioned.
Microsoft’s MCP servers close this gap by giving your AI direct access to Azure resources, documentation, and development tools. The AI reads your actual Azure configuration instead of guessing.
What You’ll Walk Away With
Section titled “What You’ll Walk Away With”- Overview of Microsoft’s MCP strategy across Azure, Visual Studio, and GitHub
- Setup for available Azure MCP servers
- Prompts for Azure resource management and infrastructure development
- Understanding of how Microsoft’s MCP approach differs from other providers
Microsoft’s MCP Strategy
Section titled “Microsoft’s MCP Strategy”Microsoft has taken a platform-wide approach to MCP. Rather than offering a single MCP server, they are embedding MCP support across multiple products:
- Azure MCP Server — Access Azure resources, Resource Graph queries, and service management
- Visual Studio 2026 — Built-in MCP client support for connecting to any MCP server
- GitHub Copilot — MCP integration for extending Copilot with custom tools
- Microsoft 365 Copilot — MCP connectors for enterprise data (SharePoint, Teams, Outlook)
For developers building on Azure, the most immediately useful is the Azure MCP Server, which provides programmatic access to your Azure resources.
Azure MCP Server
Section titled “Azure MCP Server”The Azure MCP Server gives your AI access to Azure Resource Graph for querying resources, along with management operations for common services.
{ "mcpServers": { "azure": { "command": "npx", "args": ["-y", "@azure/mcp@latest", "server", "start"] } }}{ "mcpServers": { "azure": { "command": "npx", "args": ["-y", "@azure/mcp@latest", "server", "start"] } }}Or via CLI:
claude mcp add azure -- npx -y @azure/mcp@latest server start[mcp.azure]transport = "stdio"command = "npx"args = ["-y", "@azure/mcp@latest", "server", "start"]Azure-Specific Workflows
Section titled “Azure-Specific Workflows”Infrastructure as Code
Section titled “Infrastructure as Code”When writing Terraform or Bicep for Azure, the AI can cross-reference your actual deployed resources to ensure the IaC matches reality.
Azure Functions and App Service
Section titled “Azure Functions and App Service”Cost Analysis
Section titled “Cost Analysis”Visual Studio 2026 MCP Integration
Section titled “Visual Studio 2026 MCP Integration”Visual Studio 2026 includes built-in MCP client support, meaning it can connect to any MCP server — not just Microsoft’s. This is significant for teams already in the Visual Studio ecosystem because it means they can use the same MCP servers documented throughout this guide (Context7, GitHub MCP, Playwright MCP, etc.) without switching editors.
The configuration in Visual Studio uses the same JSON format as other MCP clients, making it straightforward to share configurations across tools.
Combining Azure MCP with Other Servers
Section titled “Combining Azure MCP with Other Servers”Azure + GitHub MCP: “Check the CI pipeline status for the latest deployment. If it failed, read the Azure Function App logs from the last hour and the GitHub Actions logs from the failed run. Identify whether the failure is in the build step or the deployment step.”
Azure + Cloudflare MCP: “Compare the DNS records in Azure DNS with the records in Cloudflare DNS for our domain. Flag any inconsistencies between the two providers.”
Azure + Database MCP: “Connect to the Azure SQL database using the Prisma MCP server. Read the schema and compare it to the Entity Framework model defined in Models/. Generate a migration to resolve any differences.”
When This Breaks
Section titled “When This Breaks”“az login required” error. The Azure MCP Server uses your local Azure CLI session. Run az login and ensure your session is current. If you use managed identities in CI, the MCP server may need different authentication configuration.
Wrong subscription. If the AI returns resources you do not recognize, you may be connected to the wrong Azure subscription. Run az account show to verify, and use az account set --subscription <name-or-id> to switch.
Resource Graph query timeouts. Large subscriptions with thousands of resources can cause query timeouts. Scope your queries: “List all App Services in the ‘production’ resource group” is faster than “List all resources in my subscription.”
Missing permissions. The MCP server operates with your Azure RBAC permissions. If you only have Reader access to a resource group, the AI cannot make changes to resources in that group. This is by design.