home / mcp / azure pricing mcp server

Azure Pricing MCP Server

Provides real-time Azure pricing data and cost insights for AI assistants via natural language.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "msftnadavbh-azurepricingmcp": {
      "command": "python",
      "args": [
        "-m",
        "azure_pricing_mcp"
      ]
    }
  }
}

You can run a Model Context Protocol (MCP) server that gives AI assistants real-time access to Azure pricing data, enabling natural-language queries for VM prices, regional comparisons, cost estimates, and SKU discovery. It combines pricing data sources with handy tools to help you plan, compare, and optimize Azure spending.

How to use

You interact with the MCP server through your preferred MCP client. The server exposes a suite of tools that let you search Azure prices, compare costs across regions or SKUs, estimate ongoing costs, assess Reserved Instances, and discover SKUs. You can also get region recommendations for the cheapest options, receive retirement warnings for retiring VM SKUs, and analyze spot pricing history. For Databricks DBU pricing and GitHub pricing, you get catalog access and cost estimates as well. Use the client to compose natural-language requests such as asking for the price of a VM in a specific region, comparing two SKUs, or estimating your monthly cloud bill.

How to install

Prerequisites: you need Python on your system to run the MCP server directly, or Docker if you prefer containerized execution. You may also want a virtual environment for Python projects.

# Clone the project
git clone https://github.com/msftnadavbh/AzurePricingMCP.git
cd AzurePricingMCP

# Optional: set up a Python virtual environment
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run the MCP server (Python approach)
python -m azure_pricing_mcp

If you prefer containerized execution, you can build and run a Docker container that contains the MCP server.

# Build the Docker image
docker build -t azure-pricing-mcp .

# Run the MCP server from the image
docker run -i azure-pricing-mcp

Additional notes

Key components include a Python-based MCP server, tool handlers for Azure price operations, and an API client that talks to the Azure Retail Prices API. The server provides a comprehensive feature set, including price search, price comparison, cost estimation, RI pricing, region recommendations, SKU discovery, retirement warnings, spot pricing insights, orphaned resource detection, PTU sizing for OpenAI deployments, and Databricks and GitHub pricing capabilities.

The Azure Retail Prices API endpoint used by the server is publicly accessible without authentication. You can query the endpoint to retrieve current price data for Azure services.

Project overview and related technologies

The project contains a modular structure with core server logic, tool handlers, and data models. It includes separate subdirectories for Databricks DBU tools and GitHub pricing tools, along with tests and documentation for installation, features, and usage.

Tools and capabilities

The MCP server provides 18 tools that empower your AI assistant to work with Azure pricing data. These tools enable price searches, comparisons, RI pricing analysis, cost estimation, region recommendations, SKU discovery, retirement warnings, spot VM insights, orphaned resource detection, PTU sizing, Databricks DBU pricing, and GitHub pricing. Each tool is designed to perform a specific pricing-related task and can be invoked by your MCP client as part of your conversation.

Available tools

azure_price_search

Search Azure retail prices with flexible filters to find current pricing for services and SKUs.

azure_price_compare

Compare costs across regions or SKUs to identify the most economical options.

azure_ri_pricing

Analyze Reserved Instance pricing and perform break-even calculations.

azure_cost_estimate

Estimate monthly or yearly costs based on usage scenarios.

azure_region_recommend

Recommend the cheapest Azure regions for a given SKU.

azure_discover_skus

Discover and fuzzy-match service SKUs to simplify lookup.

get_customer_discount

Retrieve customer-specific discounts and savings opportunities.

spot_eviction_rates

Provide eviction rates for Azure Spot VMs and related pricing insights.

spot_price_history

Show price history for Spot VMs to help timing decisions.

simulate_eviction

Simulate Spot VM eviction scenarios for planning.

find_orphaned_resources

Identify unused resources and calculate potential costs to reclaim waste.

azure_ptu_sizing

Estimate Provisioned Throughput Units for Azure OpenAI deployments.

databricks_dbu_pricing

Query Databricks DBU pricing and rates.

databricks_cost_estimate

Estimate costs for Databricks workloads.

databricks_compare_workloads

Compare different Databricks workloads for cost efficiency.

github_pricing

Access GitHub pricing catalog including plans, Copilot, Actions, and Security.

github_cost_estimate

Estimate costs for GitHub usage and services.