Azure MCP サーバーを使用すると、自然言語プロンプトを使用して Azure Database for PostgreSQL リソースを管理できます。 複雑なクエリ構文を覚えずに、データベースのクエリ、テーブルの一覧表示、スキーマの取得などを行うことができます。
Azure Database for PostgreSQL は、クラウド内のフル マネージドでインテリジェントでスケーラブルな PostgreSQL データベース サービスです。 これにより、データベース管理ではなく、アプリケーション開発に集中できます。
注
ツール パラメーター: Azure MCP Server ツールは、タスクを完了するために必要なデータのパラメーターを定義します。 これらのパラメーターの一部は、各ツールに固有であり、ここに記載されています。 その他のパラメーターはグローバルであり、すべてのツールで共有されます。 詳細については、「 ツールパラメーター」を参照してください。
サーバー、データベース、およびテーブルを一覧表示する
Azure Database for PostgreSQL のサーバー、データベース、またはテーブルを一覧表示します。 既定では、このツールは指定されたリソース グループ内のすべてのサーバーを返します。 データベースを一覧表示する Server を指定するか、テーブルを一覧表示する Server と Database の両方を指定します。 結果は、指定したレベル (サーバー、データベース、またはテーブル) で返されます。
プロンプトの例を次に示します。
- "リソース グループ 'my-resource-group' 内のすべての PostgreSQL サーバーを一覧表示します。"
- "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' のデータベースを表示します。"
- "リソース グループ 'my-resource-group' のデータベース 'my-db' on PostgreSQL サーバー 'my-pg-server' 内のすべてのテーブルを一覧表示します。"
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| User | Optional | PostgreSQL サーバーにアクセスするユーザー名。 |
| 認証の種類 | Optional | 接続に使用する認証の種類。 |
| パスワード | Optional | データベース認証のパスワード。 |
| サーバー | Optional | アクセスする PostgreSQL サーバー。 指定しない場合は、リソース グループ内のすべてのサーバーが一覧表示されます。 このパラメーターを指定してデータベースを一覧表示するか、 Database と組み合わせてテーブルを一覧表示します。 |
| データベース | Optional | アクセスする PostgreSQL データベース。
Serverを指定する必要があります。 指定すると、このデータベース内のテーブルが一覧表示されます。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
データベース: データベース クエリの実行
Azure MCP サーバーは、PostgreSQL データベースに対してクエリを実行できます。
プロンプトの例を次に示します。
- クエリの実行: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' で、PostgreSQL データベース 'my-db' で 'SELECT * FROM users LIMIT 10' を実行します"
- クエリ データ: "クエリを実行して、リソース グループ 'my-resource-group' のサーバー 'my-pg-server' の PostgreSQL データベース 'my-db' から最近の注文を取得する"
- データの取得: 「リソース グループ 'my-resource-group' 内のサーバー 'my-pg-server' にある PostgreSQL データベース 'my-db' から、次のクエリを使用してユーザー情報を取得します。」
- データの抽出: "リソース グループ "my-resource-group" の "My PostgreSQL サーバー 'my-pg-server' から顧客データを照会する"
- レコードの取得: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' で PostgreSQL データベース 'my-db' から上位の売上レコードを選択します"
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| リソース グループ | 必須 | Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。 |
| User | 必須 | PostgreSQL サーバーにアクセスするユーザー名。 |
| サーバー | 必須 | アクセスする PostgreSQL サーバー。 |
| データベース | 必須 | アクセスする PostgreSQL データベース。 |
| クエリ | 必須 | PostgreSQL データベースに対して実行されるクエリ。 |
| 認証の種類 | Optional | 接続に使用する認証の種類。 |
| パスワード | Optional | データベース認証のパスワード。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
テーブル: テーブル スキーマを取得する
Azure MCP サーバーは、PostgreSQL データベース内の特定のテーブルのスキーマを取得できます。
プロンプトの例を次に示します。
- スキーマの表示: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' の PostgreSQL データベース 'my-db' の 'users' テーブルのスキーマを表示する"
- 構造を取得: "リソースグループ 'my-resource-group' 内のサーバー 'my-pg-server' 上の PostgreSQL データベース 'my-db' にある 'products' テーブルにはどのようなカラムがありますか?"
- スキーマを確認する: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' のデータベース 'my-db' の id 列に null 制約がないかどうかを確認します"
- 列の表示: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' の PostgreSQL データベース 'my-db' の 'customers' テーブルの列と型を表示する"
- テーブルを調べる: "リソース グループ 'my-resource-group' のサーバー 'my-pg-server' の PostgreSQL データベース 'my-db' の 'transactions' テーブルの構造を取得する"
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| リソース グループ | 必須 | Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。 |
| User | 必須 | PostgreSQL サーバーにアクセスするユーザー名。 |
| サーバー | 必須 | アクセスする PostgreSQL サーバー。 |
| データベース | 必須 | アクセスする PostgreSQL データベース。 |
| テーブル | 必須 | アクセスする PostgreSQL テーブル。 |
| 認証の種類 | Optional | 接続に使用する認証の種類。 |
| パスワード | Optional | データベース認証のパスワード。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
サーバー: サーバー構成を取得する
Azure MCP サーバーは、PostgreSQL サーバーの構成を取得できます。
プロンプトの例を次に示します。
- 構成の表示: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' の構成を表示する"
- 設定を取得する: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'pg-prod' の設定は何ですか?
- 構成を確認する: "リソース グループ 'my-resource-group' 構成 'x' のサーバー 'my-pg-server' が 'y' に設定されているかどうかを確認します"
- サーバー パラメーターの表示: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' のすべての構成パラメーターを表示する"
- サーバーのセットアップを取得する: "リソース グループ 'my-resource-group' の PostgreSQL インスタンス 'my-pg-server' の構成は何ですか?
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| リソース グループ | 必須 | Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。 |
| User | 必須 | PostgreSQL サーバーにアクセスするユーザー名。 |
| サーバー | 必須 | アクセスする PostgreSQL サーバー。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
サーバー: サーバー パラメーターを取得する
Azure MCP サーバーは、PostgreSQL サーバーの特定のパラメーターを取得できます。
プロンプトの例を次に示します。
- ビュー パラメーター: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' の 'max_connections' パラメーターを表示する"
- 設定を取得する: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' の 'shared_buffers' の値は何ですか?"
- Check parameter: "Check if my server 'my-pg-server' in resource group 'my-resource-group' parameter 'x' is set to 'y'" (リソース グループ 'my-resource-group' パラメーター 'x' のサーバー 'my-pg-server' が 'y' に設定されているかどうかを確認します)
- サーバー パラメーターの表示: "リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' の 'work_mem' パラメーター値を表示する"
- 構成値を取得します。"リソース グループ 'my-resource-group' の PostgreSQL インスタンス 'my-pg-server' で設定されている 'maintenance_work_mem' は何ですか?
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| リソース グループ | 必須 | Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。 |
| User | 必須 | PostgreSQL サーバーにアクセスするユーザー名。 |
| サーバー | 必須 | アクセスする PostgreSQL サーバー。 |
| Param | 必須 | アクセスする PostgreSQL パラメーター。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ❌ | ✅ | ❌ | ✅ | ❌ | ❌ |
サーバー: サーバー パラメーターを設定する
Azure MCP サーバーは、PostgreSQL サーバーで特定のパラメーターを設定または更新できます。 これにより、サーバー設定を構成し、パフォーマンスを最適化し、アプリケーションの要件に応じてデータベースの動作を調整できます。
プロンプトの例を次に示します。
- 接続設定の更新: "リソース グループ 'my-resource-group' の 'prod-postgres-server' で 、'max_connections' パラメーターを '200' に設定します"
- メモリの構成: "リソース グループ 'my-resource-group' のサーバー 'database-server-east' で 、"'shared_buffers' パラメーターを '256 MB' に更新します"
- タイムアウトを調整する: リソース グループ 'my-resource-group' の PostgreSQL サーバー 'my-pg-server' で "'statement_timeout' を '30000' に設定する"
- ログ記録の構成: "リソース グループ 'my-resource-group' のサーバー 'dev-postgres' の 'log_statement' パラメーターを 'all' に更新する"
- メンテナンス パラメーターを設定する: "リソース グループ 'my-resource-group' のデータベース サーバー 'my-pg-server' で 'maintenance_work_mem' を '64 MB' に構成する"
| パラメーター | 必須または省略可能 | Description |
|---|---|---|
| リソース グループ | 必須 | Azure リソース グループの名前。 これは Azure リソースの論理コンテナーです。 |
| User | 必須 | PostgreSQL サーバーにアクセスするためのユーザー名。 |
| サーバー | 必須 | 構成する PostgreSQL サーバー名。 |
| Param | 必須 | 設定する PostgreSQL パラメーター。 |
| 価値 | 必須 | パラメーターに設定する値。 |
| 破壊的な | 冪等性 | オープン ワールド | [読み取り専用] | Secret | ローカル必須 |
|---|---|---|---|---|---|
| ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |