Azure MCP Server - Model Context Protocol implementation for Azure, for linux on x64
npm install @azure/mcp-linux-x64
All Azure MCP tools in a single server. The Azure MCP Server implements the MCP specification to create a seamless connection between AI agents and Azure services. Azure MCP Server can be used alone or with the GitHub Copilot for Azure extension in VS Code.
Azure MCP Server supercharges your agents with Azure context across 40+ different Azure services.
npm and npx. We recommend Node.js 20 LTS or later. To verify your installation run: node --version, npm --version, and npx --version.mcp.json file with the following: ``json`
{
"mcpServers": {
"Azure MCP Server": {
"command": "npx",
"args": [
"-y",
"@azure/mcp@latest",
"server",
"start"
]
}
}
}
servers
Note: When manually configuring Visual Studio and Visual Studio Code, use instead of mcpServers as the root object.
Client-Specific Configuration
| IDE | File Location | Documentation Link |
|-----|---------------|-------------------|
| VS Code | .vscode/mcp.json (workspace)settings.json (user) | VS Code MCP Documentation |.mcp.json
| Visual Studio | (solution/workspace) | Visual Studio MCP Setup |~/.copilot/mcp-config.json
| GitHub Copilot CLI | | Copilot CLI MCP Configuration |~/.claude.json
| Claude Code | or .mcp.json (project) | Claude Code MCP Configuration |~/.cursor/mcp.json
| Eclipse IDE | GitHub Copilot Chat -> Configure Tools -> MCP Servers | Eclipse MCP Documentation |
| IntelliJ IDEA | Built-in MCP server (2025.2+)
Settings > Tools > MCP Server | IntelliJ MCP Documentation |
| Cursor | or .cursor/mcp.json | Cursor MCP Documentation |~/.codeium/windsurf/mcp_config.json
| Windsurf | | Windsurf Cascade MCP Integration |~/.aws/amazonq/mcp.json
| Amazon Q Developer | (global).amazonq/mcp.json (workspace) | AWS Q Developer MCP Guide |~/.claude/claude_desktop_config.json
| Claude Desktop | (macOS)%APPDATA%\Claude\claude_desktop_config.json (Windows) | Claude Desktop MCP Setup |
Microsoft Foundry and Microsoft Copilot Studio require remote MCP server endpoints. To self-host the Azure MCP Server for use with these platforms, deploy it as a remote MCP server on Azure Container Apps.
Check out the remote hosting azd templates for deployment options.
1. Open GitHub Copilot in VS Code or IntelliJ and switch to Agent mode.
1. Click refresh on the tools listList my Azure Storage containers
- You should see the Azure MCP Server in the list of tools
1. Try a prompt that tells the agent to use the Azure MCP Server, such as
- The agent should be able to use the Azure MCP Server tools to complete your query
1. Check out the documentation and review the troubleshooting guide for commonly asked questions
1. We're building this in the open. Your feedback is much appreciated, and will help us shape the future of the Azure MCP server
- ๐ Open an issue in the public repository
โจ The Azure MCP Server supercharges your agents with Azure context. Here are some cool prompts you can try:
* List Microsoft Foundry models
* Deploy Microsoft Foundry models
* List Microsoft Foundry model deployments
* List knowledge indexes
* Get knowledge index schema configuration
* Create Microsoft Foundry agents
* List Microsoft Foundry agents
* Connect and query Microsoft Foundry agents
* Evaluate Microsoft Foundry agents
* Get SDK samples for interacting with Microsoft Foundry agent
* Create Microsoft Foundry agent threads
* List Microsoft Foundry agent threads
* Get messages of a Microsoft Foundry thread
* "List my Advisor recommendations"
* "What indexes do I have in my Azure AI Search service 'mysvc'?"
* "Let's search this index for 'my search query'"
* "Convert this audio file to text using Azure Speech Services"
* "Recognize speech from my audio file with language detection"
* "Transcribe speech from audio with profanity filtering"
* "Transcribe audio with phrase hints for better accuracy"
* "Convert text to speech and save to output.wav"
* "Synthesize speech from 'Hello, welcome to Azure' with Spanish voice"
* "Generate MP3 audio from text with high quality format"
* "List my App Configuration stores"
* "Show my key-value pairs in App Config"
* "Help me diagnose issues with my app"
* "List the websites in my subscription"
* "Show me the websites in my 'my-resource-group' resource group"
* "Get the details for website 'my-website'"
* "Get the details for app service plan 'my-app-service-plan'"
* Generate Azure CLI commands based on user intent
* Get installation instructions for Azure CLI, Azure Developer CLI and Azure Functions Core Tools CLI for your platform.
* "Send an SMS message to +1234567890"
* "Send SMS with delivery reporting enabled"
* "Send a broadcast SMS to multiple recipients"
* "Send SMS with custom tracking tag"
* "Send an email from 'sender@example.com' to 'recipient@example.com' with subject 'Hello' and message 'Welcome!'"
* "Send an HTML email to multiple recipients with CC and BCC using Azure Communication Services"
* "Send an email with reply-to address 'reply@example.com' and subject 'Support Request'"
* "Send an email from my communication service endpoint with custom sender name and multiple recipients"
* "Send an email to 'user1@example.com' and 'user2@example.com' with subject 'Team Update' and message 'Please review the attached document.'"
* "List all virtual machines in my subscription"
* "Show me all VMs in resource group 'my-resource-group'"
* "Get details for virtual machine 'my-vm' in resource group 'my-resource-group'"
* "Get virtual machine 'my-vm' with instance view including power state and runtime status"
* "Show me the power state and provisioning status of VM 'my-vm'"
* "What is the current status of my virtual machine 'my-vm'?"
* "List the container apps in my subscription"
* "Show me the container apps in my 'my-resource-group' resource group"
* "Append entry {"foo":"bar"} to ledger contoso"
* "Get entry with id 2.40 from ledger contoso"
* "List all my Azure Container Registries"
* "Show me my container registries in the 'my-resource-group' resource group"
* "List all my Azure Container Registry repositories"
* "Show me all my Cosmos DB databases"
* "List containers in my Cosmos DB database"
* "Get Azure Data Explorer databases in cluster 'mycluster'"
* "Sample 10 rows from table 'StormEvents' in Azure Data Explorer database 'db1'"
* "List all Event Grid topics in subscription 'my-subscription'"
* "Show me the Event Grid topics in my subscription"
* "List all Event Grid topics in resource group 'my-resourcegroup' in my subscription"
* "List Event Grid subscriptions for topic 'my-topic' in resource group 'my-resourcegroup'"
* "List Event Grid subscriptions for topic 'my-topic' in subscription 'my-subscription'"
* "List Event Grid Subscriptions in subscription 'my-subscription'"
* "List Event Grid subscriptions for topic 'my-topic' in location 'my-location'"
* "Publish an event with data '{\"name\": \"test\"}' to topic 'my-topic' using CloudEvents schema"
* "Send custom event data to Event Grid topic 'analytics-events' with EventGrid schema"
* "Get details about a specific file share in my resource group"
* "Create a new Azure managed file share with NFS protocol"
* "Create a file share with 64 GiB storage, 3000 IOPS, and 125 MiB/s throughput"
* "Update the provisioned storage size of my file share"
* "Update network access settings for my file share"
* "Delete a file share from my resource group"
* "Check if a file share name is available"
* "Get details about a file share snapshot"
* "Create a snapshot of my file share"
* "Update tags on a file share snapshot"
* "Delete a file share snapshot"
* "Get a private endpoint connection for my file share"
* "Update private endpoint connection status to Approved"
* "Delete a private endpoint connection"
* "Get file share limits and quotas for a region"
* "Get provisioning recommendations for my file share workload"
* "Get usage data and metrics for my file share"
* "List all secrets in my key vault 'my-vault'"
* "Create a new secret called 'apiKey' with value 'xyz' in key vault 'my-vault'"
* "List all keys in key vault 'my-vault'"
* "Create a new RSA key called 'encryption-key' in key vault 'my-vault'"
* "List all certificates in key vault 'my-vault'"
* "Import a certificate file into key vault 'my-vault' using the name 'tls-cert'"
* "Get the account settings for my key vault 'my-vault'"
* "List my AKS clusters in my subscription"
* "Show me all my Azure Kubernetes Service clusters"
* "List the node pools for my AKS cluster"
* "Get details for the node pool 'np1' of my AKS cluster 'my-aks-cluster' in the 'my-resource-group' resource group"
* "List the Azure Managed Lustre clusters in resource group 'my-resource-group'"
* "How many IP Addresses I need to create a 128 TiB cluster of AMLFS 500?"
* "Check if 'my-subnet-id' can host an Azure Managed Lustre with 'my-size' TiB and 'my-sku' in 'my-region'
* Create a 4 TIB Azure Managed Lustre filesystem in 'my-region' attaching to 'my-subnet' in virtual network 'my-virtual-network'
* "Query my Log Analytics workspace"
* "List my resource groups"
* "List my Azure CDN endpoints"
* "Help me build an Azure application using Node.js"
* "List all SQL servers in my subscription"
* "List all SQL servers in my resource group 'my-resource-group'"
* "Show me details about my Azure SQL database 'mydb'"
* "List all databases in my Azure SQL server 'myserver'"
* "Update the performance tier of my Azure SQL database 'mydb'"
* "Rename my Azure SQL database 'mydb' to 'newname'"
* "List all firewall rules for my Azure SQL server 'myserver'"
* "Create a firewall rule for my Azure SQL server 'myserver'"
* "Delete a firewall rule from my Azure SQL server 'myserver'"
* "List all elastic pools in my Azure SQL server 'myserver'"
* "List Active Directory administrators for my Azure SQL server 'myserver'"
* "Create a new Azure SQL server in my resource group 'my-resource-group'"
* "Show me details about my Azure SQL server 'myserver'"
* "Delete my Azure SQL server 'myserver'"
* "List my Azure storage accounts"
* "Get details about my storage account 'mystorageaccount'"
* "Create a new storage account in East US with Data Lake support"
* "Get details about my Storage container"
* "Upload my file to the blob container"
* "Generate a Platform Landing Zone"
* "Turn off DDoS protection in my Platform Landing Zone"
* "Turn off Bastion host in my Platform Landing Zone"
The Azure MCP Server provides tools for interacting with 42+ Azure service areas:
- ๐งฎ Microsoft Foundry - AI model management, AI model deployment, and knowledge index management
- ๐ Azure Advisor - Advisor recommendations
- ๐ Azure AI Search - Search engine/vector database operations
- ๐ค Azure AI Services Speech - Speech-to-text recognition and text-to-speech synthesis
- โ๏ธ Azure App Configuration - Configuration management
- ๐ธ๏ธ Azure App Service - Web app hosting
- ๐ก๏ธ Azure Best Practices - Secure, production-grade guidance
- ๐ฅ๏ธ Azure CLI Generate - Generate Azure CLI commands from natural language
- ๐ Azure Communication Services - SMS messaging and communication
- ๏ฟฝ Azure Compute - Virtual Machine and Virtual Machine Scale Set management
- ๏ฟฝ๐ Azure Confidential Ledger - Tamper-proof ledger operations
- ๐ฆ Azure Container Apps - Container hosting
- ๐ฆ Azure Container Registry (ACR) - Container registry management
- ๐ Azure Cosmos DB - NoSQL database operations
- ๐งฎ Azure Data Explorer - Analytics queries and KQL
- ๐ฌ Azure Database for MySQL - MySQL database management
- ๐ Azure Database for PostgreSQL - PostgreSQL database management
- ๐ Azure Event Grid - Event routing and management
- ๏ฟฝ Azure File Shares - Azure managed file share operations
- โก Azure Functions - Function App management
- ๐ Azure Key Vault - Secrets, keys, and certificates
- โธ๏ธ Azure Kubernetes Service (AKS) - Container orchestration
- ๐ฆ Azure Load Testing - Performance testing
- ๐ Azure Managed Grafana - Monitoring dashboards
- ๐๏ธ Azure Managed Lustre - High-performance Lustre filesystem operations
- ๐ช Azure Marketplace - Product discovery
- ๐ Azure Migrate - Platform Landing Zone generation and modification guidance
- ๐ Azure Monitor - Logging, metrics, and health monitoring
- โ๏ธ Azure Policy - Policies set to enforce organizational standards
- โ๏ธ Azure Native ISV Services - Third-party integrations
- ๐ก๏ธ Azure Quick Review CLI - Compliance scanning
- ๐ Azure Quota - Resource quota and usage management
- ๐ญ Azure RBAC - Access control management
- ๐ด Azure Redis Cache - In-memory data store
- ๐๏ธ Azure Resource Groups - Resource organization
- ๐ Azure Service Bus - Message queuing
- ๐ฅ Azure Service Health - Resource health status and availability
- ๐๏ธ Azure SQL Database - Relational database management
- ๐๏ธ Azure SQL Elastic Pool - Database resource sharing
- ๐๏ธ Azure SQL Server - Server administration
- ๐พ Azure Storage - Blob storage
- Azure Storage Sync - Azure File Sync management operations
- ๐ Azure Subscription - Subscription management
- ๐๏ธ Azure Terraform Best Practices - Infrastructure as code guidance
- ๐ฅ๏ธ Azure Virtual Desktop - Virtual desktop infrastructure
- ๐ Azure Workbooks - Custom visualizations
- ๐๏ธ Bicep - Azure resource templates
- ๐๏ธ Cloud Architect - Guided architecture design
- See our official documentation on learn.microsoft.com to learn how to use the Azure MCP Server to interact with Azure resources through natural language commands from AI agents and other types of clients.
- For additional command documentation and examples, see Azure MCP Commands.
- Check the Troubleshooting guide to diagnose and resolve common issues with the Azure MCP Server.
- For advanced troubleshooting, you can enable support logging using the --dangerously-write-support-logs-to-dir option.
- We're building this in the open. Your feedback is much appreciated, and will help us shape the future of the Azure MCP server.
- ๐ Open an issue in the public GitHub repository โ weโd love to hear from you!
Your credentials are always handled securely through the official Azure Identity SDK - we never store or manage tokens directly.
MCP as a phenomenon is very novel and cutting-edge. As with all new technology standards, consider doing a security review to ensure any systems that integrate with MCP servers follow all regulations and standards your system is expected to adhere to. This includes not only the Azure MCP Server, but any MCP client/agent that you choose to implement down to the model provider.
You should follow Microsoft security guidance for MCP servers, including enabling Entra ID authentication, secure token management, and network isolation. Refer to Microsoft Security Documentation for details.
MCP clients can invoke operations based on the userโs Azure RBAC permissions. Autonomous or misconfigured clients may perform destructive actions. You should review and apply least-privilege RBAC roles and implement safeguards before deployment. Certain safeguards, such as flags to prevent destructive operations, are not standardized in the MCP specification and may not be supported by all clients.
The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the repository. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft's privacy statement. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.
Telemetry collection is on by default. The server supports two telemetry streams:
1. User-provided telemetry: If you configure your own Application Insights connection string via the APPLICATIONINSIGHTS_CONNECTION_STRING environment variable, telemetry will be sent to your Application Insights resource.
2. Microsoft telemetry: By default, telemetry is also sent to Microsoft to help improve the product. This can be disabled separately from user-provided telemetry. See Disabling All Telemetry section below for more details.
#### Disabling All Telemetry
To disable all telemetry collection (both user-provided and Microsoft), set the environment variable AZURE_MCP_COLLECT_TELEMETRY to false:
`bash`
export AZURE_MCP_COLLECT_TELEMETRY=false
#### Disabling Microsoft Telemetry Only
To disable only Microsoft telemetry collection while keeping your own Application Insights telemetry active, set the environment variable AZURE_MCP_COLLECT_TELEMETRY_MICROSOFT to false:
`bash``
export AZURE_MCP_COLLECT_TELEMETRY_MICROSOFT=false
This MCP server may interact with clients and services outside Microsoft compliance boundaries. You are responsible for ensuring that any integration complies with applicable organizational, regulatory, and contractual requirements.
This MCP server may use or depend on third party components. You are responsible for reviewing and complying with the licenses and security posture of any third-party components.
Use of this software must comply with all applicable export laws and regulations, including U.S. Export Administration Regulations and local jurisdiction requirements.
This software is provided โas isโ without warranties or conditions of any kind, either express or implied. Microsoft shall not be liable for any damages arising from use, misuse, or misconfiguration of this software.
We welcome contributions to the Azure MCP Server! Whether you're fixing bugs, adding new features, or improving documentation, your contributions are welcome.
Please read our Contributing Guide for guidelines on:
* ๐ ๏ธ Setting up your development environment
* โจ Adding new commands
* ๐ Code style and testing requirements
* ๐ Making pull requests
This project has adopted the
Microsoft Open Source Code of Conduct.
For more information, see the
Code of Conduct FAQ
or contact open@microsoft.com
with any additional questions or comments.