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

식별자. 가드레일의 고유 식별자입니다. 형식: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

필수 항목입니다. 가이드레일의 표시 이름입니다.

description

string

선택사항입니다. 가이드라인에 대한 설명입니다.

enabled

boolean

선택사항입니다. 가드레일이 사용 설정되어 있는지 여부입니다.

action

object (TriggerAction)

선택사항입니다. 가드레일이 트리거될 때 취할 작업입니다.

createTime

string (Timestamp format)

출력 전용입니다. 가이드레일이 생성된 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 가드레일이 마지막으로 업데이트된 타임스탬프입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. '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

선택사항입니다. 정책 확인 중에 오류가 발생하면 fail open하고 가드레일을 트리거하지 않습니다.

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)

선택사항입니다. 상담사가 호출되기 전에 실행할 콜백입니다. 각 콜백 함수는 다음을 포함하는 구조 (예: dict 또는 객체)를 반환해야 합니다. - 'decision': 'OK' 또는 'TRIGGER' - 'reason': 결정을 설명하는 문자열입니다. 'TRIGGER' 결정으로 인해 추가 처리가 중지될 수 있습니다.

afterAgentCallback

object (Callback)

선택사항입니다. 에이전트가 호출된 후 실행할 콜백입니다. 각 콜백 함수는 다음을 포함하는 구조 (예: dict 또는 객체)를 반환해야 합니다. - 'decision': 'OK' 또는 'TRIGGER' - 'reason': 결정을 설명하는 문자열입니다. 'TRIGGER' 결정으로 인해 추가 처리가 중지될 수 있습니다.

beforeModelCallback

object (Callback)

선택사항입니다. 모델이 호출되기 전에 실행할 콜백입니다. 모델에 대한 호출이 여러 개 있는 경우 콜백이 여러 번 실행됩니다. 각 콜백 함수는 다음을 포함하는 구조 (예: dict 또는 객체)를 반환해야 합니다. - 'decision': 'OK' 또는 'TRIGGER' - 'reason': 결정을 설명하는 문자열입니다. 'TRIGGER' 결정으로 인해 추가 처리가 중지될 수 있습니다.

afterModelCallback

object (Callback)

선택사항입니다. 모델이 호출된 후 실행할 콜백입니다. 모델에 대한 호출이 여러 개 있는 경우 콜백이 여러 번 실행됩니다. 각 콜백 함수는 다음을 포함하는 구조 (예: dict 또는 객체)를 반환해야 합니다. - '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 epoch 1970-01-01T00:00:00Z 이후 UTC 시간의 초 단위로 표현합니다. -62135596800~253402300799 (0001-01-01T00:00:00Z~9999-12-31T23:59:59Z에 해당) 사이여야 합니다.

nanos

integer

나노초 단위의 음수가 아닌 초수입니다. 이 필드는 기간의 나노초 부분이며 초의 대안이 아닙니다. 음수의 초수 값에는 시간에 반영되는 음수가 아닌 나노초 값이 있어야 합니다. 0~999,999,999(포함) 사이여야 합니다.

도구 주석

파괴적 힌트: ❌ | 동일한 힌트: ✅ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌