Repository navigation
Azure.Mcp.Server 3.0.0
π New Major Release β Azure MCP Server 3.0
We're excited to announce the third major release of the Azure MCP Server! Version 3.0 builds on the 2.0 release with a broader and more consistent tool surface, secure-by-default resource creation, stricter input and endpoint validation, richer Azure Backup, Advisor, and resiliency capabilities, and a new MCP protocol and tool design foundation. This release spans 50 beta iterations and hundreds of contributions.
Key Features & Improvements
- More Tools and Services: Introduced new namespaces since 2.0 and expanded existing toolsets, including:
- Azure Backup β
azurebackup: vaults, policies, protection, protectable items and containers, recovery points, jobs, governance (soft delete, immutability, Multi-User Authorization, Resource Guards), customer-managed key encryption, private endpoints, and cross-region restore - Azure Resilience Management β
resiliency: goals, usage plans and enrollments, recovery plans, recovery jobs, readiness and failover validation, and resilience drills - Azure SRE Agent β
sreagent: 55 commands to manage agents, skills, connectors, hooks, threads, scheduled tasks, incidents, and workflows - Azure Terraform β
azureterraform: AzureRM/AzAPI provider documentation, Azure Verified Modules,aztfexportexport, andconftestpolicy validation - Azure Optimization β
optimization: cost-saving recommendations, alternative VM/VMSS SKU options, and utilization explanations - Azure IoT Hub β
iothuband Azure IoT Operations βiotoperations - Azure Insights β
insights: infrastructure insights from Azure Resource Graph aggregation and MCP sampling - Azure Advisor β
advisor: recommendation list, summary, update, apply-to-IaC, metadata, and remediation tools - Azure Cosmos DB β
cosmos, Azure Compute βcompute(VM power state and creation validation), Azure App Service βappservice(web app change-state), Azure Monitor βmonitor(batch metrics and Log Analytics table search), and Azure Managed Lustre βmanagedlustre(filesystem expansion) received new tools
- Azure Backup β
- Secure by Default: New resources are created with safer defaults, including Storage accounts with Shared Key authentication disabled, Event Hubs namespaces with local authentication disabled, NFS file shares with
RootSquashand encrypted transit, and Recovery Services vaults with public network access disabled - Security Hardening: Cloud-specific endpoint validation based on
Microsoft.Security.AntiSSRFacross data-plane and management-plane tools, namespace-scoped validation overrides, and telemetry that no longer records option values - Cleaner, More Accurate Tool Contracts: Unused parameters, custom retry policy options, and confirmation-only options were removed from tools across all namespaces, unknown parameters are rejected, result payloads were normalized, and input schemas are generated with richer, spec-accurate
System.Text.Jsonschemas - Structured Output: Tools can advertise an
outputSchemaand returnstructuredContentin all server modes with--structured-output-mode - Latest MCP Protocol: Migrated to the MCP 2026-07-28 stateless protocol with automatic backward compatibility for clients using the 2025-11-25 protocol
- More Flexible Server Options: Added
--disable-proxy-tools, learn-mode discovery forazmcpcommands, anoperationPlanefield intools listoutput, and Azure Pipelines workload identity federation authentication - Improved Reliability and Diagnostics: More accurate HTTP status codes and actionable error messages, clearer credential errors, additional telemetry, and startup, concurrency, and resource usage benchmarks
Getting Started
Install the Azure MCP Server from your preferred platform:
- π§© IDE Extensions
- π· Visual Studio Code: ms-azuretools.vscode-azure-mcp-server
- π Visual Studio 2026: Azure and AI Development workload
- π Visual Studio 2022: github-copilot-azure.GitHubCopilotForAzure2022
- β IntelliJ IDEA: 8053-azure-toolkit-for-intellij
- π Eclipse IDE: azure-toolkit-eclipse
- π¦ Package Managers
- π€ NuGet: Azure.Mcp
- π¦ NPM: @azure/mcp
- π PyPI: msmcp-azure
- π³ Container
- Docker: azure-sdk/azure-mcp
- π¬ AI Assistant Plugins
- Claude & GitHub Copilot CLI: azure-copilot-plugin
- π§° MCP Bundles
Documentation
- Complete Command Reference
- Authentication
- Remote Server Deployment
- Connecting to Sovereign Clouds
- Troubleshooting
- Contributing Guidelines
Thank You
This release was made possible by the incredible efforts of our engineering team, partners, contributors, and the invaluable feedback from our users and the open-source community. We want to extend a huge thank you to everyone who contributed, tested, and provided feedback throughout the development of Azure MCP Server 3.0!
For a complete history of changes included in this release, see entries for versions 3.0.0-beta.1 through 3.0.0-beta.50.
Other Changes since 2.0.0
Breaking Changes
Tool Contract Cleanup:
- Removed unused parameters (such as
subscription,resource-group,tenant,auth-method,user, andsender-name) from tools across nearly all namespaces, including Advisor, AKS, App Configuration, App Lens, Application Insights, Azure Migrate, Communication, Compute, Confidential Ledger, Container Apps, Deploy, Event Grid, Event Hubs, Foundry Extensions, Key Vault, Load Testing, Managed Lustre, MySQL, PostgreSQL, Quota, Redis, Resource Health, Search, Service Bus, SQL, Storage, and others. Update any scripts or saved prompts that pass these options - Removed custom retry policy options from all tools and shared Azure service APIs; the Azure SDK retry defaults are used instead
- Removed the confirmation-only
--forceparameter fromsql server delete - Tool calls with unknown parameters are now explicitly rejected
- Normalized result payloads for several tools in best practices, Functions, Monitor, Search, SQL, and Well-Architected Framework to consistent, named result objects (for example
{ bestPractices },{ results },{ servers }, and{ guidance })
Namespace, Tool, and Option Renames:
- Replaced
monitor healthmodels entity getwithmonitor healthmodels listandmonitor healthmodels get - Moved shared server code from
Azure.Mcp.Core.*toMicrosoft.Mcp.Core.*namespaces (for exampleAzure.Mcp.Core.CommandsβMicrosoft.Mcp.Core.Commands). Because logger categories are derived from type namespaces, any logging configuration that targets the old categories (for exampleLogging:LogLevel:Azure.Mcp.Coreentries inappsettings.jsonor log filters in environment variables) must be updated to the newMicrosoft.Mcp.Corecategories to keep applying
Secure-by-Default Behavior:
- New Storage accounts disable Shared Key authentication by default, while continuing to require HTTPS, TLS 1.2, and disabled anonymous blob access
- New Event Hubs namespaces disable local authentication by default
- New NFS file shares default to
RootSquashwith encrypted transit compute vm createandcompute vmss createnow require--image, and theWin2019DatacenterandUbuntu2004image aliases were removed- The MySQL and PostgreSQL
database querytools are now marked destructive and non-read-only, and no longer filter statements by SQL verb. The signed-in user's database permissions determine what a statement may do. In consolidated mode they moved to a newexecute_azure_database_querytool
Bugs Fixed
- Fixed not-found conditions returning HTTP 500/400 instead of 404 and command validation failures returning HTTP 500 instead of 400
- Fixed numerous Azure Backup, Cosmos DB, Event Hubs, Key Vault, MySQL, PostgreSQL, Redis, SQL, and Storage tool issues found through telemetry and live testing
- Fixed CLI log messages and exceptions being written to stdout instead of stderr, which could corrupt JSON and JSON-RPC output
- Fixed trimmed and packaged distributions failing to bind options for some tools
- Fixed the npm wrapper modifying the calling project's
package.jsonand lockfile when auto-installing a platform package
Other Changes
- Migrated tools to the new tool design and updated to the latest
ModelContextProtocolpackages - Improved CLI startup time for targeted command invocations by ~39%
- Added telemetry for tool source, learn usage, tool parameters, and annotations, with improved privacy protections for validation failures
- Extensive tool description improvements across namespaces for better LLM selection accuracy