Knowledge Graph nodes
Knowledge Graph nodes
- VM Instances
- VM Scale Sets and Instances
- SQL Databases
- PostgreSQL Databases
- MySQL Databases
- Cosmos DB Accounts
- Load Balancers
- Application Gateways
- Storage Accounts
- Managed Disks
- Virtual Networks and Subnets
- Network Security Groups
- Network Interfaces
- Public IP Addresses
- AKS Clusters
Metrics
Metrics
VM Instances:
- Percentage CPU
- Network In/Out
- Disk Read/Write Bytes
- Disk Read/Write Operations/Sec
- Available Memory Bytes
- CPU Credits Remaining/Consumed
- Percentage CPU
- Network In/Out Total
- Disk Read/Write Bytes
- Disk Read/Write Operations/Sec
- CPU Credits Remaining/Consumed
- CPU Percent
- Physical Data Read Percent
- Log Write Percent
- DTU Consumption Percent
- Storage Percent
- Connection Successful/Failed
- Blocked by Firewall
- Deadlocks
- Workers/Sessions Percent
- CPU Percent
- Memory Percent
- IO Consumption Percent
- Storage Percent/Used/Limit
- Active Connections
- Connections Failed
- Network Bytes Ingress/Egress
- Max Lag Across Replicas
- Backup Storage Used
- CPU Percent
- Memory Percent
- IO Consumption Percent
- Storage Percent/Used/Limit
- Active Connections
- Connections Failed
- Seconds Behind Master (replicas)
- Network Bytes Ingress/Egress
- Backup Storage Used
- Total Request Units
- Total Requests
- Autoscale Max Throughput
- Provisioned Throughput
- Available Storage
- Data/Index Usage
- Document Count/Quota
- Replication Latency
- Service Availability
- VIP/DIP Availability
- Byte Count
- Packet Count
- SYN Count
- SNAT Connection Count
- Allocated/Used SNAT Ports
- Throughput
- Healthy/Unhealthy Host Count
- Response Status (2xx/3xx/4xx/5xx)
- Backend Response Status
- Backend Connect/Request/Response Time
- Current Connections
- Failed Requests
- Total Requests
- Current Capacity Units
- Used Capacity
- Transactions
- Ingress/Egress
- Success Server/E2E Latency
- Availability
- Blob Capacity/Count
- File Capacity/Count/Share Count
- Node CPU Usage Percentage
- Node Memory Working Set Percentage
- Node Disk Usage Percentage
- Node Network In/Out Bytes
- Kube Pod Status Ready/Phase
- Cluster Autoscaler Metrics
- Unneeded Nodes Count
- Unschedulable Pods Count
MCP Tools
MCP Tools
- get_realtime_vm_status: Get real-time status information for an Azure VM instance
- get_sql_database_status: Get status information for an Azure SQL database
Prerequisites
You should have Azure credentials configured through one of the following methods:- Azure CLI: Use
az login
to authenticate with the Azure CLI - Service Principal: Set environment variables
AZURE_CLIENT_ID
,AZURE_CLIENT_SECRET
, andAZURE_TENANT_ID
- Managed Identity: If running on Azure infrastructure (VMs, App Service, etc.)
- Visual Studio Code: If you have the Azure Account extension installed and authenticated
- Azure PowerShell: If you have authenticated using Azure PowerShell
Required Permissions
The Azure plugin requires read-only access to various Azure resources. Below is the recommended Azure RBAC (Role-Based Access Control) configuration.Option 1: Use Built-in Reader Role (Recommended for Getting Started)
The simplest approach is to assign the built-in Reader role at the subscription level:Option 2: Custom Role with Minimal Permissions (Recommended for Production)
For production environments, create a custom role with only the permissions needed by Unpage:Permissions Breakdown
The custom role includes permissions for:- Compute: Read access to VMs, VM Scale Sets, and managed disks
- Databases: Read access to SQL, PostgreSQL, MySQL, and Cosmos DB resources
- Networking: Read access to load balancers, application gateways, virtual networks, subnets, NSGs, network interfaces, and public IPs
- Storage: Read access to storage accounts
- AKS: Read access to managed Kubernetes clusters
- Monitoring: Read access to Azure Monitor metrics for all resources
- Resource Groups: List and read resource groups in the subscription
Configuration
Configure the Azure plugin by runninguv run unpage configure
or by editing
the ~/.unpage/profiles/<profile_name>/config.yaml
file:
Tools
The Azure plugin provides the following tools to Agents and MCP Clients:get_realtime_vm_status
Get real-time status information for an Azure VM instance directly from Azure API.ArgumentsReturns
The Azure VM name.
The Azure resource group name containing the VM.
dict | string
: A dictionary containing VM status information or an error message if the VM couldn’t be found.Example response:get_sql_database_status
Get status information for an Azure SQL database.ArgumentsReturns
The Azure SQL database name.
The Azure SQL server name hosting the database.
The Azure resource group name containing the SQL server.
dict | string
: A dictionary containing database status and configuration details or an error message if the database couldn’t be found.Example response: