Steven Johnston
← Work
№ 06 · Chat-to-Azure IaC · 2026

CLOUDFORGE

Design Azure architecture in chat. Claude draws the topology on a live canvas, writes the Bicep, and pushes it with one click, then tears it down on a schedule so the lab never bills overnight.

Context
Personal project · homelab
Role
Sole designer / engineer
Status
In active use
BUILD
VIEW BICEP
PUSH
TEAR DOWN
SCHEDULE
320 tools · cached
You
hub-and-spoke, two spokes, one VPN gateway
CloudForge
Topology drafted. Bicep ready in the drawer.
⚙ az deployment sub create · running…
hub-vnet spoke-a spoke-b vpn-gw
teardown 02:00 UTC
Fig. 01 · stylised interface preview

The problem

Microsoft's official Azure MCP Server exposes 60+ tools, but none to deploy a raw Bicep template, and no resource-group delete. So you can chat about Azure all day and still end up in the portal clicking. And lab resources left running overnight are the most expensive kind.

The approach

01

Filled the gap with two tightly-scoped custom tools, deploy_bicep and destroy_azure, which spawn Microsoft's official azure-cli container as a Docker sidecar with a service principal and run az deployment / az group delete.

02

An agentic chat loop combines Microsoft's MCP tools (spawned over stdio) with the custom ones, with prompt caching across a 320-tool registry. Five lifecycle stages (build, view, push, teardown, free) gate which tools Claude reaches for without invalidating the cached prefix.

03

Claude emits structured <topology> and <bicep> markers parsed mid-stream: the topology renders on a React Flow canvas with dagre auto-layout, the Bicep lands in a side drawer with save-as-template.

04

Every resource is dual-tagged and tag-enforced post-deploy, so Destroy finds exactly what was created. A cron scheduler does daily lab spin-up and nightly tear-down. Same chat loop, streamed for users, headless for schedules.

Outcome

Tool registry
320 tools
prompt-cached
Custom tools
2
deploy_bicep · destroy_azure
Teardown
Tag-precise
cron spin-up / tear-down
Design note

Describe the hub-and-spoke. Watch it appear on the canvas. Push it. Schedule the teardown. Never open the portal.

Built with

React 19React FlowFastifyClaude OpusMCPBicepAzure CLIPostgreSQLnode-cronDocker

More tools

07 DOCKERMATE Docker Dashboard + AI Ops 08 WEBEX MIGRATE CUCM → Webex Calling 01 GLADIUS AI Network Auditor
← Back to tools
Get in touch
stevie.johnston@gmail.com
Glasgow, Scotland
UTC+0 / UTC+1