General

azure-vmss-tools - Claude MCP Skill

Azure VMSS Tools for AKS-MCP

SEO Guide: Enhance your AI agent with the azure-vmss-tools tool. This Model Context Protocol (MCP) server allows Claude Desktop and other LLMs to azure vmss tools for aks-mcp... Download and configure this skill to unlock new capabilities for your AI workflow.

🌟8 stars • 34 forks
šŸ“„0 downloads

Documentation

SKILL.md
# Azure VMSS Tools for AKS-MCP

Get detailed Virtual Machine Scale Set (VMSS) information for AKS node pools and execute commands on VMSS instances - provides low-level VMSS configuration details and remote command execution capabilities not available through standard AKS commands.

## Tools

### `get_vmss_info_by_node_pool`

**Purpose**: Get detailed VMSS configuration for a specific AKS node pool

**Parameters**:
- `subscription_id` (required): Azure subscription ID
- `resource_group` (required): Resource group containing the AKS cluster
- `cluster_name` (required): Name of the AKS cluster
- `node_pool_name` (required): Name of the specific node pool

**Returns**: Complete VMSS configuration including:
- VM instance configuration (size, OS image, extensions)
- Network configuration (subnets, load balancer settings)
- Scaling settings and upgrade policies
- Security settings and managed identity
- Storage configuration

### `get_all_vmss_by_cluster`

**Purpose**: Get VMSS information for all node pools in an AKS cluster

**Parameters**:
- `subscription_id` (required): Azure subscription ID
- `resource_group` (required): Resource group containing the AKS cluster
- `cluster_name` (required): Name of the AKS cluster

**Returns**: Array of VMSS configurations for each node pool:
- Summary with cluster name and total node pools count
- Per-node pool VMSS details or error messages
- Complete VMSS configuration for each successfully retrieved node pool

## Key Use Cases

1. **Troubleshooting Node Issues**: Get detailed VM configuration when nodes aren't behaving as expected
2. **Security Auditing**: Review VM extensions, security settings, and network configurations
3. **Performance Analysis**: Check VM sizes, storage types, and networking setup
4. **Compliance Checking**: Verify OS images, patches, and security configurations
5. **Resource Planning**: Understand current VM configurations for capacity planning

## What You Get vs Standard AKS Commands

**Standard `az aks nodepool show`** provides:
- Basic node pool settings (count, VM size, OS type)
- Kubernetes-level configuration
- High-level status information

**These VMSS tools provide**:
- Low-level Azure VM configuration
- Network interface details and IP configurations
- VM extensions and their settings
- Storage disk configuration and encryption
- Load balancer backend pool memberships
- Detailed OS and image information
- Scaling and upgrade policies

## Code Structure

### File Organization
```
internal/components/compute/
ā”œā”€ā”€ handlers.go           # Tool handlers for VMSS operations
ā”œā”€ā”€ registry.go          # Tool registration and MCP definitions  
ā”œā”€ā”€ vmsshelpers.go       # Helper functions for VMSS operations
ā”œā”€ā”€ azcommands.go        # Az CLI command definitions for VMSS
└── handlers_test.go     # Unit tests for handlers
```

### Tool Registration
Tools are registered in `internal/components/compute/registry.go`:
```go
func RegisterVMSSInfoByNodePoolTool() mcp.Tool {
    return mcp.NewTool(
        "get_vmss_info_by_node_pool",
        mcp.WithDescription("Get detailed VMSS configuration for a specific node pool"),
        mcp.WithString("subscription_id", mcp.Required()),
        mcp.WithString("resource_group", mcp.Required()),
        mcp.WithString("cluster_name", mcp.Required()),
        mcp.WithString("node_pool_name", mcp.Required()),
    )
}

func RegisterAllVMSSByClusterTool() mcp.Tool {
    return mcp.NewTool(
        "get_all_vmss_by_cluster",
        mcp.WithDescription("Get detailed VMSS configuration for all node pools"),
        mcp.WithString("subscription_id", mcp.Required()),
        mcp.WithString("resource_group", mcp.Required()),
        mcp.WithString("cluster_name", mcp.Required()),
    )
}
```

### Az CLI Command Registration
VMSS az CLI commands are defined in `internal/components/compute/azcommands.go`:
```go
func RegisterAzComputeCommand(cmd ComputeCommand) mcp.Tool {
    validToolName := utils.ReplaceSpacesWithUnderscores(cmd.Name)
    description := "Run " + cmd.Name + " command: " + cmd.Description + "."
    
    return mcp.NewTool(validToolName,
        mcp.WithDescription(description),
        mcp.WithString("args", mcp.Required()),
    )
}

func GetReadWriteVmssCommands() []ComputeCommand {
    return []ComputeCommand{
    }
}
```

### Handler Implementation
Handlers in `internal/components/compute/handlers.go`:
```go
func GetVMSSInfoByNodePoolHandler(client *azureclient.AzureClient, cfg *config.ConfigData) tools.ResourceHandler {
    return tools.ResourceHandlerFunc(func(params map[string]interface{}, _ *config.ConfigData) (string, error) {
        // Extract AKS parameters
        
        // Get node pool name
        
        // Get cluster details and VMSS information

        // Return JSON response
    })
}
```

### Helper Functions
VMSS helper functions in `internal/components/compute/vmsshelpers.go`:
```go
// GetVMSSIDFromNodePool - Find VMSS resource ID for a specific node pool
func GetVMSSIDFromNodePool(ctx context.Context, cluster *armcontainerservice.ManagedCluster, nodePoolName string, client *azureclient.AzureClient) (string, error)

// GetNodePoolsFromAKS - Extract all node pools from AKS cluster
func GetNodePoolsFromAKS(ctx context.Context, cluster *armcontainerservice.ManagedCluster, client *azureclient.AzureClient) ([]*armcontainerservice.ManagedClusterAgentPoolProfile, error)

// findVMSSForNodePool - Locate VMSS in node resource group by matching naming patterns
func findVMSSForNodePool(ctx context.Context, client *azureclient.AzureClient, subscriptionID, nodeResourceGroup, nodePoolName string) (string, error)
```

Signals

Avg rating⭐ 0.0
Reviews0
Favorites0

Information

Repository
Azure/aks-mcp
Author
Azure
Last Sync
3/13/2026
Repo Updated
3/11/2026
Created
1/16/2026

Reviews (0)

No reviews yet. Be the first to review this skill!