Azure FinOps MCP Server logo

Azure FinOps MCP Server

Queries Azure costs, budgets, forecasts, Advisor recommendations, utilization, and idle resources through MCP.

Install Azure FinOps MCP Server

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "azure-finops-mcp-server": {
      "command": "uvx",
      "args": [
        "azure-finops-mcp"
      ],
      "env": {
        "AZURE_ALLOWED_SUBSCRIPTIONS": "YOUR_VALUE_HERE",
        "AZURE_DEFAULT_SUBSCRIPTION": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

Azure FinOps MCP Server MCP server connects MCP clients to Azure cost, budget, forecasting, and resource-optimization data across one or more subscriptions. It uses Azure credentials and an allowlist of subscription IDs to expose 15 tools for cost analysis, budget checks, idle-resource discovery, Advisor recommendations, VM utilization, and spend forecasting. Reach for it when an agent needs conversational FinOps analysis without building separate Azure API queries. It supports local stdio connections and can also run remotely over HTTP after deployment to Azure Container Apps.

Use cases

  • Review month-to-date Azure spend across subscriptions
  • Break down cloud costs by service, resource group, location, meter, or tag
  • Check budget consumption and forecast month-end spending
  • Find idle resources and inspect Azure Advisor savings recommendations
  • Validate VM rightsizing with CPU utilization data

Key features

  • Subscription allowlist with a configurable default
  • Cost analysis by date, dimension, and tag
  • Single-subscription and portfolio budget tracking
  • Idle-resource and Azure Advisor cost analysis
  • VM CPU utilization and month-end forecasting
  • Local stdio and deployed HTTP connectivity

Tools14

What Azure FinOps MCP Server lets your agent do. Expand a tool for its parameters.

Self-reported~216 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

4/4 checks healthy over the last 46d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 12d ago via OSV.dev · azure-finops-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

Last commit5mo agoMost recent push to the default branch.
Tools exposed14Callable tools this server registers over MCP.

How Azure FinOps MCP Server works

What Azure FinOps MCP Server MCP server does

Azure FinOps MCP Server MCP server gives an MCP client access to Azure financial and resource data. It can enumerate the subscriptions permitted by configuration, inspect spending for a selected date range, and group costs by service, resource group, location, meter, or tag. Month-to-date cost is available for one subscription or for the full configured portfolio.

Budget tools report consumption for an individual subscription or across all subscriptions. Optimization tools identify unattached disks, unused public IPs or network interfaces, and stopped virtual machines. Azure Advisor cost recommendations include annual savings information, while VM utilization exposes CPU statistics that can help validate a rightsizing decision. Forecasting tools estimate month-end spending for one subscription or the entire portfolio.

How it works

The server runs as an MCP process and communicates with local clients over stdio. Its architecture uses a shared Azure credential and Azure REST APIs for the underlying queries. Subscription access is restricted through an allowlist, and one permitted subscription is selected as the default for operations that do not specify another subscription.

The repository also documents HTTP access after deployment to Azure Container Apps. In that mode, an MCP client connects to the deployed /mcp endpoint instead of starting a local Python process. The Container App can use a system-assigned managed identity, with DefaultAzureCredential obtaining credentials at runtime. A configurable cache TTL is supported in client configuration examples.

Setup and configuration

Azure FinOps MCP Server MCP server requires Python 3.11 or newer and an Azure CLI session authenticated with az login for local use. Install it from PyPI with pip install azure-finops-mcp, or clone the repository and install the package in an activated virtual environment.

Set AZURE_ALLOWED_SUBSCRIPTIONS to a comma-separated list of subscription IDs the server may query. Set AZURE_DEFAULT_SUBSCRIPTION to one ID from that list. The identity used by the process needs Cost Management Reader, Reader, and Monitoring Reader roles on every permitted subscription. These roles cover cost and budget queries, resource inventory, and VM metrics respectively.

For local validation, the MCP Inspector can launch the module directly. Confirm that the transport is STDIO, connect, list the tools, and try list_subscriptions before using cost queries. The documented clients include Claude Desktop, VS Code with GitHub Copilot Agent mode, Cursor, and Claude Code. The package can also be configured in client-specific MCP configuration files.

Tools and capabilities

The 15 exposed tools are grouped into five areas:

  • Discovery: list allowed subscriptions and friendly names.
  • Cost analysis: retrieve date-range totals, dimensional breakdowns, tag-based groupings, and month-to-date spend.
  • Budgets: inspect single-subscription and portfolio budget consumption.
  • Optimization: find idle resources, retrieve Azure Advisor savings recommendations, and review VM CPU utilization.
  • Forecasting: estimate month-end spend for one subscription or all configured subscriptions.

Single-subscription tools use the configured default where the tool does not require an explicit subscription. Portfolio tools aggregate across all subscriptions in the allowlist.

Limitations and notes

The server only queries subscriptions included in AZURE_ALLOWED_SUBSCRIPTIONS; adding an Azure subscription to the account alone does not make it available. Required Azure roles must be assigned on each subscription, and VM utilization depends on Monitoring Reader access.

The repository documents local stdio operation and remote HTTP operation after an Azure Container Apps deployment. It does not describe write actions for changing budgets, deleting idle resources, applying Advisor recommendations, or resizing virtual machines. The optimization and forecasting tools therefore provide analysis and predictions rather than documented remediation actions.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Azure FinOps MCP Server

Azure FinOps MCP Server is an MCP server that connects MCP clients to Azure cost, budget, forecasting, Advisor, resource inventory, and monitoring APIs. Its main tools analyze spending, check budgets, forecast month-end costs, find idle resources, retrieve savings recommendations, and inspect VM CPU utilization across allowed subscriptions.

Install it with `pip install azure-finops-mcp`, then configure an MCP client to run the `azure-finops-mcp` command. Local use requires Python 3.11 or newer, Azure CLI installation, and an authenticated `az login` session.

It needs Cost Management Reader, Reader, and Monitoring Reader on each subscription in the allowlist. These roles support cost and budget queries, resource inventory, and VM utilization metrics.

Yes, it works with Cursor through a local stdio MCP configuration or a deployed HTTP endpoint. The documented setup uses Cursor's `mcp.json` file or its MCP settings, followed by a restart.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewAzure FinOps MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/azure-finops-mcp-server?style=directory)](https://allmcps.com/mcp/azure-finops-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/azure-finops-mcp-server"><img src="https://allmcps.com/api/badge/azure-finops-mcp-server?style=directory" alt="Azure FinOps MCP Server on AllMCPs" /></a>