azure-storage
Scannednpx machina-cli add skill microsoft/skills/azure-storage --openclawAzure Storage Services
Services
| Service | Use When | MCP Tools | CLI |
|---|---|---|---|
| Blob Storage | Objects, files, backups, static content | azure__storage | az storage blob |
| File Shares | SMB file shares, lift-and-shift | - | az storage file |
| Queue Storage | Async messaging, task queues | - | az storage queue |
| Table Storage | NoSQL key-value (consider Cosmos DB) | - | az storage table |
| Data Lake | Big data analytics, hierarchical namespace | - | az storage fs |
MCP Server (Preferred)
When Azure MCP is enabled:
azure__storagewith commandstorage_account_list- List storage accountsazure__storagewith commandstorage_container_list- List containers in accountazure__storagewith commandstorage_blob_list- List blobs in containerazure__storagewith commandstorage_blob_get- Download blob contentazure__storagewith commandstorage_blob_put- Upload blob content
If Azure MCP is not enabled: Run /azure:setup or enable via /mcp.
CLI Fallback
# List storage accounts
az storage account list --output table
# List containers
az storage container list --account-name ACCOUNT --output table
# List blobs
az storage blob list --account-name ACCOUNT --container-name CONTAINER --output table
# Download blob
az storage blob download --account-name ACCOUNT --container-name CONTAINER --name BLOB --file LOCAL_PATH
# Upload blob
az storage blob upload --account-name ACCOUNT --container-name CONTAINER --name BLOB --file LOCAL_PATH
Storage Account Tiers
| Tier | Use Case | Performance |
|---|---|---|
| Standard | General purpose, backup | Milliseconds |
| Premium | Databases, high IOPS | Sub-millisecond |
Blob Access Tiers
| Tier | Access Frequency | Cost |
|---|---|---|
| Hot | Frequent | Higher storage, lower access |
| Cool | Infrequent (30+ days) | Lower storage, higher access |
| Cold | Rare (90+ days) | Lower still |
| Archive | Rarely (180+ days) | Lowest storage, rehydration required |
Redundancy Options
| Type | Durability | Use Case |
|---|---|---|
| LRS | 11 nines | Dev/test, recreatable data |
| ZRS | 12 nines | Regional high availability |
| GRS | 16 nines | Disaster recovery |
| GZRS | 16 nines | Best durability |
Service Details
For deep documentation on specific services:
- Blob storage patterns and lifecycle -> Blob Storage documentation
- File shares and Azure File Sync -> Azure Files documentation
- Queue patterns and poison handling -> Queue Storage documentation
SDK Quick References
For building applications with Azure Storage SDKs, see the condensed guides:
- Blob Storage: Python | TypeScript | Java | Rust
- Queue Storage: Python | TypeScript
- File Shares: Python | TypeScript
- Data Lake: Python
- Tables: Python | Java
For full package listing across all languages, see SDK Usage Guide.
Azure SDKs
For building applications that interact with Azure Storage programmatically, Azure provides SDK packages in multiple languages (.NET, Java, JavaScript, Python, Go, Rust). See SDK Usage Guide for package names, installation commands, and quick start examples.
Source
git clone https://github.com/microsoft/skills/blob/main/.github/plugins/azure-skills/skills/azure-storage/SKILL.mdView on GitHub Overview
Azure Storage delivers object storage for unstructured data, SMB file shares, async messaging, NoSQL key-value, and big data analytics. It offers access tiers and lifecycle management to optimize cost, performance, and governance across Blob, File, Queue, Table, and Data Lake services.
How This Skill Works
The suite provides specialized services for different workloads: Blob for unstructured data, File Shares for SMB-compatible access, Queue Storage for async messaging, Table Storage for NoSQL key-value data, and Data Lake for hierarchical-data analytics. Each service exposes dedicated CLI and SDK APIs, supported by configurable redundancy (LRS/ZRS/GRS/GZRS) and tiering (Hot/Cool/Archive) to suit cost and performance needs.
When to Use It
- Storing unstructured assets like images, videos, or backups in Blob Storage for scalable access by apps and CDN.
- Providing SMB file shares to lift-and-shift on-prem workloads using File Shares.
- Building asynchronous, decoupled processing pipelines with Queue Storage for task queues.
- Storing NoSQL key-value data with Table Storage or integrating with Cosmos DB for scale and rich querying.
- Running big data analytics with Data Lake for hierarchical namespace and analytics workloads.
Quick Start
- Step 1: Identify the target service (Blob, File, Queue, Table, or Data Lake) and a storage account.
- Step 2: Use the Azure CLI to interact (examples: az storage blob upload/download, az storage container list, az storage account list; for Data Lake use az storage fs commands).
- Step 3: Validate data access, apply an appropriate access tier or lifecycle policy, and implement basic security with IAM and least-privilege access.
Best Practices
- Match data type to service: use Blob for unstructured content, File Shares for SMB-compatible workloads, Queue for messaging, Table for simple NoSQL, and Data Lake for analytics.
- Choose appropriate access tier (Hot/Cool/Archive) and enable lifecycle rules to optimize cost.
- Select redundancy (LRS/ZRS/GRS/GZRS) based on durability and regional availability needs.
- Use MCP-enabled workflows when available, or fall back to Azure CLI/SDK commands for automation and governance.
- Leverage SDKs and official docs for patterns, monitoring, and security best practices during development.
Example Use Cases
- A media site stores videos in Blob Storage and serves content via CDN.
- A company exposes SMB file shares to employees using Azure File Shares for collaboration.
- An e-commerce app uses Queue Storage to decouple order processing from fulfillment.
- A telemetry app stores session data in Table Storage for fast lookups and simple queries.
- A data lake stores large datasets in Data Lake for scalable analytics and data science.