Skip to content

v0.5.0 — Egress + Multi-AZ + realistic snapshots

Choose a tag to compare

@alialbaker alialbaker released this 06 May 09:20
· 33 commits to main since this release

The TCO depth release

v0.2-v0.4 modeled on-demand list pricing well. Real-world TCO needs egress (often the actual hidden killer), Multi-AZ (production usually doubles compute), and snapshots that don't blow up to upper-bound estimates. v0.5 lands all three.

10 MCP tools. 77/77 tests passing.

NEW: `compare_egress` — internet + inter-region transfer

Tiered pricing with free-tier credits across all 4 clouds.

Cloud Free tier Beyond free
AWS 100 GB/mo $0.05–$0.09/GB tiered
Azure 100 GB/mo $0.05–$0.087/GB tiered
GCP 0 $0.08–$0.12/GB tiered
OCI 10 TB/mo $0.0085/GB

At 50 TB/month internet egress, OCI is ~12× cheaper than the hyperscalers ($340 vs $4,181-$4,310). At 200 TB/mo, it's still ~10× cheaper. Real moat for content/CDN workloads.

Inter-region transfer also modeled: hyperscalers ~$0.02/GB, OCI $0.0085/GB.

NEW: `multi_az` flag on `compare_workload`

Set to `true` to model Multi-AZ / HA deployments with sync replicas across two zones. Compute totals × 2 on every cloud. Storage stays at 1× (cross-AZ at base price already).

Combines correctly with `commitment`: e.g. `multi_az=true` + `3yr_partial_upfront` ≈ on-demand single-AZ totals (2× × 0.5 = 1.0×).

NEW: `snapshot_incremental_factor` on storage + OS-disk snapshots

Per-row field that scales the snapshot upper-bound estimate.

Factor Meaning
`1.0` (default) Upper-bound — each snapshot is full capacity (backward compat with v0.2-0.4)
`0.3` Typical real-world incremental dedup
`0.0` Exclude snapshots from the total

Smoke test on 50 TB SSD with 7 daily snapshots:

  • Upper-bound: AWS $21,500/mo
  • Realistic (0.3): AWS $9,250/mo (-57%)

Lint cleanup

  • Extracted `DATA_PACKAGE` constant in `pricing.py` (deduplicated 3 string literals)
  • Refactored `call_tool` from a 13-branch if-chain into a clean dispatch table
  • Cognitive complexity in `call_tool` dropped from 16 to 3
  • Float-equality checks in tests converted to tolerance pattern

Backward compatibility

  • All v0.4 tools unchanged
  • All schemas additive (new fields default to backward-compatible values)
  • `cloudprice-mcp setup` and `cloudprice-mcp doctor` work identically

Roadmap (deferred to v0.5.1 / v0.6)

  • us-west-2 / eu-west-1 multi-region SKUs (data-entry heavy, deserves its own release)
  • Reserved Instance SKU detail beyond flat tier
  • IOPS-based storage matching
  • Backup storage charges
  • VPC peering / interconnect costs

Install / upgrade

```bash
pip install --upgrade cloudprice-mcp
cloudprice-mcp setup --yes
```

(The `setup` command from v0.4 picks up the new version automatically.)

Tests

77/77 passing (was 66 in v0.4).

  • 13 new egress tests covering free-tier behavior, tiered pricing, OCI 10 TB dominance at 50 TB/mo, inter-region rates
  • 8 new multi-AZ + snapshot factor tests covering compute multiplier, storage stays 1×, flag propagation, combine-with-commitment math, factor at 1.0/0.3/0.0