MCP Tools Reference: cloud-sql

ツール: list_users

Cloud SQL インスタンスのすべてのデータベース ユーザーを一覧表示します。

次のサンプルは、curl を使用して list_users MCP ツールを呼び出す方法を示しています。

Curl リクエスト
                  
curl --location 'https://sqladmin.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_users",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

入力スキーマ

SqlUsersListRequest

JSON 表現
{
  "instance": string,
  "project": string
}
フィールド
instance

string

データベース インスタンス ID。プロジェクト ID は含みません。

project

string

インスタンスを含むプロジェクトのプロジェクト ID。

出力スキーマ

ユーザーリストのレスポンス。

UsersListResponse

JSON 表現
{
  "kind": string,
  "items": [
    {
      object (User)
    }
  ],
  "nextPageToken": string
}
フィールド
kind

string

これは常に sql#usersList です。

items[]

object (User)

インスタンスのユーザー リソースのリスト。

nextPageToken
(deprecated)

string

使用されていません。

ユーザー

JSON 表現
{
  "kind": string,
  "password": string,
  "etag": string,
  "name": string,
  "host": string,
  "instance": string,
  "project": string,
  "type": enum (SqlUserType),
  "iamEmail": string,
  "passwordPolicy": {
    object (UserPasswordValidationPolicy)
  },
  "databaseRoles": [
    string
  ],

  // Union field user_details can be only one of the following:
  "sqlserverUserDetails": {
    object (SqlServerUserDetails)
  }
  // End of list of possible types for union field user_details.

  // Union field _dual_password_type can be only one of the following:
  "dualPasswordType": enum (DualPasswordType)
  // End of list of possible types for union field _dual_password_type.

  // Union field _iam_status can be only one of the following:
  "iamStatus": enum (IamStatus)
  // End of list of possible types for union field _iam_status.
}
フィールド
kind

string

これは常に sql#user です。

password

string

ユーザーのパスワード。

etag

string

このフィールドはサポートが終了しており、API の将来のバージョンで削除されます。

name

string

Cloud SQL インスタンスのユーザー名。update ではすでに URL に指定されているため、省略できます。

host

string

省略可。ユーザーが接続できるホスト。insert オペレーションの場合、ホストはデフォルトで空の文字列になります。update オペレーションの場合、ホストはリクエスト URL の一部として指定されます。挿入後にホスト名を更新することはできません。MySQL インスタンスの場合は必須です。PostgreSQL インスタンスまたは SQL Server インスタンスの場合は省略可能です。

instance

string

Cloud SQL インスタンスの名前。プロジェクト ID は含みません。 すでに URL で指定されているため、update では省略できます。

project

string

Cloud SQL データベースを含むプロジェクトのプロジェクト ID。該当する場合、Google apps ドメインが先頭に追加されます。すでに URL で指定されているため、update では省略できます。

type

enum (SqlUserType)

ユーザータイプ。ログイン時にユーザーを認証する方法を決定します。デフォルトはデータベースの組み込みユーザー型です。

iamEmail

string

省略可。IAM ユーザーの完全なメールアドレス。通常のデータベース ユーザーの場合、このフィールドは入力されません。MySQL データベース ユーザーにのみ適用されます。

passwordPolicy

object (UserPasswordValidationPolicy)

ユーザーレベルのパスワード検証ポリシー。

databaseRoles[]

string

省略可。ユーザーのロール メンバーシップ

共用体フィールド user_details。特定のデータベース タイプ user_details のユーザーの詳細情報は、次のいずれかになります。
sqlserverUserDetails

object (SqlServerUserDetails)

共用体フィールド _dual_password_type

_dual_password_type は次のいずれかになります。

dualPasswordType

enum (DualPasswordType)

ユーザーの二重パスワードのステータス。

共用体フィールド _iam_status

_iam_status は次のいずれかになります。

iamStatus

enum (IamStatus)

IAM データベース認証でグループが有効か無効かを示します。

SqlServerUserDetails

JSON 表現
{
  "disabled": boolean,
  "serverRoles": [
    string
  ]
}
項目
disabled

boolean

ユーザーが無効になっている場合

serverRoles[]

string

このユーザーに対するサーバーの役割

UserPasswordValidationPolicy

JSON 表現
{
  "allowedFailedAttempts": integer,
  "passwordExpirationDuration": string,
  "enableFailedAttemptsCheck": boolean,
  "status": {
    object (PasswordStatus)
  },
  "enablePasswordVerification": boolean
}
フィールド
allowedFailedAttempts

integer

ユーザーがロックされるまでに許容されるログイン失敗回数。

passwordExpirationDuration

string (Duration format)

パスワード更新後の有効期限。

s で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

enableFailedAttemptsCheck

boolean

true の場合、ログイン試行の失敗のチェックが有効になります。

status

object (PasswordStatus)

出力専用。読み取り専用のパスワード ステータス。

enablePasswordVerification

boolean

true の場合、ユーザーはパスワードを変更する前に現在のパスワードを指定する必要があります。このフラグは MySQL でのみサポートされています。

所要時間

JSON 表現
{
  "seconds": string,
  "nanos": integer
}
フィールド
seconds

string (int64 format)

期間の符号付き秒数。-315,576,000,000 ~+315,576,000,000 の範囲(両端を含む)にする必要があります。注: これらの境界は、60 秒/分 * 60 分/時間 * 24 時間/日 * 365.25 日/年 * 10,000 年から計算されます。

nanos

integer

期間のナノ秒分解能による、秒の符号付き小数以下部分。1 秒未満の期間は、0 の seconds フィールドと正または負の nanos フィールドで表されます。1 秒以上の期間の場合、nanos フィールドのゼロ以外の値は、seconds フィールドと同じ符号である必要があります。-999,999,999~+999,999,999 の範囲内(境界含む)である必要があります。

PasswordStatus

JSON 表現
{
  "locked": boolean,
  "passwordExpirationTime": string
}
フィールド
locked

boolean

true の場合、ユーザーにはログイン権限がありません。

passwordExpirationTime

string (Timestamp format)

現在のパスワードの有効期限。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

タイムスタンプ

JSON 表現
{
  "seconds": string,
  "nanos": integer
}
フィールド
seconds

string (int64 format)

UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。

nanos

integer

ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。

ツールのアノテーション

破壊的ヒント: ❌ | べき等ヒント: ❌ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌