次の方法で共有


Azure MCP Server 用 Azure Monitor ツールの概要

Azure MCP サーバーを使用すると、自然言語プロンプトを使用して Azure Monitor リソースを管理できます。 複雑な KQL 構文を知らなくても、Log Analytics ワークスペースのクエリ、運用データの分析、リソース正常性の監視、パフォーマンス メトリックの取得、Azure Monitor ブックの管理を行うことができます。

Azure Monitor は、アプリケーションとサービスの可用性とパフォーマンスを最大化するのに役立ちます。 クラウドおよびオンプレミス環境からのテレメトリを収集、分析、および操作するための包括的なソリューションが提供されます。

ワークブックは、Azure ポータル内でデータを分析し、豊かな視覚的レポートを作成するための柔軟なキャンバスを提供します。 これにより、Azure 全体から複数のデータ ソースを活用し、それらを統合された対話型エクスペリエンスに組み合わせることができます。 ワークブックを使用すると、複数の種類の視覚化や分析を組み合わせることができるため、フリーフォーム探索に適しています。 詳細については、Azure Monitor ワークブックのドキュメントを参照してください

ツール パラメーター: Azure MCP Server ツールは、タスクを完了するために必要なデータのパラメーターを定義します。 これらのパラメーターの一部は、各ツールに固有であり、以下に記載されています。 その他のパラメーターはグローバルであり、すべてのツールで共有されます。 詳細については、「 ツールパラメーター」を参照してください。

アクティビティ ログ: アクティビティ ログの一覧表示

指定した Azure リソースのアクティビティ ログを、指定された前の時間数で一覧表示します。

プロンプトの例を次に示します。

  • 最近の重大なイベント: "重大イベントとエラー イベントのみで過去 4 時間のリソース 'web-app-prod' のアクティビティ ログを表示する"
  • ストレージ アカウント アクティビティ: "過去 24 時間の種類 'Microsoft.Storage/storageAccounts' のリソース 'mystorageaccount' のアクティビティ ログを取得し、上位 50 エントリに制限する"
  • VM の監視: "過去 12 時間のリソース 'production-vm01' のすべてのアクティビティ ログを一覧表示する"
パラメーター 必須または省略可能 Description
リソース名 必須 アクティビティ ログを取得する Azure リソースの名前。
リソースの種類 オプション Azure リソースの種類 (たとえば、 Microsoft.Storage/storageAccounts)。 これは、同じ名前の複数のリソース間であいまいさを解消するために必要な場合にのみ指定します。
Hours オプション アクティビティ ログを取得する前の時間数。
イベント レベル オプション 取得するアクティビティ ログのレベル。 有効なレベルは、重大、エラー、情報、詳細、警告です。 指定しない場合は、すべてのレベルを返します。
上位 オプション 取得するアクティビティ ログの最大数。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Web テスト: Web テストを作成または更新する

Azure Monitor で標準の Web テストを作成または更新して、エンドポイントの可用性を監視します。 このコマンドを使用して、新しい Web テストを設定するか、URL、頻度、場所、予想される応答などの構成で既存の Web テストを変更します。 このコマンドは、新しいテストが存在しない場合は自動的に作成するか、新しい設定で既存のテストを更新します。

プロンプトの例を次に示します。

  • "リソース グループ 'rg-prod' に Web テスト リソース 'mywebtest' を作成または更新して、300 秒ごとに https://example.com を監視します。"
  • リソース グループ 'rg-dev' 内の Web テスト 'status-check' を、期待される状態コード 200 に更新し、SSL チェックを有効にします。
  • "リソース グループ 'rg-test' で構成されている Web テストは何ですか?
  • "'rg-production' 内のすべての Web テスト リソースを一覧表示します。
  • "リソース グループ 'rg-app' の Web テスト 'api-monitor' を 600 秒の頻度で作成または更新する必要があります。"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。
Webtest リソース 必須 操作する Web テスト リソースの名前。
App Insights コンポーネント オプション Web テストに関連付ける Application Insights コンポーネントのリソース ID。
説明 オプション Web テストの説明。
有効 オプション Web テストが有効かどうか。
予期される状態コード オプション 期待される HTTP ステータス コード。
リダイレクトに従う オプション リダイレクトに従うかどうか。
頻度 オプション テスト頻度 (秒単位)。 サポートされる値: 300、600、900 秒。
Headers オプション 要求に含める HTTP ヘッダー。 コンマ区切りの KEY=VALUE
HTTP 動詞 オプション HTTP メソッド (getpostなど)。
状態コードを無視する オプション 状態コードの検証を無視するかどうかを指定します。
場所 オプション Web テスト リソースが作成される場所。 これは App Insights コンポーネントの場所と一致する必要があります。
要求の解析 オプション 依存する要求を解析するかどうか。
リクエスト本文 オプション 要求の本文。
要求 URL オプション テストする絶対 URL。
再試行が有効 オプション 再試行が有効かどうか。
SSL チェック オプション SSL 証明書を確認するかどうか。
SSL 有効期間チェック オプション SSL 証明書の有効期間を確認する日数。
タイムアウト オプション 要求タイムアウト時間(秒単位、最大 2 分)。 サポートされる値: 30、60、90、120 秒。
Webtest オプション Web テスト リソース内のテストの名前。
Web テストの場所 オプション テストを実行する場所の一覧 (コンマ区切りの値)。 場所は、可用性テストに特有のジオロケーションの人口タグを指します。

ツール注釈ヒント:

破壊的: ✅ |冪等: ✅ |オープンワールド: ❌ |読み取り専用: ❌ |秘密: ❌ |ローカル必須: ❌

Web テスト: Web テストを取得または一覧表示する

特定の Web テストの詳細を取得するか、すべての Web テストを一覧表示します。 Web テスト リソースが提供されると、1 つの Web テストに関する詳細情報を取得します。 Webtest リソースを省略すると、サブスクリプション内のすべての Web テストの一覧が表示され、必要に応じてリソース グループでフィルター処理されます。

プロンプトの例を次に示します。

  • "サブスクリプション内のすべての Web テストを一覧表示する"
  • "サブスクリプションで利用できる Web テストは何ですか?
  • "Web テスト homepage-load-testの詳細を取得する"
  • "Web テスト api-response-checkの詳細を表示する"
  • "サブスクリプションで Web テスト checkout-validation に関する情報を提供できますか?
パラメーター 必須または省略可能 Description
Webtest リソース オプション 操作する Web テスト リソースの名前。

ツール注釈ヒント: 破壊的: ❌ | 冪等性: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Log Analytics: ワークスペースを一覧表示する

Azure MCP サーバーには、サブスクリプション内のすべての Log Analytics ワークスペースが一覧表示されます。 これにより、監視リソースの概要が示されます。

プロンプトの例を次に示します。

  • ワークスペースを一覧表示する: "サブスクリプション内のすべての Log Analytics ワークスペースを表示する"
  • ワークスペースを表示する: "自分が持っているワークスペースは何ですか?
  • ワークスペースの検索: "監視ワークスペースの一覧表示"

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Log Analytics: テーブルの種類を一覧表示する

Log Analytics ワークスペースで使用可能なテーブルの種類を一覧表示します。

プロンプトの例を次に示します。

  • テーブルの種類を一覧表示する: "リソース グループ 'my-resource-group' の中央監視ワークスペースのテーブルの種類を表示する"
  • 使用可能な種類を表示する: "リソース グループ 'my-resource-group' の Log Analytics ワークスペースで使用できるテーブルの種類は何ですか?
  • テーブル カテゴリの検索: "リソース グループ 'my-resource-group' のセキュリティ ログ ワークスペースのテーブルの種類を一覧表示する"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。
Workspace 必須 Log Analytics ワークスペース ID または名前。 一意識別子 (GUID) またはワークスペースの表示名のいずれかを指定できます。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Log Analytics: テーブルを一覧表示する

Azure MCP サーバーには、Log Analytics ワークスペース内のすべてのテーブルが一覧表示されます。 これは、クエリに使用できるデータを理解するのに役立ちます。

プロンプトの例を次に示します。

  • テーブルの一覧表示: "リソース グループ 'my-resource-group' の中央監視ワークスペースにテーブルを表示する"
  • テーブルの表示: "リソース グループ 'my-resource-group' のワークスペース アプリ監視に含まれるテーブルは何ですか?
  • テーブルの検索: "リソース グループ 'my-resource-group' のセキュリティ ログ ワークスペースのテーブルを一覧表示する"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。
Workspace 必須 Log Analytics ワークスペース ID または名前。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Log Analytics: ワークスペース ログのクエリを実行する

Azure MCP サーバーは、Log Analytics ワークスペースに対して Kusto クエリ言語 (KQL) クエリを実行できます。 この強力な機能を使用すると、運用データを分析できます。

プロンプトの例を次に示します。

  • 単純なクエリ: "ワークスペース 'app-monitoring' 内で、リソース グループ 'monitoring-rg' のテーブル 'AzureDiagnostics' に対して 'AzureDiagnostics | where Level == "Error" | take 100' というクエリを過去 1 時間以内に実行する”
  • フィルター クエリ: "クエリテーブル 'SecurityEvent' をクエリ 'SecurityEvent | where EventID == 4625 | project TimeGenerated, Account, Computer' と共に、リソースグループ 'security-rg' のワークスペース 'security-workspace' で実行"
  • 複雑なクエリ: "テーブル 'Perf' に問い合わせ 'Perf | where CounterName == "% Processor Time" and Computer contains "web" | bin(TimeGenerated, 1h) により summarize avg(CounterValue)' をワークスペース 'monitoring-workspace' のリソース グループ 'prod-rg' 内で実行し、過去24時間分"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。
Workspace 必須 Log Analytics ワークスペース ID または名前。
テーブル 必須 クエリを実行するテーブルの名前。
クエリ 必須 Log Analytics ワークスペースに対して実行する KQL クエリ。
Hours オプション 今からクエリを実行する時間数。
制限 オプション 返される結果の最大数。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

Log Analytics: リソース ログのクエリ

Kusto クエリ言語 (KQL) を使用して、Log Analytics ワークスペース内の特定の Azure リソースの診断ログとアクティビティ ログを照会します。

プロンプトの例を次に示します。

  • 最近のログのクエリ: "テーブル 'AppServiceConsoleLogs' に対して 'recent' クエリを使用し、リソース '/subscriptions/abc123/resourceGroups/prod/providers/Microsoft.Web/sites/myapp' を照会"
  • エラーの検索: 過去4時間以内にリソース '/subscriptions/abc123/resourceGroups/prod/providers/Microsoft.Web/sites/mywebapp' に対して、クエリ 'errors' を使用してクエリテーブル 'AppServiceHTTPLogs' を検索します。
  • リソース診断: クエリテーブル 'StorageBlobLogs' に対してクエリ 'StorageBlobLogs | take 100' をリソース '/subscriptions/abc123/resourceGroups/prod/providers/Microsoft.Storage/storageAccounts/mystorage' で実行し、100件に制限する
パラメーター 必須または省略可能 Description
リソース ID 必須 ログのクエリを実行する Azure リソース ID。 例: /subscriptions/<YOUR-SUBSCRIPTION-ID>/resourceGroups/<YOUR-RESOURCE-GROUP>/providers/Microsoft.OperationalInsights/workspaces/<YOUR-WORKSPACE>
テーブル 必須 クエリを実行するテーブルの名前。 これは、ワークスペース内の特定のテーブルです。
クエリ 必須 Log Analytics ワークスペースに対して実行する KQL クエリ。 TimeGenerated によって並べ替えられた最新のログを表示する recent や、TimeGenerated で並べ替えられたエラー レベルのログを示す errors など、名前で定義済みのクエリを使用できます。 それ以外の場合は、カスタム KQL クエリを指定します。
Hours オプション 現在から過去のデータを問い合わせる時間数。
制限 オプション 返される結果の最大数。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

状態: エンティティの健康状態を取得する

Azure MCP サーバーは、Azure Monitor 正常性モデルを使用してエンティティの正常性状態を取得します。 これにより、Azure のリソースとアプリケーションの包括的な正常性情報と監視状態が提供されます。

プロンプトの例を次に示します。

  • エンティティの正常性を確認する: "リソース グループ 'prod-rg' のモデル 'webapp-health' を使用してエンティティ 'app-prod-001' の正常性を取得する"
  • リソースの正常性を監視する: "リソース グループ 'monitoring-rg' のモデル 'application-health' を使用したエンティティ 'web-app-prod' の正常性は何ですか?
  • システムの状態を確認する: "リソース グループ 'data-rg' のモデル 'database-health' を使用してエンティティ 'sql-prod-db' の正常性情報を取得する"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。
モデル 必須 健康モデルの名前。
エンティティ 必須 ヘルスを取得するためのエンティティID。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

メトリクス: クエリ メトリクス

Azure MCP Server は、リソースの Azure Monitor メトリックに対してクエリを実行します。 これにより、指定した期間の Azure リソースのパフォーマンス メトリック、使用状況統計、監視データを取得できます。

プロンプトの例を次に示します。

  • VM メトリックのクエリ: 1 月 1 日から 1 月 2 日までのリソース 'prod-vm01' の名前空間 'Microsoft.Compute/virtualMachines' を使用してメトリック 'Percentage CPU,Available Memory Bytes' を取得する"
  • ストレージ メトリックのクエリ: "リソース 'mystorageaccount' の名前空間 'Microsoft.Storage/storageAccounts' でメトリック 'Transactions,Availability' を表示する"
  • アプリ メトリックのクエリ: "過去 24 時間のリソース 'mywebapp' の名前空間 'Microsoft.Web/sites' でメトリック 'ResponseTime,Requests' を取得する"
パラメーター 必須または省略可能 Description
資源 必須 メトリックのクエリを実行するリソースの名前。
メトリック名前空間 必須 メトリック名前空間。
Metrics 必須 クエリするメトリック名。
リソースの種類 オプション リソースの型。
開始時刻 オプション クエリの開始時刻。
終了時刻 オプション クエリの終了時刻。
Interval オプション 集計の間隔。
集約 オプション 集計メソッド。
フィルター オプション メトリック クエリをフィルター処理します。
最大バケット数 オプション バケットの最大数。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

メトリック: メトリック定義を一覧表示する

Azure MCP サーバーには、リソースで使用可能なメトリック定義が一覧表示されます。 これは、特定のメトリック データに対してクエリを実行する前に、監視に使用できるメトリックを検出するのに役立ちます。

プロンプトの例を次に示します。

  • ストレージ メトリックの一覧表示: "mystorageaccount のメトリックを表示する"。
  • トランザクション メトリックを検索する: "Storageacct のトランザクション メトリックを検索します。"
  • VM メトリックの一覧表示: "運用グループ内の prod-vm のメトリックを一覧表示する"。
パラメーター 必須または省略可能 Description
リソース名 必須 リソースの名前。
リソースの種類 オプション リソースの型。
メトリック名前空間 オプション メトリック名前空間。
検索文字列 オプション メトリックをフィルター処理する文字列を検索します。
制限 オプション 返される結果の最大数。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

ワークブック: ワークブックをリスト化する

Azure MCP サーバーは、リソース グループ内の Azure Monitor ワークブックを一覧化します。 これは、監視ダッシュボードと対話型レポートを検出して管理するのに役立ちます。

プロンプトの例を次に示します。

  • ワークブックを一覧表示: "リソース グループ 'my-resource-group' にあるワークブックを一覧表示する"
  • カテゴリ別に一覧表示: "リソース グループ 'my-resource-group' の Insights カテゴリのブックを一覧表示する"
  • 共有ブックの一覧表示: "リソース グループ 'my-resource-group' に共有ブックを表示する"
パラメーター 必須または省略可能 Description
リソース グループ 必須 Azure リソース グループの名前。
カテゴリ オプション ワークブックをフィルタリングするためのカテゴリである。
Kind オプション ワークブックの種類 ( shareduserなど)。
ソース ID オプション ワークブックをフィルタリングするためのソース リソース ID。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

ワークブック: ワークブックの詳細を表示する

Azure MCP サーバーでは、リソース ID によって特定の Azure Monitor ブックの詳細が表示されます。 これにより、ブックの構成とコンテンツに関する包括的な情報が提供されます。

プロンプトの例を次に示します。

  • ワークブックを表示: "'/subscriptions/abc123/resourceGroups/monitoring/providers/Microsoft.Insights/workbooks/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1' のワークブックの詳細を表示します"
  • ワークブック情報を取得: "ワークブック '/subscriptions/xyz789/resourceGroups/prod-rg/providers/Microsoft.Insights/workbooks/b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2' の情報を取得"
  • ワークブックを表示: "'/subscriptions/def456/resourceGroups/analytics-rg/providers/Microsoft.Insights/workbooks/c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3' のワークブックの詳細を表示する"
パラメーター 必須または省略可能 Description
ワークブック ID 必須 取得対象となるワークブックの完全な Azure リソース ID。

ツール注釈ヒント:

破壊的: ❌ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ✅ | シークレット: ❌ | ローカル必須: ❌

ワークブック: ワークブックを作成する

Azure MCP サーバーは、新しい Azure Monitor ブックを作成できます。 これにより、監視ダッシュボードと対話型レポートをプログラムで作成できます。

プロンプトの例を次に示します。

  • ブックの作成: "表示名 'Performance Dashboard' とシリアル化されたコンテンツ '{"version":"Notebook/1.0","items":[]}' をリソース グループ 'monitoring-rg' に作成する"
  • ソースに関連付けられたワークブックを作成: "表示名 'App Insights Analysis' とシリアル化されたコンテンツ '{"version":"Notebook/1.0","items":[]}' を持つワークブックをソース '/subscriptions/abc123/resourceGroups/prod/providers/Microsoft.Insights/components/myappinsights' で作成する"
  • 監視ワークブックの作成: "表示名 'インフラ概要' とシリアル化されたコンテンツ '{"version":"Notebook/1.0","items":[{"type":1,"content":{"json":"## インフラメトリクス"}}]}'"
パラメーター 必須または省略可能 Description
表示 必須 新しいワークブックの表示名。
シリアル化されたコンテンツ 必須 ブックの構造とクエリを定義する JSON コンテンツ。
ソース ID オプション ブックに関連付けるソース リソース ID。

ツール注釈ヒント:

破壊的: ✅ | 冪等: ❌ | オープンワールド: ❌ | 読み取り専用: ❌ | シークレット: ❌ | ローカル必須: ❌

ワークブック: ワークブックを更新する

Azure MCP サーバーは、既存の Azure Monitor ワークブックを更新します。 これにより、ブックのプロパティとコンテンツをプログラムで変更できます。

プロンプトの例を次に示します。

  • 更新名: "ワークブック '/subscriptions/abc123/resourceGroups/monitoring-rg/providers/Microsoft.Insights/workbooks/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1' を表示名『Updated Dashboard』に更新する"
  • コンテンツの更新: "ワークブック '/subscriptions/xyz789/resourceGroups/prod-rg/providers/Microsoft.Insights/workbooks/b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2' をシリアル化されたコンテンツ '{"version":"Notebook/1.0","items":[]}' で更新"
  • ワークブックの変更: 表示名を「Analytics ダッシュボード」に変更し、ワークブック '/subscriptions/def456/resourceGroups/analytics-rg/providers/Microsoft.Insights/workbooks/c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3' 用のシリアル化されたコンテンツ '{"version":"Notebook/1.0","items":[]}' を設定します。
パラメーター 必須または省略可能 Description
ワークブック ID 必須 更新するワークブックの完全な Azure リソース ID。
表示 オプション ブックの新しい表示名。
シリアル化されたコンテンツ オプション ブックの JSON 形式の更新された内容。

ツール注釈ヒント:

破壊的: ✅ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ❌ | シークレット: ❌ | ローカル必須: ❌

ワークブック: ワークブックを削除する

Azure MCP サーバーは、Azure Monitor ワークブックを削除します。 これにより、ワークブックとそれに関連付けられているすべてのコンテンツが完全に削除されます。

プロンプトの例を次に示します。

  • ワークブックを削除: "ワークブック '/subscriptions/abc123/resourceGroups/monitoring/providers/Microsoft.Insights/workbooks/a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1'"
  • ワークブックを削除: "ワークブック '/subscriptions/xyz789/resourceGroups/prod-rg/providers/Microsoft.Insights/workbooks/b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2'"
  • クリーンアップ: "ワークブック '/subscriptions/def456/resourceGroups/analytics-rg/providers/Microsoft.Insights/workbooks/c2c2c2c2-dddd-eeee-ffff-a3a3a3a3a3a3' を削除する"
パラメーター 必須または省略可能 Description
ワークブック ID 必須 削除するワークブックの完全な Azure リソース ID。

ツール注釈ヒント:

破壊的: ✅ | 冪等: ✅ | オープンワールド: ❌ | 読み取り専用: ❌ | シークレット: ❌ | ローカル必須: ❌