MCP Tools Reference: ces.googleapis.com

ツール: list_guardrails

指定されたアプリのガードレールを一覧表示します。

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

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

入力スキーマ

AgentService.ListGuardrails のリクエスト メッセージです。

ListGuardrailsRequest

JSON 表現
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string,
  "orderBy": string
}
フィールド
parent

string

必須。ガードレールを一覧表示するアプリのリソース名。

pageSize

integer

省略可。リクエストされたページサイズ。サーバーはリクエストされた数よりも少ない項目を返す場合があります。指定しない場合は、サーバーで適切なデフォルトが選択されます。

pageToken

string

省略可。前のリスト AgentService.ListGuardrails 呼び出しから返された next_page_token 値。

filter

string

省略可。ガードレールを一覧表示するときに適用するフィルタ。詳しくは、https://google.aip.dev/160 をご覧ください。

orderBy

string

省略可。並べ替えの基準となるフィールド。「name」と「create_time」のみがサポートされています。詳しくは、https://google.aip.dev/132#ordering をご覧ください。

出力スキーマ

AgentService.ListGuardrails に対するレスポンス メッセージです。

ListGuardrailsResponse

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

object (Guardrail)

ガードレールのリスト。

nextPageToken

string

次のページを取得するために ListGuardrailsRequest.page_token として送信できるトークン。このフィールドがない場合は、後続のページがないことを示します。

ガードレール

JSON 表現
{
  "name": string,
  "displayName": string,
  "description": string,
  "enabled": boolean,
  "action": {
    object (TriggerAction)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,

  // Union field guardrail_type can be only one of the following:
  "contentFilter": {
    object (ContentFilter)
  },
  "llmPromptSecurity": {
    object (LlmPromptSecurity)
  },
  "llmPolicy": {
    object (LlmPolicy)
  },
  "modelSafety": {
    object (ModelSafety)
  },
  "codeCallback": {
    object (CodeCallback)
  }
  // End of list of possible types for union field guardrail_type.
}
フィールド
name

string

ID。ガードレールの固有識別子。形式: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

必須。ガードレールの表示名。

description

string

省略可。ガードレールの説明。

enabled

boolean

省略可。ガードレールが有効かどうか。

action

object (TriggerAction)

省略可。ガードレールがトリガーされたときに実行するアクション。

createTime

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"

updateTime

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"

etag

string

読み取り、変更、書き込みオペレーション中にオブジェクトが変更されていないことを確認するために使用される ETag。etag が空の場合、更新によって同時変更が上書きされます。

共用体フィールド guardrail_type。ガードレールのタイプ。guardrail_type は次のいずれかになります。
contentFilter

object (ContentFilter)

省略可。会話で特定のコンテンツを使用することを禁止するガードレール。

llmPromptSecurity

object (LlmPromptSecurity)

省略可。LLM の分類に基づいてプロンプトが安全でないと判断された場合に、会話をブロックするガードレール。

llmPolicy

object (LlmPolicy)

省略可。LLM の分類に基づいて LLM レスポンスがポリシーに違反していると判断された場合に、会話をブロックするガードレール。

modelSafety

object (ModelSafety)

省略可。モデルの安全性設定に基づいて LLM レスポンスが安全でないと判断された場合に、会話をブロックするガードレール。

codeCallback

object (CodeCallback)

省略可。コールバック実行の結果に基づいて会話をブロックする可能性のあるガードレール。

ContentFilter

JSON 表現
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
フィールド
bannedContents[]

string

省略可。禁止されたフレーズのリスト。ユーザー入力とエージェントの回答の両方に適用されます。

bannedContentsInUserInput[]

string

省略可。禁止されたフレーズのリスト。ユーザー入力にのみ適用されます。

bannedContentsInAgentResponse[]

string

省略可。禁止されたフレーズのリスト。エージェントの回答にのみ適用されます。

matchType

enum (MatchType)

必須。コンテンツ フィルタのマッチタイプ。

disregardDiacritics

boolean

省略可。true の場合、マッチング時に発音区別符号が無視されます。

LlmPromptSecurity

JSON 表現
{
  "failOpen": boolean,

  // Union field security_config can be only one of the following:
  "defaultSettings": {
    object (DefaultSecuritySettings)
  },
  "customPolicy": {
    object (LlmPolicy)
  }
  // End of list of possible types for union field security_config.
}
フィールド
failOpen

boolean

省略可。ガードレールで LLM エラーが発生した場合の動作を決定します。- true の場合: ガードレールはバイパスされます。- false(デフォルト)の場合: ガードレールがトリガーまたはブロックされます。

注: カスタム ポリシーが指定されている場合、このフィールドは無視され、ポリシーの「fail_open」構成が優先されます。

共用体フィールド security_config。セキュリティ構成モードを定義します。ユーザーは次のいずれかの構成を選択する必要があります。security_config は次のいずれかになります。
defaultSettings

object (DefaultSecuritySettings)

省略可。システムの事前定義されたデフォルトのセキュリティ設定を使用します。このモードを選択するには、リクエストに空の default_settings メッセージを含めます。このフィールド内の「default_prompt_template」フィールドは、レスポンスでサーバーによって入力されます。

customPolicy

object (LlmPolicy)

省略可。ユーザー定義の LlmPolicy を使用して、セキュリティ ガードレールを構成します。

DefaultSecuritySettings

JSON 表現
{
  "defaultPromptTemplate": string
}
フィールド
defaultPromptTemplate

string

出力専用。システムで使用されるデフォルトのプロンプト テンプレート。このフィールドは、システムがデフォルトで使用するプロンプトをユーザーに表示するためのものです。OUTPUT_ONLY です。

LlmPolicy

JSON 表現
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
フィールド
maxConversationMessages

integer

省略可。このポリシーを確認する際は、会話の最後の「n」件のメッセージを考慮します。設定されていない場合、デフォルト値の 10 が使用されます。

modelSettings

object (ModelSettings)

省略可。モデル設定。

prompt

string

必須。ポリシーのプロンプト。

policyScope

enum (PolicyScope)

必須。会話中にポリシー チェックを適用するタイミングを定義します。POLICY_SCOPE_UNSPECIFIED に設定した場合、ポリシーはユーザー入力に適用されます。エージェントのレスポンスにポリシーを適用すると、エージェントがレスポンスを送信できるようになるまでに遅延が発生します。

failOpen

boolean

省略可。ポリシーのチェック中にエラーが発生した場合は、フェイルオープンしてガードレールをトリガーしません。

allowShortUtterance

boolean

省略可。デフォルトでは、短い発話の場合、LLM ポリシー チェックはバイパスされます。この設定を有効にすると、通常はスキップされる発話を含め、すべての発話にポリシー チェックが適用されます。

ModelSettings

JSON 表現
{
  "model": string,

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
フィールド
model

string

省略可。エージェントが使用する LLM モデル。設定されていない場合、エージェントは親エージェントからモデルを継承します。

共用体フィールド _temperature

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

temperature

number

省略可。設定すると、この温度が LLM モデルに使用されます。温度は、モデルのレスポンスのランダム性を制御します。温度が低いほど、予測しやすい回答が生成されます。温度が高いほど、より創造的なレスポンスが生成されます。

ModelSafety

JSON 表現
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
フィールド
safetySettings[]

object (SafetySetting)

必須。安全性設定のリスト。

SafetySetting

JSON 表現
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
フィールド
category

enum (HarmCategory)

必須。有害カテゴリ。

threshold

enum (HarmBlockThreshold)

必須。有害ブロックのしきい値。

CodeCallback

JSON 表現
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
フィールド
beforeAgentCallback

object (Callback)

省略可。エージェントが呼び出される前に実行するコールバック。各コールバック関数は、少なくとも次のものを含む構造(辞書やオブジェクトなど)を返すことが想定されています。- 'decision': 'OK' または 'TRIGGER' のいずれか。- 'reason': 判定を説明する文字列。「TRIGGER」の判定により、それ以降の処理が停止されることがあります。

afterAgentCallback

object (Callback)

省略可。エージェントの呼び出し後に実行するコールバック。各コールバック関数は、少なくとも次のものを含む構造(辞書やオブジェクトなど)を返すことが想定されています。- 'decision': 'OK' または 'TRIGGER' のいずれか。- 'reason': 判定を説明する文字列。「TRIGGER」の判定により、それ以降の処理が停止されることがあります。

beforeModelCallback

object (Callback)

省略可。モデルが呼び出される前に実行するコールバック。モデルへの呼び出しが複数ある場合、コールバックは複数回実行されます。各コールバック関数は、少なくとも次のものを含む構造(辞書やオブジェクトなど)を返すことが想定されています。- 'decision': 'OK' または 'TRIGGER' のいずれか。- 'reason': 判定を説明する文字列。「TRIGGER」の判定により、それ以降の処理が停止されることがあります。

afterModelCallback

object (Callback)

省略可。モデルの呼び出し後に実行するコールバック。モデルへの呼び出しが複数ある場合、コールバックは複数回実行されます。各コールバック関数は、少なくとも次のものを含む構造(辞書やオブジェクトなど)を返すことが想定されています。- 'decision': 'OK' または 'TRIGGER' のいずれか。- 'reason': 判定を説明する文字列。「TRIGGER」の判定により、それ以降の処理が停止されることがあります。

コールバック

JSON 表現
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
フィールド
description

string

省略可。コールバックの説明(人が読める形式)。

disabled

boolean

省略可。コールバックが無効かどうか。無効になっているコールバックはエージェントによって無視されます。

proactiveExecutionEnabled

boolean

省略可。有効にすると、中間モデルの出力でもコールバックが実行されます。この設定は、モデル コールバック後にのみ影響します。慎重に有効にしてください。通常、モデル コールバックはすべてのモデル レスポンスを受信した後にのみ実行する必要があります。プロアクティブな実行を有効にすると、実行コストとレイテンシに悪影響を及ぼす可能性があるため、有効にするのはまれな状況のみにしてください。

共用体フィールド callback。実行するコールバック。callback は次のいずれかになります。
pythonCode

string

必須。コールバックで実行する Python コード。

TriggerAction

JSON 表現
{

  // Union field action can be only one of the following:
  "respondImmediately": {
    object (RespondImmediately)
  },
  "transferAgent": {
    object (TransferAgent)
  },
  "generativeAnswer": {
    object (GenerativeAnswer)
  }
  // End of list of possible types for union field action.
}
フィールド
共用体フィールド action。実行するアクション。action は次のいずれかになります。
respondImmediately

object (RespondImmediately)

省略可。事前構成されたレスポンスですぐに返信します。

transferAgent

object (TransferAgent)

省略可。会話を別のエージェントに転送します。

generativeAnswer

object (GenerativeAnswer)

省略可。生成回答で返信します。

RespondImmediately

JSON 表現
{
  "responses": [
    {
      object (Response)
    }
  ]
}
フィールド
responses[]

object (Response)

必須。エージェントが選択できる返信定型文。レスポンスはランダムに選択されます。

レスポンス

JSON 表現
{
  "text": string,
  "disabled": boolean
}
フィールド
text

string

必須。エージェントが返信するテキスト。

disabled

boolean

省略可。レスポンスが無効かどうか。無効にしたレスポンスはエージェントによって使用されません。

TransferAgent

JSON 表現
{
  "agent": string
}
フィールド
agent

string

必須。会話の転送先のエージェントの名前。エージェントは、現在のエージェントと同じアプリに存在する必要があります。形式: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

JSON 表現
{
  "prompt": string
}
フィールド
prompt

string

必須。生成された回答に使用するプロンプト。

タイムスタンプ

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 にする必要があります(両端を含む)。

ツールのアノテーション

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