.claude — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited .claude (MCP Server) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server connected to real Azure infrastructure. Deploys a live AKS cluster and provides AI agents with real-time access to cluster health, Azure resources, policy validation, and Terraform analysis.
No simulated data. Every API call hits live Azure services.
This MCP server gives AI agents (Claude Code, GitHub Copilot, etc.) structured access to a real Azure platform:
| Tool | Data Source | What It Returns |
|---|---|---|
check_cluster_health | Kubernetes API (live AKS) | Real node status, pod health, events, recommendations |
validate_manifest | PyYAML parser | Policy compliance for real YAML manifests |
analyze_terraform | HCL analysis | Quality score for Terraform modules |
query_azure_resources | Azure Resource Manager API | Real resource groups, AKS clusters, VMs |
Architecture Overview
MCP Protocol Flow
Deployment Pipeline
This was deployed and tested against a real AKS cluster on Azure for Students.
kubectl get nodes
kubectl get pods
Live test output
Azure Portal
Deployed via Terraform in terraform/main.tf:
| Resource | Details |
|---|---|
| Resource Group | mcp-demo-rg (Sweden Central) |
| AKS Cluster | aks-platform-demo — Kubernetes 1.32 |
| Node Pool | 1x Standard_D2as_v4 (cost-optimised) |
| Network | Azure CNI + Calico network policy |
| Monitoring | Log Analytics workspace + OMS agent |
| Workloads | 3 namespaces: product-api, product-web, platform-monitoring |
The platform-monitoring namespace includes an intentionally failing pod to demonstrate how the health check tool detects and reports real CrashLoopBackOff incidents.
az)# 1. Clone
git clone https://github.com/sat0ps/mcp-server-azure-platform.git
cd mcp-server-azure-platform
# 2. Login to Azure
az login
# 3. Deploy infrastructure
cd terraform
terraform init
terraform plan
terraform apply
# 4. Configure kubectl
az aks get-credentials --resource-group mcp-demo-rg --name aks-platform-demo
# 5. Deploy sample workloads
kubectl apply -f workloads.yaml
# 6. Install dependencies
cd ..
pip install -r requirements.txt
# 7. Set subscription ID
export AZURE_SUBSCRIPTION_ID=$(az account show --query id -o tsv)
# 8. Test
python test_tools.pycd terraform
terraform destroyPlatform Engineering MCP Server — Live Test Suite
============================================================
Testing against REAL Azure infrastructure
TEST: Initialize
Server: azure-platform-engineering-mcp v1.0.0
PASS
TEST: Check Cluster Health (LIVE)
Source: LIVE — Kubernetes API
Health Score: 100 (healthy)
Nodes: 1/1 ready
Pods: 25 running, 0 pending, 0 failed
Problem pods:
- platform-monitoring/failing-service: 6 restarts (CrashLoopBackOff)
PASS
TEST: Query Azure Resources (LIVE)
Source: LIVE — Azure Resource Manager API
AKS Clusters found: 1
- aks-platform-demo (swedencentral) — K8s 1.32 — Succeeded
Pool: system — Standard_D2as_v4 x1
PASS
ALL TESTS PASSED (Live Azure)| Diagram | What It Shows |
|---|---|
| Architecture Overview | Full system: agent → MCP → live tools → real Azure |
| MCP Protocol Flow | Real request flow with CrashLoopBackOff detection |
| Deployment Pipeline | terraform apply → kubectl → test → destroy |
| Incident Detection | How MCP found the failing-service pod |
| Policy Validation | YAML validation gate with real PyYAML parsing |
| Agent Configuration | How agents.md + skills + instructions work together |
| Terraform PR Review | AI-driven PR review with quality scoring |
├── mcp_server.py # MCP server (JSON-RPC 2.0 over stdio)
├── tools/
│ ├── kubernetes_live.py # Real K8s API health checks
│ ├── compliance_live.py # Real YAML policy validation
│ ├── terraform_live.py # Terraform HCL analysis
│ ├── azure_resources.py # Real Azure Resource Manager queries
│ └── azure_metrics.py # Azure Monitor metrics (SDK v2 WIP)
├── terraform/
│ ├── main.tf # AKS + monitoring infrastructure
│ └── workloads.yaml # Sample K8s deployments
├── .claude/
│ ├── agents.md # Agent behaviour configuration
│ └── mcp.json # Claude Code MCP config
├── skills/
│ └── SKILL.md # Repeatable agent procedures
├── instructions/
│ ├── terraform-standards.md # Terraform quality standards
│ └── kubernetes-standards.md# K8s deployment requirements
├── scripts/
│ └── setup.sh # Automated deployment script
├── diagrams/ # Architecture diagrams + live screenshots
├── requirements.txt # Python dependencies
└── test_tools.py # Live test suiteUses DefaultAzureCredential — works with az login, managed identity, and service principals. No credentials stored in the repo.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.