【要約】Azure料金をClaudeに聞けるMCPサーバをBicepで作る [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
インフラ設計者がAzureのSKU料金を確認する際、ポータル操作による作業中断が大きなペインポイントとなっている。設計業務の最中に、特定のSKUやリージョンの単価を即座に把握したいというニーズに対し、既存の手段では以下の課題がある。
- ・Azureポータルや料金計算機への遷移による、思考の分断(コンテキストスイッチ)。
- ・複数リージョン間の比較や、特定の条件によるSKUの絞り込みにおける操作の煩雑さ。
- ・自然言語による直感的な問い合わせができないことによる、検索コストの増大。
// Approach
開発者は、認証不要のAzure Retail Prices APIをMCPサーバとして実装し、LLMが直接利用できる環境を構築した。PythonのFastMCPを活用し、API呼び出しを行う関数をMCPツールとして定義する手法を採用している。
- ・Pythonの
mcpパッケージを用い、search_skusやget_priceなどのツールを実装。 - ・LLMが自律的にAPI名を解決し、料金を取得できる2ステップの実行フローを構築。
- ・Bicepを用いてAzure Container Appsへデプロイし、
minReplicas: 0設定によりアイドルコストを極小化。
// Result
ユーザーは、Claude Desktopから自然言語を用いてAzureの料金比較やSKU検索をシームレスに行えるようになった。これにより、設計業務のワークフローを維持したまま、迅速なコスト検証が可能となった。
- ・「D4s v5の東日本と米国東部の比較」といった複雑な問いに対し、LLMがツールを組み合わせて回答。
- ・Container Appsの活用により、リクエストがない時間はコストがほぼゼロになる運用を実現。
- ・BicepによるIaC管理により、環境の構築と削除が容易かつ迅速に行える。
Senior Engineer Insight
> 実践的なアプローチである。特にFastMCPによる実装の簡略化と、Container Appsのゼロスケールによるコスト最適化の組み合わせは、検証用ツールとして極めて合理的だ。ただし、本実装はRetail Prices APIの制約(スペック検索不可、USDのみ)に依存している。実戦投入には、Compute SKUs APIとの統合や為替レートの動的取得、さらには複雑なリソース構成の合算ロジックの実装が不可欠となるだろう。