Skip to main content

az-scout-plugin-mana-supportability

An az-scout plugin that performs best-effort detection of Azure virtual machines at risk of MANA unsupportability.

MANA (Microsoft Azure Network Adapter) is the new Azure network interface. Azure is progressively rolling MANA-capable hardware into existing VM series. When a VM using Accelerated Networking lands on MANA hardware, the guest OS must ship a MANA driver — otherwise networking degrades or fails. Network virtual appliances (NVAs) are uniquely impacted.

This plugin enumerates VMs and scale sets in the selected subscriptions, then scores each one against the documented MANA criteria using ARM metadata only — no in-guest inspection, no agent, read-only.

Detection criteria

# Criterion Effect
1 VM size belongs to a MANA-eligible existing series Gate — a non-listed size is not impacted
2 Accelerated Networking enabled on at least one NIC Gate — "if AccelNet is not enabled, no action is required"
3 AKS-managed resource Gate — AKS is not impacted
4 Guest OS ships a MANA driver (marketplace image → supported / unsupported / unknown) high / medium risk
5 NVA workload (known marketplace publisher, product hint, or IP forwarding) critical risk
6 LegacyVMNVA opt-out tag present and enabled Mitigation, expires 2027-05-31
7 Series announced for retirement Recommend a resize instead of an opt-out
8 Hardware class → earliest possible MANA placement date Cobalt 100 / Intel v5 → 2026-05-26, Intel v1–v4 → 2026-08-01

Findings are aggregated into a single risk level per resource: none, low, medium, high or critical.

The result is a best-effort signal, not a guarantee. The guest OS of custom, Compute Gallery, shared and community-gallery images cannot be determined from ARM metadata, so they are reported as unknown (and labelled with the image kind so you know where to look). Always confirm the in-guest driver and kernel version before acting.

Features

  • UI tab — "MANA readiness" with a multi-subscription checklist sidebar, summary cards, a risk filter, a searchable results table with expandable per-resource findings, and CSV export
  • API routes under /plugins/mana-supportability/
  • MCP tools exposed on the az-scout MCP server and in the AI chat
  • Chat mode — mana-supportability-advisor

API

Route Purpose
GET /plugins/mana-supportability/assess Assess subscriptions. Params: subscriptions (id or id|name, comma separated), regions, tenantId, include_vmss
GET /plugins/mana-supportability/reference Eligible-series catalogue, milestone dates, known NVA publishers, doc links
GET /plugins/mana-supportability/check-size Check a single VM size. Param: vm_size

MCP tools

  • check_mana_vm_size — is a given VM size on MANA-eligible hardware?
  • list_mana_eligible_vm_series — the documented eligible-series catalogue
  • assess_mana_supportability — full assessment for one or more subscriptions

Install

uv pip install az-scout-plugin-mana-supportability
az-scout  # the plugin is auto-discovered via the az_scout.plugins entry point

Development install:

uv sync --group dev
uv pip install -e .
az-scout

Structure

src/az_scout_mana_supportability/
├── __init__.py          # Plugin class + module-level `plugin` instance
├── mana_series.py       # MANA-eligible VM series catalogue + size matching
├── os_support.py        # Marketplace image → guest OS MANA support
├── nva.py               # Network virtual appliance detection
├── assessment.py        # Findings + risk engine
├── collector.py         # ARM collection (VMs, NICs, scale sets)
├── routes.py            # FastAPI APIRouter
├── tools.py             # MCP tools
└── static/
    ├── css/mana-supportability.css
    ├── html/mana-supportability-tab.html
    └── js/mana-supportability-tab.js

Required permissions

Read-only. The signed-in identity needs Reader on the assessed subscriptions:

  • Microsoft.Compute/virtualMachines/read
  • Microsoft.Compute/virtualMachineScaleSets/read
  • Microsoft.Network/networkInterfaces/read

Quality checks

uv run ruff check src/ tests/
uv run ruff format --check src/ tests/
uv run mypy src/
uv run pytest

CI runs the same checks on Python 3.11–3.13. Releases are published to PyPI via trusted publishing (OIDC) on version tags (v*).

References

License

MIT

Disclaimer

This tool is not affiliated with Microsoft. MANA supportability detection is best-effort and based on ARM metadata only. It cannot inspect the guest OS, installed drivers, or kernel versions. Custom, Compute Gallery, shared, community-gallery images and unrecognised publishers are reported as unknown. Microsoft's rollout dates and eligible series lists may change — always confirm against the official documentation before making changes to production workloads.

Metadata

Release files for az-scout-plugin-mana-supportability 2026.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for az-scout-plugin-mana-supportability 2026.7.0
File Size Uploaded Provenance
az_scout_plugin_mana_supportability-2026.7.0.tar.gz 165.3 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for az-scout-plugin-mana-supportability 2026.7.0
File Interpreter ABI Platform
az_scout_plugin_mana_supportability-2026.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 201.5 kB

Release files / az_scout_plugin_mana_supportability-2026.7.0.tar.gz

Download URL az_scout_plugin_mana_supportability-2026.7.0.tar.gz
Size 165.3 kB
Tags Source
SHA-256 checksum
How to use checksums
365b9be83e23642b6bb2de7e6eb8afe34b61dabc1116b995813c66e1a12bb3d8
BLAKE2b-256 checksum
How to use checksums
da723d0efcad665c797451bd091511ded57aba2611fe94309079e26039b01ac2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Release files / az_scout_plugin_mana_supportability-2026.7.0-py3-none-any.whl

Download URL az_scout_plugin_mana_supportability-2026.7.0-py3-none-any.whl
Size 36.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba529eafbeb2aee916ff33024fafa4f5fe7f199d46747c906aeb03939fb6cf4e
BLAKE2b-256 checksum
How to use checksums
c772b6f91c6247fea7a48e2f6e296a5afeb2540c90e6ab2b2132812679cac59e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

Security for az-scout-plugin-mana-supportability 2026.7.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for az_scout_plugin_mana_supportability-2026.7.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 31, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2026.7.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page