azure-mcp-cost-and-capacity · git:20260519.13c8941 · 2026-05-19 · sha256 2ef1e25a29c31cc7
azure-mcp-cost-and-capacity git:20260519.13c8941A
Immutable. This exact content is served forever at /api/v1/blob/2ef1e25a29c31cc7.
--- name: "azure-mcp-cost-and-capacity" description: "Use this skill for Azure cost, pricing, capacity, and inventory work through the azure-mcp connector — retail pricing lookups, subscription quota and usage-limit checks, and listing/inspecting subscriptions and resource groups. All read-only." when_to_use: "When estimating Azure cost, checking quota headroom before scaling a deployment, or taking inventory of subscriptions and resource groups" triggers: - azure pricing - azure cost estimate - retail price azure - azure quota - azure usage limits - quota check - azure subscriptions - resource groups - azure inventory - pre-deployment check --- # Azure Cost & Capacity This skill covers the cost, capacity, and inventory side of the `azure-mcp` connector: the `pricing`, `quota`, `subscription`, and `group` namespaces. All four are **read-only** — they answer "what would this cost", "do we have headroom", and "what exists", never "provision this". Tool names follow the Azure MCP Server's namespace convention (`azmcp` / `azure_mcp` prefixes, grouped under `pricing`, `quota`, `subscription`, `group`). Invoke them by capability. ## Namespace surface ### `subscription` — subscription inventory Lists the Azure subscriptions the connected service principal can see, with their IDs, display names, and state (`Enabled`, `Disabled`, `Warned`). This is almost always the **first call** in any workflow — nearly every other namespace needs a subscription ID for scope. ### `group` — resource-group inventory Lists and inspects resource groups within a subscription: name, location, tags, and provisioning state. Use it to map the shape of an environment, find resources by tag, or pick the right scope for a pricing or quota question. ### `pricing` — Azure retail pricing Looks up Azure **retail** prices from the public Azure Retail Prices API — meter rates by service, SKU, region, and currency. This gives list pricing, not the customer's negotiated or EA/CSP pricing, and not actual billed consumption. Treat its output as an estimate baseline. ### `quota` — quota & usage limits Reports subscription quotas and current usage for a resource provider and region — e.g. vCPU quota for a VM family, public IP count, network interface count. Each entry shows the limit, current usage, and therefore the remaining headroom. ## Workflow patterns ### Pre-deployment quota check Before someone scales a deployment or stands up new resources, confirm there is headroom: 1. **`subscription`** — resolve the target subscription ID. 2. **`quota`** — pull quota and current usage for the relevant provider and region (e.g. `Microsoft.Compute` vCPUs in `eastus`). 3. Compare requested capacity against `limit - usage`. If headroom is insufficient, report the exact shortfall and the region — a quota increase is a separate, write/support action outside this connector. Catching this before deployment avoids a half-failed rollout when Azure rejects the request at `limit`. ### Cost estimation When asked "what would X cost": 1. **`subscription`** / **`group`** — establish scope and region (region materially changes price). 2. **`pricing`** — look up the retail meter rate for each SKU involved (compute size, storage tier, bandwidth). 3. Multiply by expected quantity and runtime to produce an estimate. 4. **State the assumptions plainly** — this is *retail list pricing* in a stated currency and region. Actual billing depends on the customer's agreement (EA/CSP/MCA discounts), reservations, and real consumption. Never present a retail estimate as the customer's actual or guaranteed cost. For what a customer *actually spent*, that is consumption/billing data — the `pricing` namespace does not provide it. Cost-saving opportunities on existing spend come from Azure Advisor's Cost recommendations (see the `observability` skill). ### Subscription & resource-group inventory For an environment audit or onboarding discovery: 1. **`subscription`** — enumerate all visible subscriptions; flag any `Disabled` or `Warned`. 2. **`group`** — for each subscription, list resource groups with their locations and tags. 3. Cross-reference tags against the MSP's tagging standard — untagged or mistagged groups are governance findings worth surfacing. ### Capacity headroom report Run `quota` across the key providers (`Microsoft.Compute`, `Microsoft.Network`, `Microsoft.Storage`) for the regions a customer uses, and produce a headroom table. Quotas above ~80% usage are worth a proactive quota-increase request before they block growth. ## Constraints & caveats - **Read-only.** This skill estimates, checks, and inventories. It cannot raise a quota, create a subscription or resource group, or apply pricing changes. Quota increases go through an Azure support/quota request — out of scope for this connector. - **Retail vs. actual price.** `pricing` returns public retail rates only. It is an estimation baseline, never the customer's billed amount. - **Scope first.** Resolve subscription (and often resource group) before pricing or quota calls — they are scoped operations. - **Visibility is RBAC-bounded.** `subscription` only shows subscriptions where the service principal holds a role assignment. A "missing" subscription usually means a missing Reader assignment, not a deleted subscription.