Provides tools for managing Azure PostgreSQL Flexible Server instances, including listing servers, databases, and parameters, querying table schemas, and executing SQL queries.
Azure Omni-Tool MCP Server
A Model Context Protocol (MCP) server in TypeScript that acts as an intelligent bridge between natural language requests and Azure CLI execution.
Features
✅ Plan/Execute Flow - Review commands before execution
✅ Safety Guardrails - Shell injection detection, destructive command warnings
✅ Audit Trail - Operator email tagging for traceability
✅ Retry Logic - Exponential backoff for transient failures
✅ Caching - LRU cache with configurable TTL
✅ Tenant Scoping - Configure tenant/subscription via environment
✅ Azure Service Adapters - Type-safe access to 8 Azure services
Architecture Overview
Request Flow
Plan/Execute Flow
Quick Start
1. Install Dependencies
2. Configure Environment
3. Build & Run
MCP Client Configuration
Tools
manage_azure_resources
Plan and execute Azure CLI commands with safety checks.
Argument | Type | Description |
| string | Azure CLI command |
| string | Why this command was chosen |
| boolean |
= plan,
= execute |
get_azure_context
Query Azure environment with caching.
Query Type | Description |
| List accessible subscriptions |
| List resource groups |
| List resources |
| Custom KQL via Resource Graph |
azure_service
Interact with specific Azure services.
Service | Actions |
| list, listContainers, listBlobs, getContainer, listTables, queryTable |
| list, listDatabases, listContainers, query, getContainer |
| list, listIndexes, getIndex, query, getService |
| list, listDatabases, listTables, getSchema, sample, query |
| list, getWorkspace, listTables, query, listMetrics, getMetrics |
| list, getStore, listKeyValues, getKeyValue, setKeyValue, lock, unlock |
| list, getVault, listKeys, getKey, createKey, listSecrets, getSecret, listCertificates |
| list, getServer, listDatabases, listParameters, getParameter, listTables, getTableSchema, query |
Environment Variables
Variable | Description | Default |
| Azure tenant for scoping | - |
| Default subscription | - |
| Email for audit trail | - |
| Operator name | - |
| Logging level |
|
| Enable query caching |
|
| Cache duration |
|
| Cache cleanup interval |
|
| Retry attempts |
|
| Base retry delay |
|
| CLI timeout |
|
| Enable Managed Identity |
|
Project Structure
Prerequisites
Node.js >= 18.0.0
Azure CLI installed and authenticated (
az login)
License
MIT