MCP Tools Reference: ces.googleapis.com

工具:create_app

在给定的项目和位置中创建新应用。

以下代码示例展示了如何使用 curl 调用 create_app MCP 工具。

Curl 请求
curl --location 'https://ces.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_app",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

输入架构

AgentService.CreateApp 的请求消息。

CreateAppRequest

JSON 表示法
{
  "parent": string,
  "appId": string,
  "app": {
    object (App)
  }
}
字段
parent

string

必需。要在其中创建应用的位置的资源名称。

appId

string

可选。要用于应用的 ID,该 ID 将成为应用资源名称的最后一个组成部分。如果未提供,系统会自动为应用分配唯一 ID。

app

object (App)

必需。要创建的应用。

应用

JSON 表示法
{
  "name": string,
  "displayName": string,
  "description": string,
  "pinned": boolean,
  "rootAgent": string,
  "languageSettings": {
    object (LanguageSettings)
  },
  "timeZoneSettings": {
    object (TimeZoneSettings)
  },
  "audioProcessingConfig": {
    object (AudioProcessingConfig)
  },
  "loggingSettings": {
    object (LoggingSettings)
  },
  "errorHandlingSettings": {
    object (ErrorHandlingSettings)
  },
  "modelSettings": {
    object (ModelSettings)
  },
  "toolExecutionMode": enum (ToolExecutionMode),
  "evaluationMetricsThresholds": {
    object (EvaluationMetricsThresholds)
  },
  "variableDeclarations": [
    {
      object (VariableDeclaration)
    }
  ],
  "predefinedVariableDeclarations": [
    {
      object (VariableDeclaration)
    }
  ],
  "globalInstruction": string,
  "guardrails": [
    string
  ],
  "dataStoreSettings": {
    object (DataStoreSettings)
  },
  "defaultChannelProfile": {
    object (ChannelProfile)
  },
  "metadata": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "deploymentCount": integer,
  "clientCertificateSettings": {
    object (ClientCertificateSettings)
  },
  "vpcScSettings": {
    object (VpcScSettings)
  },
  "locked": boolean,
  "validationErrors": [
    string
  ],
  "dashboardSettings": {
    object (DashboardSettings)
  }
}
字段
name

string

标识符。应用的唯一标识符。格式:projects/{project}/locations/{location}/apps/{app}

displayName

string

必需。应用的显示名称。

description

string

可选。应用的人类可读说明。

pinned

boolean

可选。应用是否已固定在应用列表中。

rootAgent

string

可选。根代理是应用的入口点。格式:projects/{project}/locations/{location}/apps/{app}/agents/{agent}

languageSettings

object (LanguageSettings)

可选。应用的语言设置。

timeZoneSettings

object (TimeZoneSettings)

可选。应用的时区设置。

audioProcessingConfig

object (AudioProcessingConfig)

可选。应用的音频处理配置。

loggingSettings

object (LoggingSettings)

可选。应用的日志记录设置。

errorHandlingSettings

object (ErrorHandlingSettings)

可选。应用的错误处理设置。

modelSettings

object (ModelSettings)

可选。应用的默认 LLM 模型设置。各个资源(例如智能体、护栏)可以根据需要替换这些配置。

toolExecutionMode

enum (ToolExecutionMode)

可选。应用的工具执行模式。如果未提供,则默认为 PARALLEL。

evaluationMetricsThresholds

object (EvaluationMetricsThresholds)

可选。应用的评估阈值。

variableDeclarations[]

object (VariableDeclaration)

可选。变量的声明。

predefinedVariableDeclarations[]

object (VariableDeclaration)

仅限输出。应用的预定义变量声明。

globalInstruction

string

可选。适用于应用中所有代理的指令。您可以使用此指令为所有代理设置稳定的身份或个性。

guardrails[]

string

可选。应用的保护措施列表。格式:projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

dataStoreSettings

object (DataStoreSettings)

可选。应用的数据存储区设置。

defaultChannelProfile

object (ChannelProfile)

可选。应用使用的默认渠道配置文件。

metadata

map (key: string, value: string)

可选。有关应用的元数据。此字段可用于存储与应用详情或预期用途相关的其他信息。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

createTime

string (Timestamp format)

仅限输出。应用创建时的时间戳。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 为空,则更新将覆盖所有并发更改。

deploymentCount

integer

仅限输出。应用中的部署数量。

clientCertificateSettings

object (ClientCertificateSettings)

可选。应用的默认客户端证书设置。

vpcScSettings

object (VpcScSettings)

可选。应用的 VPC-SC 设置。

locked

boolean

可选。指明应用是否已锁定,无法进行更改。如果应用已锁定,对应用资源的修改将被拒绝。

validationErrors[]

string

仅限输出。应用中的错误配置或警告。

dashboardSettings

object (DashboardSettings)

可选。用于关联和配置 Contact Center Insights 信息中心的应用专用信息中心设置。

LanguageSettings

JSON 表示法
{
  "defaultLanguageCode": string,
  "supportedLanguageCodes": [
    string
  ],
  "enableMultilingualSupport": boolean,
  "fallbackAction": string
}
字段
defaultLanguageCode

string

可选。应用的默认语言代码。

supportedLanguageCodes[]

string

可选。应用支持的语言代码列表(default_language_code 除外)。

enableMultilingualSupport

boolean

可选。启用多语言支持。如果true,应用中的智能体将使用预构建的指令来更好地处理多语言输入。

fallbackAction
(deprecated)

string

可选。已弃用:此功能不再受支持。请改用 enable_multilingual_support,以便更好地处理多语言输入。当代理收到语言不受支持的输入时要执行的操作。

这可以是预定义的操作,也可以是自定义工具调用。有效值包括:- 工具的完整资源名称,用于触发特定工具执行。- 预定义的系统操作,例如“上报”或“退出”,这些操作会触发 EndSession 信号并附带相应的 metadata,以终止对话。

TimeZoneSettings

JSON 表示法
{
  "timeZone": string
}
字段
timeZone

string

可选。时区数据库中的应用时区,例如 America/Los_Angeles、Europe/Paris。

AudioProcessingConfig

JSON 表示法
{
  "synthesizeSpeechConfigs": {
    string: {
      object (SynthesizeSpeechConfig)
    },
    ...
  },
  "bargeInConfig": {
    object (BargeInConfig)
  },
  "inactivityTimeout": string,
  "ambientSoundConfig": {
    object (AmbientSoundConfig)
  },
  "customVoiceSamples": [
    {
      object (CustomVoiceSample)
    }
  ]
}
字段
synthesizeSpeechConfigs

map (key: string, value: object (SynthesizeSpeechConfig))

可选。关于如何合成代理回答的配置,从语言代码映射到 SynthesizeSpeechConfig。

如果找不到指定语言代码的配置,系统将使用根语言代码的配置。例如,如果映射包含“en-us”和“en”,而指定的语言代码为“en-gb”,则系统会使用“en”配置。

注意:语言代码不区分大小写。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

bargeInConfig

object (BargeInConfig)

可选。配置代理在用户插话时的行为。

inactivityTimeout

string (Duration format)

可选。在代理提示用户重新互动之前,用户处于非活跃状态(无语音或互动)的时长。如果未设置,代理将不会提示用户重新互动。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。

ambientSoundConfig

object (AmbientSoundConfig)

可选。配置与合成的代理回答一起播放的环境声音,以增强对话的自然度。

customVoiceSamples[]

object (CustomVoiceSample)

可选。配置用于语音克隆的自定义语音样本。

SynthesizeSpeechConfigsEntry

JSON 表示法
{
  "key": string,
  "value": {
    object (SynthesizeSpeechConfig)
  }
}
字段
key

string

value

object (SynthesizeSpeechConfig)

SynthesizeSpeechConfig

JSON 表示法
{
  "voice": string,
  "speakingRate": number,
  "model": string,
  "instruction": string
}
字段
voice

string

可选。语音的名称。如果未设置,服务将根据其他参数(例如 language_code)选择语音。

如需查看可用语音列表,请参阅 Cloud Text-to-Speech 的支持的语音和语言。

speakingRate

number

可选。语速,范围为 [0.25, 2.0]。1.0 表示特定语音支持的正常原生速度。2.0 表示快一倍的速度,0.5 则表示原有速度的一半。如果值超出 [0.25, 2.0] 范围,系统会返回错误。

model

string

可选。用于合成音频的模型。目前支持的值:-“gemini-3.1-flash-tts-preview”如果为空,则使用 Chirp3-HD。

instruction

string

可选。使用生成模型时用于合成语音的指令。

BargeInConfig

JSON 表示法
{
  "disableBargeIn": boolean,
  "bargeInAwareness": boolean
}
字段
disableBargeIn
(deprecated)

boolean

可选。已弃用:disable_barge_in 已弃用,取而代之的是 ChannelProfile 中的 disable_barge_in_control。

禁止用户在代理说话时插话。如果为 true,则系统会忽略代理回答播放期间的用户输入。

bargeInAwareness

boolean

可选。如果启用此功能,代理会假设用户未听到上一条代理消息的完整内容,并据此调整其下一条回答。在以可视化方式显示代理回答的场景中,不应使用此功能。

时长

JSON 表示法
{
  "seconds": string,
  "nanos": integer
}
字段
seconds

string (int64 format)

时间跨度的带符号秒数。必须介于 -315,576,000,000 到 +315,576,000,000 之间(含边界值)。注意:这些边界的计算公式为:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年

nanos

integer

时间跨度的秒数的有符号小数部分(以纳秒为单位)。小于 1 秒的时长用 0 seconds 字段和正或负 nanos 字段表示。对于一秒或更长的时长,nanos 字段的非零值必须与 seconds 字段具有相同的符号。必须介于 -999,999,999 到 +999,999,999 之间(含边界值)。

AmbientSoundConfig

JSON 表示法
{
  "volumeGainDb": number,

  // Union field source can be only one of the following:
  "prebuiltAmbientNoise": enum (PrebuiltAmbientNoise),
  "gcsUri": string,
  "prebuiltAmbientSound": string
  // End of list of possible types for union field source.
}
字段
volumeGainDb

number

可选。环境噪音支持的正常原生音量的音量增益(以 dB 为单位),范围为 [-96.0, 16.0]。如果未设置,或设置为 0.0 (dB) 的值,则以正常的原生信号振幅播放。如果值为 -6.0 (dB),将使用约为正常原生信号幅度一半的幅度进行播放。如果值为 +6.0 (dB),将使用约为正常原生信号幅度一倍的幅度进行播放。我们强烈建议不要超过 +10 (dB),因为通常情况下,任何大于此值的响度都不会产生实际的响度增加效果。

联合字段 source。与合成的客服人员回答一起播放的环境噪音,以增强对话的自然度。source 只能是下列其中一项:
prebuiltAmbientNoise
(deprecated)

enum (PrebuiltAmbientNoise)

可选。已弃用:prebuilt_ambient_noise 已弃用,取而代之的是 prebuilt_ambient_sound。

gcsUri

string

可选。存储在 Cloud Storage 中的单声道 16kHz WAV 文件格式的环境噪音。

注意:请确保 CES 服务代理 service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com 拥有对 Cloud Storage 对象的 storage.objects.get 权限。

prebuiltAmbientSound

string

可选。预建环境音效的名称。有效值为:- "coffee_shop" - "keyboard" - "keypad" - "hum" - "office_1" - "office_2" - "office_3" - "room_1" - "room_2" - "room_3" - "room_4" - "room_5" - "air_conditioner"

CustomVoiceSample

JSON 表示法
{
  "name": string,
  "voiceSampleGcsUri": string,
  "consentAudioGcsUri": string,
  "voiceInstruction": string,
  "previewAudioContent": string,
  "previewText": string,
  "warnings": [
    {
      object (Warning)
    }
  ],
  "voiceInstructionMode": enum (VoiceInstructionMode)
}
字段
name

string

可选。自定义语音样本的用户定义名称。

voiceSampleGcsUri

string

可选。用于语音克隆的音频样本的 Cloud Storage URI。音频样本应为单声道、24kHz WAV 文件。

consentAudioGcsUri

string

可选。用于语音克隆的同意音频。

voiceInstruction

string

可选。关于语音风格、语气、语速或发音的自然语言指令。

previewAudioContent

string (bytes format)

仅限输出。自定义语音的合成预览音频,格式为规范 WAV(LINEAR16、24kHz、16 位、单声道)。

使用 base64 编码的字符串。

previewText

string

可选。用于为自定义语音合成预览音频的文本。

warnings[]

object (Warning)

仅限输出。语音克隆处理期间遇到的警告消息(例如,音频音量低)。

voiceInstructionMode

enum (VoiceInstructionMode)

可选。语音样本的指令模式。如果未指定,则默认为 NO_INSTRUCTION。

警告

JSON 表示法
{
  "message": string,
  "type": enum (WarningType)
}
字段
message

string

仅限输出。警告的人类可读说明。

type

enum (WarningType)

仅限输出。警告的类型。

LoggingSettings

JSON 表示法
{
  "redactionConfig": {
    object (RedactionConfig)
  },
  "audioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "unredactedAudioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "bigqueryExportSettings": {
    object (BigQueryExportSettings)
  },
  "unredactedBigqueryExportSettings": {
    object (BigQueryExportSettings)
  },
  "cloudLoggingSettings": {
    object (CloudLoggingSettings)
  },
  "conversationLoggingSettings": {
    object (ConversationLoggingSettings)
  },
  "evaluationAudioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "metricAnalysisSettings": {
    object (MetricAnalysisSettings)
  },
  "requiredRecordingConsent": boolean
}
字段
redactionConfig

object (RedactionConfig)

可选。关于如何隐去敏感数据的配置。

audioRecordingConfig

object (AudioRecordingConfig)

可选。关于如何记录音频互动的配置。音频会根据 RedactionConfig 中的配置进行隐去。

unredactedAudioRecordingConfig

object (AudioRecordingConfig)

可选。配置未经过滤的音频的额外录制。当音频隐去功能为 enabled 时,此功能可用于保留原始音频副本,通常用于审核或监控目的。

bigqueryExportSettings

object (BigQueryExportSettings)

可选。为应用配置 BigQuery Export 行为。对话数据会根据 RedactionConfig 中的配置进行隐去。

unredactedBigqueryExportSettings

object (BigQueryExportSettings)

可选。为应用配置 BigQuery Export 行为。如果启用,未隐去个人身份信息的对话数据将导出到 BigQuery 表。

cloudLoggingSettings

object (CloudLoggingSettings)

可选。用于描述应用的 Cloud Logging 行为的设置。

conversationLoggingSettings

object (ConversationLoggingSettings)

可选。用于描述应用的对话日志记录行为的设置。

evaluationAudioRecordingConfig

object (AudioRecordingConfig)

可选。关于如何为评估录制音频互动的配置。默认情况下,评估会话不会启用录音功能。

metricAnalysisSettings

object (MetricAnalysisSettings)

可选。用于描述应用 LLM 分析流水线的对话数据收集行为的设置。

requiredRecordingConsent

boolean

可选。应用是否必须在保留任何内容之前说明可能会录制的内容。

如果为 true,则会话开始时录制功能处于关闭状态,并保持关闭状态,直到客户端发送 SessionInput.recording_control,然后从该时间点开始决定每个回合。这涵盖录音以及对话记录、BigQuery Export 和 Cloud Logging。

如果设置为 false(默认值),则上述设置会自行决定,客户端无需发送任何内容。

RedactionConfig

JSON 表示法
{
  "enableRedaction": boolean,
  "inspectTemplate": string,
  "deidentifyTemplate": string
}
字段
enableRedaction

boolean

可选。如果为 true,则系统会在各种日志记录场景中应用隐去功能,包括对话记录、Cloud Logging 和录音。

inspectTemplate

string

可选。DLP 检查模板名称,用于配置敏感数据类型的检测。

格式:projects/{project}/locations/{location}/inspectTemplates/{inspect_template}

deidentifyTemplate

string

可选。DLP 去标识化模板名称,用于指示如何对内容进行去标识化处理。

格式:projects/{project}/locations/{location}/deidentifyTemplates/{deidentify_template}

AudioRecordingConfig

JSON 表示法
{
  "gcsBucket": string,
  "gcsPathPrefix": string
}
字段
gcsBucket

string

可选。用于存储会话录音的 Cloud Storage 存储桶。URI 必须以“gs://”开头。

请选择符合您数据驻留要求的存储桶位置。

注意:如果 Cloud Storage 存储桶与应用位于不同的项目中,您应向 CES 服务代理 service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com 授予 storage.objects.create 权限。

gcsPathPrefix

string

可选。录音的 Cloud Storage 路径前缀。

此前缀可以包含以下占位符,这些占位符将在传送时动态替换:- $project:项目 ID - $location:应用位置 - $app:应用 ID - $date:会话日期(采用 YYYY-MM-DD 格式)- $session:会话 ID

如果未指定路径前缀,系统将使用默认前缀 $project/$location/$app/$date/$session/。

BigQueryExportSettings

JSON 表示法
{
  "enabled": boolean,
  "project": string,
  "dataset": string
}
字段
enabled

boolean

可选。指明是否已启用 BigQuery Export 功能。

project

string

可选。要将数据导出到的 BigQuery 数据集的项目 ID。

注意:如果 BigQuery 数据集与应用位于不同的项目中,您应向 CES 服务代理 service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com 授予 roles/bigquery.admin 角色。

dataset

string

可选。要将数据导出到的 BigQuery 数据集 ID。

CloudLoggingSettings

JSON 表示法
{
  "enableCloudLogging": boolean
}
字段
enableCloudLogging

boolean

可选。是否为会话启用 Cloud Logging。

ConversationLoggingSettings

JSON 表示法
{
  "disableConversationLogging": boolean,
  "retentionWindow": string
}
字段
disableConversationLogging

boolean

可选。是否为会话停用对话日志记录。

retentionWindow

string (Duration format)

可选。控制对话的保留窗口。如果未设置,对话将保留 365 天。

该时长以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"。

MetricAnalysisSettings

JSON 表示法
{
  "llmMetricsOptedOut": boolean
}
字段
llmMetricsOptedOut

boolean

可选。是否收集对话数据以用于 LLM 分析指标。如果为 true,则系统不会收集对话数据用于 LLM 分析指标;否则,系统会收集对话数据。

ErrorHandlingSettings

JSON 表示法
{
  "errorHandlingStrategy": enum (ErrorHandlingStrategy),
  "fallbackResponseConfig": {
    object (FallbackResponseConfig)
  },
  "endSessionConfig": {
    object (EndSessionConfig)
  }
}
字段
errorHandlingStrategy

enum (ErrorHandlingStrategy)

可选。用于错误处理的策略。

fallbackResponseConfig

object (FallbackResponseConfig)

可选。用于处理后备响应的配置。

endSessionConfig

object (EndSessionConfig)

可选。用于在发生系统错误(例如 LLM 错误)时结束会话的配置。

FallbackResponseConfig

JSON 表示法
{
  "customFallbackMessages": {
    string: string,
    ...
  },
  "maxFallbackAttempts": integer
}
字段
customFallbackMessages

map (key: string, value: string)

可选。发生系统错误(例如 LLM 错误)时的后备消息,按支持的语言代码映射。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

maxFallbackAttempts

integer

可选。在代理发出 EndSession 信号之前,尝试回退的最大次数。

CustomFallbackMessagesEntry

JSON 表示法
{
  "key": string,
  "value": string
}
字段
key

string

value

string

EndSessionConfig

JSON 表示法
{

  // Union field _escalate_session can be only one of the following:
  "escalateSession": boolean
  // End of list of possible types for union field _escalate_session.
}
字段

联合字段 _escalate_session。

_escalate_session 只能是下列其中一项:

escalateSession

boolean

可选。是否在 EndSession 中上报会话。如果会话已上报,metadata in EndSession 将包含 session_escalated = true。如需了解详情,请参阅 https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent。

ModelSettings

JSON 表示法
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

  // 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 模型。如果未设置,智能体将沿用其父智能体的模型。

thinkingLevel

enum (ThinkingLevel)

可选。模型的思考等级。

联合字段 _temperature。

_temperature 只能是下列其中一项:

temperature

number

可选。如果设置,此温度将用于 LLM 模型。温度控制模型回答的随机性。温度越低,生成的回答越可预测。温度越高,生成的回答越有创意。

EvaluationMetricsThresholds

JSON 表示法
{
  "goldenEvaluationMetricsThresholds": {
    object (GoldenEvaluationMetricsThresholds)
  },
  "hallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "goldenHallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "scenarioHallucinationMetricBehavior": enum (HallucinationMetricBehavior)
}
字段
goldenEvaluationMetricsThresholds

object (GoldenEvaluationMetricsThresholds)

可选。黄金评估指标阈值。

hallucinationMetricBehavior
(deprecated)

enum (HallucinationMetricBehavior)

可选。已弃用:请改用 golden_hallucination_metric_behavior。幻觉指标行为目前用于黄金评估。

goldenHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

可选。黄金评估的幻觉指标行为。

scenarioHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

可选。场景评估的幻觉指标行为。

GoldenEvaluationMetricsThresholds

JSON 表示法
{
  "turnLevelMetricsThresholds": {
    object (TurnLevelMetricsThresholds)
  },
  "expectationLevelMetricsThresholds": {
    object (ExpectationLevelMetricsThresholds)
  },
  "toolMatchingSettings": {
    object (ToolMatchingSettings)
  }
}
字段
turnLevelMetricsThresholds

object (TurnLevelMetricsThresholds)

可选。轮次级指标阈值。

expectationLevelMetricsThresholds

object (ExpectationLevelMetricsThresholds)

可选。预期级别指标阈值。

toolMatchingSettings

object (ToolMatchingSettings)

可选。工具匹配设置。额外工具调用是指在执行过程中出现,但与黄金预期中的任何工具调用都不匹配的工具调用。

TurnLevelMetricsThresholds

JSON 表示法
{
  "semanticSimilarityChannel": enum (SemanticSimilarityChannel),

  // Union field _semantic_similarity_success_threshold can be only one of the
  // following:
  "semanticSimilaritySuccessThreshold": integer
  // End of list of possible types for union field
  // _semantic_similarity_success_threshold.

  // Union field _overall_tool_invocation_correctness_threshold can be only one
  // of the following:
  "overallToolInvocationCorrectnessThreshold": number
  // End of list of possible types for union field
  // _overall_tool_invocation_correctness_threshold.
}
字段
semanticSimilarityChannel

enum (SemanticSimilarityChannel)

可选。用于评估的语义相似度渠道。

联合字段 _semantic_similarity_success_threshold。

_semantic_similarity_success_threshold 只能是下列其中一项:

semanticSimilaritySuccessThreshold

integer

可选。语义相似度的成功阈值。必须是介于 0 到 4 之间的整数。默认值为 >= 3。

联合字段 _overall_tool_invocation_correctness_threshold。

_overall_tool_invocation_correctness_threshold 只能是下列其中一项:

overallToolInvocationCorrectnessThreshold

number

可选。工具调用整体正确性的成功阈值。必须是介于 0 到 1 之间的浮点数。默认值为 1.0。

ExpectationLevelMetricsThresholds

JSON 表示法
{

  // Union field _tool_invocation_parameter_correctness_threshold can be only one
  // of the following:
  "toolInvocationParameterCorrectnessThreshold": number
  // End of list of possible types for union field
  // _tool_invocation_parameter_correctness_threshold.
}
字段

联合字段 _tool_invocation_parameter_correctness_threshold。

_tool_invocation_parameter_correctness_threshold 只能是下列其中一项:

toolInvocationParameterCorrectnessThreshold

number

可选。单个工具调用参数正确性的成功阈值。必须是介于 0 到 1 之间的浮点数。默认值为 1.0。

ToolMatchingSettings

JSON 表示法
{
  "extraToolCallBehavior": enum (ExtraToolCallBehavior)
}
字段
extraToolCallBehavior

enum (ExtraToolCallBehavior)

可选。额外工具调用的行为。默认值为 FAIL。

VariableDeclaration

JSON 表示法
{
  "name": string,
  "description": string,
  "schema": {
    object (Schema)
  }
}
字段
name

string

必需。变量的名称。名称必须以字母或下划线开头,且只能包含字母、数字或下划线。

description

string

必需。变量的说明。

schema

object (Schema)

必需。变量的架构。

架构

JSON 表示法
{
  "type": enum (Type),
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "description": string,
  "items": {
    object (Schema)
  },
  "nullable": boolean,
  "uniqueItems": boolean,
  "prefixItems": [
    {
      object (Schema)
    }
  ],
  "additionalProperties": {
    object (Schema)
  },
  "anyOf": [
    {
      object (Schema)
    }
  ],
  "enum": [
    string
  ],
  "default": value,
  "ref": string,
  "defs": {
    string: {
      object (Schema)
    },
    ...
  },
  "title": string,
  "minItems": string,
  "maxItems": string,

  // Union field _minimum can be only one of the following:
  "minimum": number
  // End of list of possible types for union field _minimum.

  // Union field _maximum can be only one of the following:
  "maximum": number
  // End of list of possible types for union field _maximum.
}
字段
type

enum (Type)

必需。数据类型。

properties

map (key: string, value: object (Schema))

可选。Type.OBJECT 的属性。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

required[]

string

可选。Type.OBJECT 的必要属性。

description

string

可选。数据的说明。

items

object (Schema)

可选。Type.ARRAY 元素的架构。

nullable

boolean

可选。指示值是否为 null。

uniqueItems

boolean

可选。指明数组中的项必须是唯一的。仅适用于 TYPE.ARRAY。

prefixItems[]

object (Schema)

可选。Type.ARRAY 的初始元素的架构。

additionalProperties

object (Schema)

可选。可以是布尔值或对象,用于控制是否存在其他属性。

anyOf[]

object (Schema)

可选。应根据列表中的任何(一个或多个)子架构验证该值。

enum[]

string

可选。原始类型的元素可能的具有枚举格式的值。示例:1. 我们可以将方向定义为:{type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. 我们可以将公寓编号定义为:{type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

可选。数据的默认值。

ref

string

可选。允许架构节点之间存在间接引用。该值应是对根 defs 的子项的有效引用。

例如,以下架构定义了对名为“Pet”的架构节点的引用:

type: object
properties:
  pet:
    ref: #/defs/Pet
defs:
  Pet:
    type: object
    properties:
      name:
        type: string

“pet”属性的值是对名为“Pet”的架构节点的引用。如需了解详情,请参阅 https://json-schema.org/understanding-json-schema/structuring。

defs

map (key: string, value: object (Schema))

可选。供 ref 使用的定义映射。仅允许在架构的根目录中使用。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

title

string

可选。架构的标题。

minItems

string (int64 format)

可选。Type.ARRAY 的元素数量下限。

maxItems

string (int64 format)

可选。Type.ARRAY 的元素数量上限。

联合字段 _minimum。

_minimum 只能是下列其中一项:

minimum

number

可选。Type.INTEGER 和 Type.NUMBER 的最小值。

联合字段 _maximum。

_maximum 只能是下列其中一项:

maximum

number

可选。Type.INTEGER 和 Type.NUMBER 的最大值。

PropertiesEntry

JSON 表示法
{
  "key": string,
  "value": {
    object (Schema)
  }
}
字段
key

string

value

object (Schema)

值

JSON 表示法
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
字段
联合字段 kind。值的类型。kind 只能是下列其中一项:
nullValue

null

表示 JSON null。

numberValue

number

表示 JSON 数值。不得为 NaN、Infinity 或 -Infinity,因为 JSON 不支持这些值。这也无法表示较大的 Int64 值,因为 JSON 格式通常不支持在其数字类型中使用这些值。

stringValue

string

表示 JSON 字符串。

boolValue

boolean

表示 JSON 布尔值(JSON 中的 true 或 false 字面量)。

structValue

object (Struct format)

表示一个 JSON 对象。

listValue

array (ListValue format)

表示 JSON 数组。

结构体

JSON 表示法
{
  "fields": {
    string: value,
    ...
  }
}
字段
fields

map (key: string, value: value (Value format))

动态类型值的无序映射。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }。

FieldsEntry

JSON 表示法
{
  "key": string,
  "value": value
}
字段
key

string

value

value (Value format)

ListValue

JSON 表示法
{
  "values": [
    value
  ]
}
字段
values[]

value (Value format)

动态类型值的重复字段。

DefsEntry

JSON 表示法
{
  "key": string,
  "value": {
    object (Schema)
  }
}
字段
key

string

value

object (Schema)

DataStoreSettings

JSON 表示法
{
  "engines": [
    {
      object (Engine)
    }
  ]
}
字段
engines[]

object (Engine)

仅限输出。应用的引擎。

引擎

JSON 表示法
{
  "name": string,
  "type": enum (Type)
}
字段
name

string

仅限输出。引擎的资源名称。格式:projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

type

enum (Type)

仅限输出。引擎的类型。

ChannelProfile

JSON 表示法
{
  "profileId": string,
  "channelType": enum (ChannelType),
  "personaProperty": {
    object (PersonaProperty)
  },
  "webWidgetConfig": {
    object (WebWidgetConfig)
  },
  "whatsappConfig": {
    object (WhatsAppConfig)
  },
  "instagramConfig": {
    object (InstagramConfig)
  },

  // Union field _disable_dtmf can be only one of the following:
  "disableDtmf": boolean
  // End of list of possible types for union field _disable_dtmf.

  // Union field _disable_barge_in_control can be only one of the following:
  "disableBargeInControl": boolean
  // End of list of possible types for union field _disable_barge_in_control.

  // Union field _noise_suppression_level can be only one of the following:
  "noiseSuppressionLevel": string
  // End of list of possible types for union field _noise_suppression_level.
}
字段
profileId

string

可选。渠道配置文件的唯一标识符。

channelType

enum (ChannelType)

可选。渠道配置文件的类型。

personaProperty

object (PersonaProperty)

可选。频道个人资料的角色属性。

webWidgetConfig

object (WebWidgetConfig)

可选。Web 微件的配置。

whatsappConfig

object (WhatsAppConfig)

可选。WhatsApp 部署的专属配置。

instagramConfig

object (InstagramConfig)

可选。Instagram 部署的专属配置。

联合字段 _disable_dtmf。

_disable_dtmf 只能是下列其中一项:

disableDtmf

boolean

可选。是否停用 DTMF(双音多频)。

联合字段 _disable_barge_in_control。

_disable_barge_in_control 只能是下列其中一项:

disableBargeInControl

boolean

可选。是否在对话中停用用户插话控制。- true:在代理说话时,用户无法打断。- false:智能体保留对用户何时可以打断的自动控制。

联合字段 _noise_suppression_level。

_noise_suppression_level 只能是下列其中一项:

noiseSuppressionLevel

string

可选。频道配置文件的降噪级别。可用值为“low”(低)、“moderate”(中)、“high”(高)、“very_high”(极高)。

PersonaProperty

JSON 表示法
{
  "persona": enum (Persona)
}
字段
persona

enum (Persona)

可选。频道的形象。

WebWidgetConfig

JSON 表示法
{
  "modality": enum (Modality),
  "theme": enum (Theme),
  "webWidgetTitle": string,
  "securitySettings": {
    object (SecuritySettings)
  }
}
字段
modality

enum (Modality)

可选。Web widget 的模态。

theme

enum (Theme)

可选。Web widget 的主题。

webWidgetTitle

string

可选。网页 widget 的标题。

securitySettings

object (SecuritySettings)

可选。Web widget 的安全设置。

SecuritySettings

JSON 表示法
{
  "enablePublicAccess": boolean,
  "enableOriginCheck": boolean,
  "allowedOrigins": [
    string
  ],
  "enableRecaptcha": boolean
}
字段
enablePublicAccess

boolean

可选。指明是否已启用对 Web widget 的公开访问。如果为 true,则 Web 微件将可公开访问。如果为 false,则 Web widget 必须与您自己的身份验证和授权系统集成,才能返回用于访问 CES 代理的有效凭据。

enableOriginCheck

boolean

可选。指明是否已为 Web widget 启用来源检查。如果为 true,Web widget 将检查加载 Web widget 的网站的来源,并且仅允许在同一来源或任何允许的来源中加载。

allowedOrigins[]

string

可选。允许托管 Web widget 的源。来源由 RFC 6454 定义。如果为空,则允许所有来源。最多允许 100 个来源。示例:“https://example.com”

enableRecaptcha

boolean

可选。指示是否已为 Web widget 启用 reCAPTCHA 验证。

WhatsAppConfig

JSON 表示法
{
  "wabaId": string,
  "phoneNumberId": string,
  "phoneNumber": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
字段
wabaId

string

必需。WhatsApp Business 账号 ID。

phoneNumberId

string

必需。Meta 手机号码 ID。

phoneNumber

string

可选。采用 E.164 格式的手机号码。

displayName

string

仅限输出。提取的 Meta 商家主页名称。

thumbnailUrl

string

仅限输出。提取的 Meta 商家资料缩略图网址。

description

string

仅限输出。Meta 商家页面或商家资料的说明。

InstagramConfig

JSON 表示法
{
  "instagramAccountId": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
字段
instagramAccountId

string

必需。Instagram 账号 ID。

displayName

string

仅限输出。提取的 Meta 商家主页名称。

thumbnailUrl

string

仅限输出。提取的 Meta 商家资料缩略图网址。

description

string

仅限输出。Meta 商家页面或商家资料的说明。

MetadataEntry

JSON 表示法
{
  "key": string,
  "value": string
}
字段
key

string

value

string

时间戳

JSON 表示法
{
  "seconds": string,
  "nanos": integer
}
字段
seconds

string (int64 format)

表示世界协调时间 (UTC) 的秒数(从 Unix 纪元 1970-01-01T00:00:00Z 开始算起)。必须介于 -62135596800 到 253402300799 之间(含边界值,对应于 0001-01-01T00:00:00Z 到 9999-12-31T23:59:59Z)。

nanos

integer

秒数的非负小数部分(以纳秒为单位)。此字段是时长的纳秒部分,而不是秒的替代。对于含小数部分的负秒数,仍必须包含按时间递升的非负纳秒值。必须在 0 到 999,999,999 之间(含边界值)。

ClientCertificateSettings

JSON 表示法
{
  "tlsCertificate": string,
  "privateKey": string,
  "passphrase": string
}
字段
tlsCertificate

string

必需。采用 PEM 格式编码的 TLS 证书。此字符串必须包含 begin 标头行和 end 标尾行。

privateKey

string

必需。存储以 PEM 格式编码的私钥的 SecretManager 密文版本资源名称。格式:projects/{project}/secrets/{secret}/versions/{version}

passphrase

string

可选。存储用于解密私钥的口令的 SecretManager 密文版本资源名称。如果私钥未加密,则应将其留空。格式:projects/{project}/secrets/{secret}/versions/{version}

VpcScSettings

JSON 表示法
{
  "allowedOrigins": [
    string
  ]
}
字段
allowedOrigins[]

string

可选。启用 VPC Service Controls 后,应用中的 OpenAPI 工具可以直接调用的允许 HTTP(S) 来源。这些字符串必须与来源完全匹配,包括端口(如果已指定)。例如,“https://example.com”或“https://example.com:443”。此列表尚不适用于可能直接发出 HTTP 调用的 Python 工具。

DashboardSettings

JSON 表示法
{
  "defaultDashboard": string
}
字段
defaultDashboard

string

可选。与应用关联的默认 Contact Center Insights 信息中心的资源名称。当用户前往应用的“监控”视图时,系统会显示此信息中心。

格式:projects/{project}/locations/{location}/dashboards/{dashboard}

PrebuiltAmbientNoise

预构建的环境噪音。

枚举
PREBUILT_AMBIENT_NOISE_UNSPECIFIED 未指定。
RETAIL_STORE 零售店的环境噪音。
CONVENTION_HALL 会议厅的环境噪音。
OUTDOOR 街道的环境噪音。

WarningType

处理语音样本期间遇到的警告类型。

枚举
WARNING_TYPE_UNSPECIFIED 未指定的警告类型。
LOW_AUDIO_LEVEL 语音样本的音频音量过低(例如,RMS 振幅过低)。

VoiceInstructionMode

语音样本的指令模式。

枚举
VOICE_INSTRUCTION_MODE_UNSPECIFIED 未指定指令模式。默认值为 NO_INSTRUCTION。
NO_INSTRUCTION 将不使用任何语音指令。
GENERATE_INSTRUCTION AI 会根据音频样本自动生成语音指令。
CUSTOM_INSTRUCTION 用户提供的自定义语音指令。

ErrorHandlingStrategy

定义错误处理策略。

枚举
ERROR_HANDLING_STRATEGY_UNSPECIFIED 未指明的错误处理策略。
NONE 未启用任何特定处理。
FALLBACK_RESPONSE 如果发生系统错误(例如 LLM 错误),系统会向用户返回后备消息。
END_SESSION 如果发生系统错误(例如 LLM 错误),系统会发出 EndSession 信号。

ThinkingLevel

模型的思考水平配置。

枚举
THINKING_LEVEL_UNSPECIFIED 未指定思考等级。
DEFAULT 默认思考等级。
LOW 思考等级:低。
MEDIUM 中度思考等级。
HIGH 高思考等级。

ToolExecutionMode

定义代理同时选择多个工具时的工具执行行为。

枚举
TOOL_EXECUTION_MODE_UNSPECIFIED 未指定工具执行模式。默认值为 PARALLEL。
PARALLEL 如果选择了多个工具,它们将使用相同的 ToolContext 并行执行。
SEQUENTIAL 如果选择了多个工具,系统会按顺序执行这些工具。下一个工具仅在上一个工具完成后才会执行,并且可以看到上一个工具更新后的 ToolContext。

SemanticSimilarityChannel

要使用的语义相似度渠道。

枚举
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED 未指定指标。默认值为 TEXT。
TEXT 使用文本语义相似度。
AUDIO 使用音频语义相似度。

ExtraToolCallBehavior

定义遇到额外工具调用时的行为。额外工具调用是指在执行过程中出现,但与黄金预期中的任何工具调用都不匹配的工具调用。

枚举
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED 未指定行为。默认值为 FAIL。
FAIL 如果遇到额外的工具调用,则评估失败。
ALLOW 允许额外的工具调用。

HallucinationMetricBehavior

幻觉指标行为。无论行为如何,系统始终会计算该指标。区别在于,停用后,该指标不会用于计算总体评估得分。

枚举
HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED 未指定幻觉指标行为。
DISABLED 停用幻觉指标。
ENABLED 启用幻觉指标。

类型

OpenAPI 数据类型。

枚举
TYPE_UNSPECIFIED 未指定类型。
STRING 字符串类型。
INTEGER 整数类型。
NUMBER 数字类型。
BOOLEAN 布尔值类型。
OBJECT 对象类型。
ARRAY 数组类型。

NullValue

表示 JSON null。

NullValue 是一个哨兵,使用仅有一个值的枚举来表示 Value 类型联合的 null 值。

NullValue 类型的字段如果包含 0 以外的任何值,则会被视为无效。大多数 ProtoJSON 序列化器都会发出一个 Value,其中 null_value 设置为 JSON null,而不管整数值如何,因此会往返于 0 值。

枚举
NULL_VALUE Null 值。

类型

引擎的类型。请参阅 https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/SolutionType 和 https://cloud.google.com/generative-ai-app-builder/docs/create-datastore-ingest 上的文档。

枚举
TYPE_UNSPECIFIED 未指定引擎类型。
ENGINE_TYPE_CHAT Chat 引擎类型。应用的 SOLUTION_TYPE_CHAT 引擎。添加到应用的所有连接器数据存储区都将添加到此引擎。

ChannelType

渠道配置文件的类型。

枚举
UNKNOWN 未知渠道类型。
WEB_UI Web 界面渠道。
API API 渠道。
TWILIO Twilio 渠道。
GOOGLE_TELEPHONY_PLATFORM Google Telephony Platform 渠道。
CONTACT_CENTER_AS_A_SERVICE Contact Center as a Service (CCaaS) 渠道。
CONTACT_CENTER_AS_A_SERVICE_CHAT Contact Center as a Service (CCaaS Chat) 渠道。
FIVE9 Five9 渠道。
CONTACT_CENTER_INTEGRATION 第三方联络中心集成渠道。
WHATSAPP WhatsApp 渠道。
INSTAGRAM Instagram 渠道。

角色

频道的形象。

枚举
UNKNOWN 未知角色。
CONCISE 智能体给出的回答简明扼要
CHATTY 代理会提供更多背景信息、说明和详细信息

模态

Web widget 的模态。

枚举
MODALITY_UNSPECIFIED 未知模态。
CHAT_AND_VOICE 该 widget 支持聊天和语音输入。
VOICE_ONLY 微件仅支持语音输入。
CHAT_ONLY 微件仅支持聊天输入。
CHAT_VOICE_AND_VIDEO 微件支持聊天、语音和视频输入。

主题

网页微件的主题。

枚举
THEME_UNSPECIFIED 未知主题。
LIGHT 浅色主题。
DARK 深色主题。

输出架构

此资源表示由网络 API 调用引发的长时间运行的操作。

操作

JSON 表示法
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
字段
name

string

由服务器分配的名称,该名称仅在最初返回它的那项服务中是唯一的。如果您使用默认 HTTP 映射,则 name 应是以 operations/{unique_id} 结尾的资源名称。

metadata

object

与操作关联的服务专属元数据。它通常包含进度信息和常见元数据(如创建时间)。一些服务可能不会提供此类元数据。任何返回长时间运行的操作的方法都应记录元数据类型(如果有的话)。

此对象可以包含任意类型的字段。附加字段 "@type" 包含用于标示相应类型的 URI。示例:{ "id": 1234, "@type": "types.example.com/standard/id" }。

done

boolean

如果值为 false,则表示操作仍在进行中。如果为 true,则表示操作已完成,其结果不是 error 就是 response。

联合字段 result。操作结果,可以是 error,也可以是有效的 response。如果 done == false,则既不会设置 error,也不会设置 response。如果 done == true,则只能设置 error 或 response 中的一项。部分服务可能不会提供结果。result 只能是下列其中一项:
error

object (Status)

操作失败或被取消时表示有错误发生的结果。

response

object

操作的常规成功响应。如果原始方法在成功时不返回任何数据(如 Delete),则响应为 google.protobuf.Empty。如果原始方法为标准 Get/Create/Update 方法,则响应应该为资源。对于其他方法,响应类型应为 XxxResponse,其中 Xxx 是原始方法的名称。例如,如果原始方法名称为 TakeSnapshot(),则推断的响应类型为 TakeSnapshotResponse。

此对象可以包含任意类型的字段。附加字段 "@type" 包含用于标示相应类型的 URI。示例:{ "id": 1234, "@type": "types.example.com/standard/id" }。

不限

JSON 表示法
{
  "typeUrl": string,
  "value": string
}
字段
typeUrl

string

使用 URI 引用标识序列化 Protobuf 消息的类型,该引用由以斜杠结尾的前缀和完全限定的类型名称组成。

示例:type.googleapis.com/google.protobuf.StringValue

此字符串必须至少包含一个 / 字符,并且最后一个 / 之后的内容必须是规范形式的类型的完全限定名称,不带前导点。请勿在这些 URI 引用上写入 scheme,以免客户端尝试与其联系。

前缀是任意的,Protobuf 实现应直接剥离最后一个 / 之前的所有内容(包括该),以识别类型。type.googleapis.com/ 是某些旧版实现所需的常见默认前缀。此前缀并不表示类型的来源,并且包含该前缀的 URI 不会响应任何请求。

所有类型网址字符串都必须是合法的 URI 引用,并具有额外的限制(对于文本格式),即引用的内容只能包含字母数字字符、百分比编码转义符以及以下集合中的字符(不包括外部反引号):/-.~_!$&()*+,;=。尽管我们允许百分比编码,但实现不应将其取消转义,以免与现有解析器混淆。例如,type.googleapis.com%2FFoo 应被拒绝。

在 Any 的原始设计中,曾考虑过在这些类型网址上启动类型解析服务的可能性,但 Protobuf 从未实现过这种服务,并且认为与这些网址联系存在问题,可能存在安全隐患。请勿尝试联系类型网址。

value

string (bytes format)

包含 type_url 所描述类型的 Protobuf 序列化。

使用 base64 编码的字符串。

状态

JSON 表示法
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
字段
code

integer

状态代码,应为 google.rpc.Code 的枚举值。

message

string

面向开发者的错误消息(应采用英语)。任何向用户显示的错误消息都应进行本地化并通过 google.rpc.Status.details 字段发送,或者由客户端进行本地化。

details[]

object

包含错误详细信息的消息列表。有一组通用的消息类型可供 API 使用。

可以包含任意类型字段的对象。附加字段 "@type" 包含用于标示相应类型的 URI。示例:{ "id": 1234, "@type": "types.example.com/standard/id" }。

工具注释

工具注解会发送到 MCP 客户端,用于描述给定工具的基本风险。大多数客户端会将这些提示视为不可信,但可用于决定何时向用户发送确认提示。

除了标题字符串之外,还定义了以下布尔值提示:

  • readOnlyHint:如果为 true,则该工具不会修改其环境。默认值:false。
  • destructiveHint:如果为 true,则该工具可以执行破坏性操作。如果为 false,则该工具只能执行添加操作。默认值:true。
  • idempotentHint:如果为 true,则使用相同参数重复调用该工具不会对其环境产生额外影响。默认值:false。
  • openWorldHint:如果为 true,则该工具可以与外部实体的“开放世界”进行交互。如果为 false,则该工具只能与内部实体交互。例如,网页搜索工具是开放世界,而记忆工具不是开放世界。

破坏性提示:✅ | 幂等性提示:❌ | 只读提示:❌ | 开放世界提示:❌