Microsoft Azure logo
Network & Infrastructure
Live

Microsoft Azure MCP server

The core-infrastructure slice of Azure Resource Manager, on your own tenant's consent.

Tools
77
Read-only
50
Write
27
Off by default
Destructive
23
Flagged distinctly
What it does

Microsoft Azure through an assistant

Compute, Storage, Key Vault, SQL, Cosmos DB, AKS, Container Registry, App Service and Monitor -- the namespaces most teams actually operate day to day. Your Azure AD tenant consents once, then you choose which subscriptions a connection may reach, and that choice is checked per tool call. Everything that deletes, deallocates or overwrites is opt-in and requires an explicit confirmation.

  • Virtual machines, managed disks and scale sets, with power state
  • SQL servers, databases, elastic pools and firewall rules
  • Cosmos DB and Storage accounts, databases and containers
  • AKS clusters and node pools, plus Container Registry repositories
  • App Service web apps and Monitor's activity log, metrics and Log Analytics queries
  • Create, update and delete resources (opt-in, confirmation required)
Ask your assistant

What people actually ask

Real questions, answered from live Microsoft Azure data.

Which VMs in this subscription are still running right now?

azure_compute_vm_listazure_compute_vm_power_state

Are there any SQL firewall rules allowing the whole internet?

azure_sql_server_listazure_sql_server_firewall_rule_list

What has this web app logged in the last hour, and are the diagnostics clean?

azure_monitor_log_queryazure_appservice_diagnostic_list
Tool catalogue

77 Microsoft Azure tools

Grouped by what they touch. Every tool is individually toggleable — you expose only what you want.

Virtual machines & disks

16 tools6 read-only · 10 write

Showing 10 of 10 tools

  • azure_compute_disk_create
    Write
    Destructive

    Create a managed disk (empty, or from a source). Provisions billable storage.

  • azure_compute_disk_delete
    Write
    Destructive

    Permanently delete a managed disk and all data on it. IRREVERSIBLE.

  • azure_compute_disk_get
    Read-only

    Get a single managed disk by name.

  • azure_compute_disk_list
    Read-only

    List managed disks in a subscription, optionally scoped to a resource group.

  • azure_compute_disk_update
    Write
    Destructive

    Resize or change the SKU of an existing managed disk. Can shrink availability of the disk mid-flight if attached to a running VM.

  • azure_compute_vm_create
    Write
    Destructive

    Create/deploy a new virtual machine with its OS disk. Provisions billable compute and storage.

  • azure_compute_vm_delete
    Write
    Destructive

    Permanently delete a virtual machine. Does NOT delete its disks or NICs by default -- those are separate resources. IRREVERSIBLE.

  • azure_compute_vm_get
    Read-only

    Get a single virtual machine by name, including its current provisioning state.

  • azure_compute_vm_list
    Read-only

    List virtual machines in a subscription, optionally scoped to a resource group.

  • azure_compute_vm_power_state
    Write
    Destructive

    Start, stop (power off but keep billing for allocated hardware), restart, or deallocate (stop AND release the underlying hardware, stopping compute billing) a virtual machine. Deallocating or stopping a running VM interrupts anything running on it.

+ 6 more virtual machines & disks tools see the full catalogue

SQL databases

16 tools8 read-only · 8 write

Showing 10 of 10 tools

  • azure_cosmos_database_list
    Read-only

    List the SQL (Core) API databases under a Cosmos DB account. Accounts using another API (MongoDB, Cassandra, Gremlin, Table) expose their databases/keyspaces/tables under different ARM sub-resource types not covered here.

  • azure_sql_database_create
    Write
    Destructive

    Create a new database on an existing Azure SQL server.

  • azure_sql_database_delete
    Write
    Destructive

    Delete a single database from an Azure SQL server. Irreversible.

  • azure_sql_database_get
    Read-only

    Get details, including current SKU/tier, of a single database on an Azure SQL server.

  • azure_sql_database_list
    Read-only

    List all databases on an Azure SQL server.

  • azure_sql_database_rename
    Write
    Destructive

    Rename a database in place on the same server.

  • azure_sql_database_update
    Write
    Destructive

    Scale or reconfigure an existing database's performance SKU (e.g. change service tier or compute size).

  • azure_sql_elastic_pool_list
    Read-only

    List the elastic pools configured on an Azure SQL server.

  • azure_sql_server_create
    Write
    Destructive

    Create a new Azure SQL logical server with admin credentials. administratorLoginPassword is write-only -- Azure never echoes it back in responses, and this tool does not persist or log it beyond the request itself.

  • azure_sql_server_delete
    Write
    Destructive

    Delete an Azure SQL logical server and every database on it. Irreversible.

+ 6 more sql databases tools see the full catalogue

Key Vault

9 tools6 read-only · 3 write

Showing 9 of 9 tools

  • azure_keyvault_certificate_create
    Write

    Create/issue a new certificate (a new version, if the name already exists). This starts an async issuance operation against the vault's configured issuer (self-signed by default). Does not import existing PFX/PEM material -- that's azmcp's certificate_import, out of scope for this pass (see file header). DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_certificate_get
    Read-only

    Get a certificate's public portion (cer/PEM) and metadata by name. Never returns the private key -- pair azure_keyvault_key_get / azure_keyvault_secret_get against the same name for exportable material where the vault's policy allows it. DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_certificate_list
    Read-only

    List certificates in a vault by name and metadata (never returns private key material). DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_key_create
    Write

    Create a new key (a new version, if the name already exists -- old versions remain readable, unlike a secret). DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_key_get
    Read-only

    Get a key's public portion and metadata by name. Never returns private key material -- Key Vault keys are non-exportable by design. DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_key_list
    Read-only

    List keys in a vault by name and metadata (never returns private key material). DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_secret_create
    Write
    Destructive

    Create/set a secret's value. IMPORTANT: if a secret with this name already exists, this SILENTLY adds a new current version -- every future reader gets the new value with no separate warning. Marked destructive for that reason (see this file's header 'Secret-flag, not Destructive-flag' comment), even though nothing is deleted. DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_secret_get
    Read-only

    Get a secret by name. SENSITIVE: the response includes the secret's live plaintext VALUE, not just metadata -- treat the output as confidential. DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

  • azure_keyvault_secret_list
    Read-only

    List secrets in a vault by name and metadata ONLY -- does not return secret values (Azure's list API never does; use azure_keyvault_secret_get per-name for a value). DATA-plane operation against {vaultName}.vault.azure.net -- see this file's header KNOWN GAP comment.

App Service

9 tools6 read-only · 3 write

Showing 9 of 9 tools

  • azure_appservice_database_add
    Write

    Add a database connection string to a web app. Not destructive: this reads the existing connection strings first and adds the new one to them, rather than replacing the whole collection.

  • azure_appservice_deployment_list
    Read-only

    List deployment history for a web app -- status, timestamps, commit/author info where available.

  • azure_appservice_diagnostic_list
    Read-only

    List the diagnostic detectors available for a web app (e.g. 'high CPU', 'app crashes') -- use with azure_appservice_diagnostic_run to actually run one.

  • azure_appservice_diagnostic_run
    Read-only

    Run a specific diagnostic detector against a web app and return its analysis (e.g. root-causing high CPU or crashes over a time window).

  • azure_appservice_webapp_change_state
    Write
    Destructive

    Start, stop, or restart a web app. Stopping or restarting a running production app causes an outage for its users -- requires confirm: true.

  • azure_appservice_webapp_get
    Read-only

    Get a single App Service web app's details (state, host names, SKU, runtime).

  • azure_appservice_webapp_list
    Read-only

    List App Service web apps in a subscription, optionally scoped to one resource group.

  • azure_appservice_webapp_settings_get
    Read-only

    Get a web app's application settings (key-value pairs). SENSITIVE: these commonly include connection strings, API keys, and other secrets in plaintext -- treat the output as you would a Key Vault secret read.

  • azure_appservice_webapp_settings_update
    Write
    Destructive

    Replace a web app's application settings. DESTRUCTIVE: ARM's appsettings write is a full REPLACE of the entire settings collection, not a merge -- any existing key you don't include here is silently removed. Read the current settings with azure_appservice_webapp_settings_get first and include every key you want kept.

Monitor & logs

9 tools9 read-only · 0 write

Showing 9 of 9 tools

  • azure_monitor_activity_log_list
    Read-only

    List Azure Activity Log events (control-plane operations like create/update/delete) for a subscription, optionally scoped to one resource and a time window.

  • azure_monitor_log_query
    Read-only

    Run a KQL query against diagnostic/activity logs for ONE resource, scoped via the resource's Log Analytics workspace. Uses ARM's query proxy -- see file header for the data-plane-vs-management-plane gap this works around.

  • azure_monitor_metric_definitions_list
    Read-only

    List the metric names/units/supported aggregations available for a resource, so you know what to pass to azure_monitor_metrics_query.

  • azure_monitor_metrics_batch_query
    Read-only

    Query the same metric(s) across multiple resources at once. COMPATIBILITY SHIM: Azure's real Metrics Batch API is a data-plane-only regional endpoint (metrics.monitor.azure.com) this connector can't reach with its ARM-only token -- this fans out to one ARM metrics call per resourceId instead. Correct results, but N HTTP calls, not Azure's real single batch call.

  • azure_monitor_metrics_query
    Read-only

    Query one or more metric time series for a single resource over a time window (e.g. CPU percentage for a VM, request count for a web app).

  • azure_monitor_table_list
    Read-only

    List the tables available in a Log Analytics workspace.

  • azure_monitor_table_type_list
    Read-only

    List the distinct table types (e.g. Microsoft, CustomLog) present in a Log Analytics workspace. INFERRED: ARM has no dedicated 'table types' endpoint documented -- this calls the same Tables-List API as azure_monitor_table_list and summarizes the distinct properties.schema.tableType values found. BUILD-TIME VERIFY this matches Azure's real azmcp_monitor_table_type_list behavior before shipping.

  • azure_monitor_workspace_list
    Read-only

    List Log Analytics workspaces in a subscription, optionally scoped to one resource group.

  • azure_monitor_workspace_log_query
    Read-only

    Run a KQL query across an ENTIRE Log Analytics workspace -- not scoped to one resource. Results are capped at 2000 rows; add explicit filters/aggregation to your KQL rather than relying on the cap. Uses ARM's query proxy -- see file header for the known data-plane gap.

Storage

7 tools4 read-only · 3 write

Showing 7 of 7 tools

  • azure_storage_account_create
    Write
    Destructive

    Create a storage account. Provisions billable storage infrastructure. True ARM management-plane call.

  • azure_storage_account_get
    Read-only

    Get a single storage account by name. True ARM management-plane call.

  • azure_storage_account_list
    Read-only

    List storage accounts in a subscription, optionally scoped to a resource group. True ARM management-plane call.

  • azure_storage_blob_list
    Read-only

    List blobs in a container. DATA-plane operation against *.blob.core.windows.net -- see this file's header KNOWN GAP comment: requires a storage.azure.com token audience this connector does not yet request.

  • azure_storage_blob_upload
    Write

    Upload a small blob (base64-encoded content, capped at 5MB decoded) to a container, ONLY IF a blob of that name doesn't already exist. For anything larger or requiring streaming/chunked/multi-part upload, this control-plane REST tool is not sufficient -- use a real Data Plane SDK client instead. DATA-plane operation against *.blob.core.windows.net -- see this file's header KNOWN GAP comment: requires a storage.azure.com token audience this connector does not yet request.

  • azure_storage_container_create
    Write
    Destructive

    Create a blob container in a storage account. DATA-plane operation against *.blob.core.windows.net -- see this file's header KNOWN GAP comment: requires a storage.azure.com token audience this connector does not yet request.

  • azure_storage_container_list
    Read-only

    List blob containers in a storage account. DATA-plane operation against *.blob.core.windows.net -- see this file's header KNOWN GAP comment: requires a storage.azure.com token audience this connector does not yet request.

Cosmos DB

6 tools6 read-only · 0 write

Showing 6 of 6 tools

  • azure_cosmos_account_list
    Read-only

    List Cosmos DB accounts in a resource group, or across the whole subscription if resourceGroupName is omitted.

  • azure_cosmos_container_list
    Read-only

    List the containers inside a SQL (Core) API Cosmos DB database.

  • azure_cosmos_item_get
    Read-only

    Get a single document by id and partition key from a Cosmos DB container. DATA-PLANE -- not functional yet; see this file's header comment for why.

  • azure_cosmos_item_list_recent
    Read-only

    List the most recently modified documents in a Cosmos DB container, ordered by the system _ts property. DATA-PLANE -- not functional yet; see this file's header comment for why.

  • azure_cosmos_item_query
    Read-only

    List items from a Cosmos DB container via a custom SQL (Core) API query. DATA-PLANE -- not functional yet; see this file's header comment for why.

  • azure_cosmos_schema_infer
    Read-only

    Infer an approximate schema (top-level field names and types) for a Cosmos DB container by sampling documents. DATA-PLANE -- not functional yet; see this file's header comment for why.

Kubernetes & registry

5 tools5 read-only · 0 write

Showing 5 of 5 tools

  • azure_acr_registry_list
    Read-only

    List Azure Container Registries in a resource group, or across the whole subscription if resourceGroupName is omitted.

  • azure_acr_repository_list
    Read-only

    List repositories (image names) stored in an Azure Container Registry. DATA-PLANE -- not functional yet; see this file's header comment for why.

  • azure_aks_cluster_get
    Read-only

    Get details of a single AKS managed cluster, including its Kubernetes version and network profile.

  • azure_aks_cluster_list
    Read-only

    List all AKS (Azure Kubernetes Service) managed clusters across the subscription.

  • azure_aks_nodepool_list
    Read-only

    List the node pools (system and user) configured on an AKS managed cluster.

Every tool name and description, machine-readable: /llms-full.txt

Access & safety

You decide what it can touch

The same model applies to every connector, and it defaults closed.

Authorize once

Connect Microsoft Azure through its own consent screen. Credentials are encrypted with AES-256-GCM and never returned by any API response or tool call.

Writes off by default

A new connection switches on a read-oriented default set only. Every write tool must be enabled deliberately before any client can call it.

Roles enforced server-side

READ, WRITE and ADMIN gate tool invocation on the server, not just in the UI. A READ member's token is refused any write tool.

Setup

Connect Microsoft Azure in minutes

No infrastructure to run. Copy one URL and one token into your client.

  1. 1Create a free workspace and connect Microsoft Azure.
  2. 2Choose which tools to expose — writes stay off until you enable them.
  3. 3Copy your MCP endpoint URL and bearer token.
  4. 4Paste them into Claude, Cursor, or any MCP client.
claude_desktop_config.json
{
  "mcpServers": {
    "serve-mcp": {
      "url": "https://servemcp.com/api/mcp/your-workspace",
      "transport": "http",
      "headers": {
        "Authorization": "Bearer smcp_..."
      }
    }
  }
}

Put Microsoft Azure in front of your assistant

Free plan, no card required. Connect in minutes.