MCP Tools Reference: ces.googleapis.com

Ferramenta: get_evaluation_run

Recebe detalhes da execução de avaliação especificada.

O exemplo de código a seguir mostra como usar curl para chamar a ferramenta MCP get_evaluation_run.

Solicitação 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": "get_evaluation_run",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Mensagem de solicitação para EvaluationService.GetEvaluationRun.

GetEvaluationRunRequest

Representação JSON
{
  "name": string
}
Campos
name

string

Obrigatório. O nome do recurso da execução de avaliação a ser recuperada.

Esquema de saída

Uma execução de avaliação representa todos os resultados de uma execução de avaliação.

EvaluationRun

Representação JSON
{
  "name": string,
  "displayName": string,
  "evaluationResults": [
    string
  ],
  "createTime": string,
  "initiatedBy": string,
  "appVersion": string,
  "appVersionDisplayName": string,
  "changelog": string,
  "changelogCreateTime": string,
  "evaluations": [
    string
  ],
  "evaluationDataset": string,
  "evaluationType": enum (EvaluationType),
  "state": enum (EvaluationRunState),
  "progress": {
    object (Progress)
  },
  "config": {
    object (EvaluationConfig)
  },
  "error": {
    object (Status)
  },
  "errorInfo": {
    object (EvaluationErrorInfo)
  },
  "evaluationRunSummaries": {
    string: {
      object (EvaluationRunSummary)
    },
    ...
  },
  "latencyReport": {
    object (LatencyReport)
  },
  "runCount": integer,
  "personaRunConfigs": [
    {
      object (PersonaRunConfig)
    }
  ],
  "optimizationConfig": {
    object (OptimizationConfig)
  },
  "scheduledEvaluationRun": string,
  "goldenRunMethod": enum (GoldenRunMethod),
  "operation": string
}
Campos
name

string

Identificador. O identificador exclusivo da execução da avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationRuns/{evaluationRun}

displayName

string

Opcional. Nome de exibição definido pelo usuário da execução da avaliação. Padrão: " run - ".

evaluationResults[]

string

Apenas saída. Os resultados da avaliação que fazem parte desta execução. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}/results/{result}

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a execução da avaliação foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

initiatedBy

string

Apenas saída. O usuário que iniciou a execução da avaliação.

appVersion

string

Apenas saída. A versão do app a ser avaliada. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

appVersionDisplayName

string

Apenas saída. O nome de exibição do app_version em que a avaliação foi executada.

changelog

string

Apenas saída. O changelog da versão do app em que a avaliação foi executada. Isso é preenchido se o usuário executar a avaliação na versão mais recente/rascunho.

changelogCreateTime

string (Timestamp format)

Apenas saída. O horário de criação do changelog da versão do app em que a avaliação foi executada. Isso é preenchido se o usuário executar a avaliação na versão mais recente/rascunho.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

evaluations[]

string

Apenas saída. As avaliações que fazem parte desta execução. A lista pode conter avaliações de qualquer tipo. Esse campo é mutuamente exclusivo com evaluation_dataset. Formato: projects/{project}/locations/{location}/apps/{app}/evaluations/{evaluation}

evaluationDataset

string

Apenas saída. O conjunto de dados de avaliação associado a esta execução. Esse campo é mutuamente exclusivo com evaluations. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

evaluationType

enum (EvaluationType)

Apenas saída. O tipo das avaliações nesta execução.

state

enum (EvaluationRunState)

Apenas saída. O estado da execução da avaliação.

progress

object (Progress)

Apenas saída. O progresso da execução da avaliação.

config

object (EvaluationConfig)

Apenas saída. A configuração usada na execução.

error
(deprecated)

object (Status)

Apenas saída. Descontinuado: use error_info. Erros encontrados durante a execução.

errorInfo

object (EvaluationErrorInfo)

Apenas saída. Informações de erro para a execução da avaliação.

evaluationRunSummaries

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

Apenas saída. Mapa do nome da avaliação para EvaluationRunSummary.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

latencyReport

object (LatencyReport)

Apenas saída. Relatório de latência da execução da avaliação.

runCount

integer

Apenas saída. O número de vezes que as avaliações na execução foram feitas.

personaRunConfigs[]

object (PersonaRunConfig)

Apenas saída. A configuração a ser usada para a execução por persona.

optimizationConfig

object (OptimizationConfig)

Opcional. Configuração para executar a etapa de otimização após a execução da avaliação. Se não estiver definido, a etapa de otimização não será executada.

scheduledEvaluationRun

string

Apenas saída. O nome do recurso da execução de avaliação programada que criou esta execução de avaliação. Esse campo só é definido se a execução da avaliação foi criada por uma execução programada. Formato: projects/{project}/locations/{location}/apps/{app}/scheduledEvaluationRuns/{scheduled_evaluation_run}

goldenRunMethod

enum (GoldenRunMethod)

Apenas saída. O método usado para executar a avaliação.

operation

string

Apenas saída. A operação que criou esta execução de avaliação. Formato: projects/{project}/locations/{location}/operations/{operation}

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999.

Progresso

Representação JSON
{
  "totalCount": integer,
  "failedCount": integer,
  "errorCount": integer,
  "completedCount": integer,
  "passedCount": integer,
  "cancelledCount": integer
}
Campos
totalCount

integer

Apenas saída. Número total de resultados de avaliação nesta execução.

failedCount

integer

Apenas saída. Número de resultados de avaliação concluídos com um resultado de FALHA. (EvaluationResult.execution_state é COMPLETED e EvaluationResult.evaluation_status é FAIL).

errorCount

integer

Apenas saída. Número de resultados de avaliação que não foram executados. (EvaluationResult.execution_state é ERROR).

completedCount

integer

Apenas saída. Número de resultados de avaliação concluídos. (EvaluationResult.execution_state é COMPLETED).

passedCount

integer

Apenas saída. Número de resultados de avaliação concluídos com um resultado de APROVADO. (EvaluationResult.execution_state é COMPLETED e EvaluationResult.evaluation_status é PASS).

cancelledCount

integer

Apenas saída. Número de resultados de avaliação cancelados. (EvaluationResult.execution_state é CANCELLED).

EvaluationConfig

Representação JSON
{
  "inputAudioConfig": {
    object (InputAudioConfig)
  },
  "outputAudioConfig": {
    object (OutputAudioConfig)
  },
  "evaluationChannel": enum (EvaluationChannel),
  "toolCallBehaviour": enum (EvaluationToolCallBehaviour)
}
Campos
inputAudioConfig

object (InputAudioConfig)

Opcional. Configuração para processar o áudio de entrada.

outputAudioConfig

object (OutputAudioConfig)

Opcional. Configuração para gerar o áudio de saída.

evaluationChannel

enum (EvaluationChannel)

Opcional. O canal a ser avaliado.

toolCallBehaviour

enum (EvaluationToolCallBehaviour)

Opcional. Especifica se a avaliação deve usar chamadas de ferramentas reais ou falsas.

InputAudioConfig

Representação JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer,
  "noiseSuppressionLevel": string
}
Campos
audioEncoding

enum (AudioEncoding)

Obrigatório. A codificação dos dados de áudio de entrada.

sampleRateHertz

integer

Obrigatório. A taxa de amostragem (em Hertz) dos dados de áudio de entrada.

noiseSuppressionLevel

string

Opcional. Se a supressão de ruído será ativada no áudio de entrada. Os valores disponíveis são "low", "moderate", "high", "very_high".

OutputAudioConfig

Representação JSON
{
  "audioEncoding": enum (AudioEncoding),
  "sampleRateHertz": integer
}
Campos
audioEncoding

enum (AudioEncoding)

Obrigatório. A codificação dos dados de áudio de saída.

sampleRateHertz

integer

Obrigatório. A taxa de amostragem (em Hertz) dos dados de áudio de saída.

Status

Representação JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

O código de status, que precisa ser um valor de enumeração de google.rpc.Code.

message

string

Uma mensagem de erro em inglês para o desenvolvedor. Qualquer mensagem de erro para o usuário precisa ser localizada e enviada no campo google.rpc.Status.details, ou localizada pelo cliente.

details[]

object

Uma lista de mensagens com os detalhes do erro. Há um conjunto comum de tipos de mensagens para as APIs usarem.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Qualquer

Representação JSON
{
  "typeUrl": string,
  "value": string
}
Campos
typeUrl

string

Identifica o tipo da mensagem Protobuf serializada com uma referência de URI que consiste em um prefixo que termina em uma barra e o nome do tipo totalmente qualificado.

Exemplo: type.googleapis.com/google.protobuf.StringValue

Essa string precisa conter pelo menos um caractere /, e o conteúdo após o último / precisa ser o nome totalmente qualificado do tipo na forma canônica, sem um ponto inicial. Não escreva um esquema nessas referências de URI para que os clientes não tentem entrar em contato com elas.

O prefixo é arbitrário, e as implementações do Protobuf devem remover tudo até o último /, inclusive, para identificar o tipo. type.googleapis.com/ é um prefixo padrão comum exigido por algumas implementações legadas. Esse prefixo não indica a origem do tipo, e não é esperado que os URIs que o contêm respondam a solicitações.

Todas as strings de URL de tipo precisam ser referências de URI válidas com a restrição adicional (para o formato de texto) de que o conteúdo da referência deve consistir apenas em caracteres alfanuméricos, escapes codificados por porcentagem e caracteres no seguinte conjunto (sem incluir as crases externas): /-.~_!$&()*+,;=. Embora permitamos codificações de porcentagem, as implementações não devem remover o escape delas para evitar confusão com analisadores atuais. Por exemplo, type.googleapis.com%2FFoo deve ser rejeitado.

No design original de Any, foi considerada a possibilidade de iniciar um serviço de resolução de tipos nesses URLs de tipo, mas o Protobuf nunca implementou um e considera o contato com esses URLs problemático e um possível problema de segurança. Não tente entrar em contato com URLs de tipo.

value

string (bytes format)

Contém uma serialização Protobuf do tipo descrito por type_url.

Uma string codificada em base64.

EvaluationErrorInfo

Representação JSON
{
  "errorType": enum (ErrorType),
  "errorMessage": string,
  "sessionId": string,
  "userFacingErrorMessage": string
}
Campos
errorType

enum (ErrorType)

Apenas saída. O tipo de erro.

errorMessage

string

Apenas saída. A mensagem de erro.

sessionId

string

Apenas saída. O ID da sessão da conversa que causou o erro.

userFacingErrorMessage

string

Apenas saída. A mensagem de erro voltada ao usuário.

EvaluationRunSummariesEntry

Representação JSON
{
  "key": string,
  "value": {
    object (EvaluationRunSummary)
  }
}
Campos
key

string

value

object (EvaluationRunSummary)

EvaluationRunSummary

Representação JSON
{
  "passedCount": integer,
  "failedCount": integer,
  "errorCount": integer
}
Campos
passedCount

integer

Apenas saída. Número de resultados aprovados para a avaliação associada nesta execução.

failedCount

integer

Apenas saída. Número de resultados com falha para a avaliação associada nesta execução.

errorCount

integer

Apenas saída. Número de resultados de erro para a avaliação associada nesta execução.

LatencyReport

Representação JSON
{
  "toolLatencies": [
    {
      object (ToolLatency)
    }
  ],
  "callbackLatencies": [
    {
      object (CallbackLatency)
    }
  ],
  "guardrailLatencies": [
    {
      object (GuardrailLatency)
    }
  ],
  "llmCallLatencies": [
    {
      object (LlmCallLatency)
    }
  ],
  "sessionCount": integer
}
Campos
toolLatencies[]

object (ToolLatency)

Apenas saída. Lista não ordenada. Métricas de latência para cada ferramenta.

callbackLatencies[]

object (CallbackLatency)

Apenas saída. Lista não ordenada. Métricas de latência para cada callback.

guardrailLatencies[]

object (GuardrailLatency)

Apenas saída. Lista não ordenada. Métricas de latência para cada proteção.

llmCallLatencies[]

object (LlmCallLatency)

Apenas saída. Lista não ordenada. Métricas de latência para cada chamada de LLM.

sessionCount

integer

Apenas saída. O número total de sessões consideradas no relatório de latência.

ToolLatency

Representação JSON
{
  "toolDisplayName": string,
  "latencyMetrics": {
    object (LatencyMetrics)
  },

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
toolDisplayName

string

Apenas saída. O nome de exibição da ferramenta.

latencyMetrics

object (LatencyMetrics)

Apenas saída. As métricas de latência da ferramenta.

Campo de união tool_identifier. O identificador da ferramenta. tool_identifier pode ser apenas de um dos tipos a seguir:
tool

string

Apenas saída. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}.

toolsetTool

object (ToolsetTool)

Apenas saída. O identificador da ferramenta do conjunto de ferramentas.

ToolsetTool

Representação JSON
{
  "toolset": string,
  "toolId": string
}
Campos
toolset

string

Obrigatório. O nome do recurso do conjunto de ferramentas de que essa ferramenta deriva. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolId

string

Opcional. O ID da ferramenta para filtrar as ferramentas e recuperar o esquema.

LatencyMetrics

Representação JSON
{
  "p50Latency": string,
  "p90Latency": string,
  "p99Latency": string,
  "callCount": integer
}
Campos
p50Latency

string (Duration format)

Apenas saída. A latência no 50º percentil.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

p90Latency

string (Duration format)

Apenas saída. A latência no 90º percentil.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

p99Latency

string (Duration format)

Apenas saída. A latência no 99º percentil.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

callCount

integer

Apenas saída. O número de vezes que o recurso foi chamado.

Duração

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos assinados do período. Precisa estar entre -315.576.000.000 e +315.576.000.000 (inclusive). Observação: esses limites são calculados da seguinte forma: 60 s/min * 60 min/h * 24 h/dia * 365,25 dias/ano * 10.000 anos

nanos

integer

Frações assinadas de um segundo com resolução de nanossegundos do período. Durações menores que um segundo são representadas com um campo 0 seconds e um campo nanos positivo ou negativo. Para durações de um segundo ou mais, um valor diferente de zero para o campo nanos precisa ter o mesmo sinal do campo seconds. Precisa estar entre -999.999.999 e +999.999.999 (inclusive).

CallbackLatency

Representação JSON
{
  "stage": string,
  "latencyMetrics": {
    object (LatencyMetrics)
  }
}
Campos
stage

string

Apenas saída. A fase do callback.

latencyMetrics

object (LatencyMetrics)

Apenas saída. As métricas de latência do callback.

GuardrailLatency

Representação JSON
{
  "guardrail": string,
  "guardrailDisplayName": string,
  "latencyMetrics": {
    object (LatencyMetrics)
  }
}
Campos
guardrail

string

Apenas saída. O nome da proteção. Formato: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}.

guardrailDisplayName

string

Apenas saída. O nome de exibição da proteção.

latencyMetrics

object (LatencyMetrics)

Apenas saída. As métricas de latência para o guardrail.

LlmCallLatency

Representação JSON
{
  "model": string,
  "latencyMetrics": {
    object (LatencyMetrics)
  }
}
Campos
model

string

Apenas saída. O nome do modelo.

latencyMetrics

object (LatencyMetrics)

Apenas saída. As métricas de latência da chamada de LLM.

PersonaRunConfig

Representação JSON
{
  "persona": string,
  "taskCount": integer
}
Campos
persona

string

Opcional. A persona a ser usada na avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationPersonas/{evaluationPersona}

taskCount

integer

Opcional. O número de tarefas a serem executadas para a persona.

OptimizationConfig

Representação JSON
{
  "generateLossReport": boolean,
  "assistantSession": string,
  "reportSummary": string,
  "shouldSuggestFix": boolean,
  "status": enum (OptimizationStatus),
  "errorMessage": string,
  "lossReport": {
    object
  }
}
Campos
generateLossReport

boolean

Opcional. Se um relatório de perda será gerado.

assistantSession

string

Apenas saída. A sessão do assistente a ser usada para a otimização com base nesta execução de avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/assistantSessions/{assistantSession}

reportSummary

string

Apenas saída. O resumo do relatório de perda.

shouldSuggestFix

boolean

Apenas saída. Se é necessário sugerir uma correção para as perdas.

status

enum (OptimizationStatus)

Apenas saída. O status da execução da otimização.

errorMessage

string

Apenas saída. A mensagem de erro se a execução da otimização falhar.

lossReport

object (Struct format)

Apenas saída. O relatório de perda gerado.

Struct

Representação JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

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

Mapa não ordenado de valores digitados dinamicamente.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representação JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

Valor

Representação 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.
}
Campos
Campo de união kind. O tipo de valor. kind pode ser apenas de um dos tipos a seguir:
nullValue

null

Representa um null JSON.

numberValue

number

Representa um número JSON. Não pode ser NaN, Infinity ou -Infinity, porque esses valores não são compatíveis com JSON. Além disso, não é possível representar valores Int64 grandes, já que o formato JSON geralmente não os aceita no tipo de número.

stringValue

string

Representa uma string JSON.

boolValue

boolean

Representa um booleano JSON (literal true ou false em JSON).

structValue

object (Struct format)

Representa um objeto JSON.

listValue

array (ListValue format)

Representa uma matriz JSON.

ListValue

Representação JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Campo repetido de valores digitados dinamicamente.

EvaluationType

O tipo das avaliações nesta execução. Outros valores podem ser adicionados no futuro.

Tipos enumerados
EVALUATION_TYPE_UNSPECIFIED O tipo de avaliação não foi especificado.
GOLDEN Avaliação de referência.
SCENARIO Avaliação de cenário.
MIXED Indica que a execução inclui uma combinação de avaliações de ouro e de cenário.

EvaluationRunState

O estado da execução da avaliação.

Tipos enumerados
EVALUATION_RUN_STATE_UNSPECIFIED O estado da execução da avaliação não foi especificado.
QUEUED Indica que a execução da avaliação está na fila.
RUNNING A execução da avaliação está em andamento.
COMPLETED A execução da avaliação foi concluída.
ERROR A execução da avaliação tem um erro.
CANCELLED A execução da avaliação foi cancelada.

AudioEncoding

"AudioEncoding" especifica o formato de codificação dos dados de áudio.

Tipos enumerados
AUDIO_ENCODING_UNSPECIFIED Codificação de áudio não especificada.
LINEAR16 Codificação de áudio PCM linear de 16 bits.
MULAW Amostras de 8 bits resultantes do compand de amostras de áudio de 14 bits em que foi usado G.711 PCMU/mu-law.
ALAW Amostras de 8 bits que compactam amostras de áudio de 14 bits usando G.711 PCMU/A-law.

EvaluationChannel

O canal a ser avaliado.

Tipos enumerados
EVALUATION_CHANNEL_UNSPECIFIED Canal de avaliação não especificado.
TEXT Canal de avaliação somente de texto.
AUDIO Canal de avaliação de áudio.

EvaluationToolCallBehaviour

Configura o comportamento de chamada de função para execuções de avaliação.

Tipos enumerados
EVALUATION_TOOL_CALL_BEHAVIOUR_UNSPECIFIED Comportamento de chamada de ferramenta não especificado. O padrão será chamadas de função reais.
REAL Use chamadas de função reais.
FAKE Usar chamadas de ferramentas falsas.

ErrorType

O tipo de erro

Tipos enumerados
ERROR_TYPE_UNSPECIFIED Tipo de erro não especificado.
RUNTIME_FAILURE Falha durante a execução do ambiente de execução.
CONVERSATION_RETRIEVAL_FAILURE Falha ao recuperar a conversa do ambiente de execução do CES.
METRIC_CALCULATION_FAILURE Falha ao calcular uma métrica / resultado.
EVALUATION_UPDATE_FAILURE Falha ao atualizar a avaliação.
QUOTA_EXHAUSTED A cota acabou.
USER_SIMULATION_FAILURE Falha durante a simulação do usuário.

OptimizationStatus

O status da execução da otimização.

Tipos enumerados
OPTIMIZATION_STATUS_UNSPECIFIED O status da otimização não foi especificado.
RUNNING A otimização está em execução.
COMPLETED A otimização foi concluída.
ERROR A otimização falhou devido a um erro interno.

NullValue

Representa um null JSON.

NullValue é um sentinela que usa uma enumeração com apenas um valor para representar o valor nulo da união de tipos Value.

Um campo do tipo NullValue com qualquer valor diferente de 0 é considerado inválido. A maioria dos serializadores ProtoJSON vai emitir um Value com um null_value definido como um null JSON, independente do valor inteiro, e, portanto, fará uma viagem de ida e volta para um valor 0.

Tipos enumerados
NULL_VALUE Valor nulo.

GoldenRunMethod

O método usado para executar a avaliação.

Tipos enumerados
GOLDEN_RUN_METHOD_UNSPECIFIED O método de execução não foi especificado.
STABLE Execute a avaliação como uma repetição estável, em que cada turno é uma sessão única com os turnos esperados anteriores injetados como contexto.
NAIVE Execute a avaliação como uma repetição simples, em que a execução é uma única sessão sem contexto injetado.

Anotações de ferramentas

As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.

Além da string de título, as seguintes dicas booleanas são definidas da seguinte maneira:

  • readOnlyHint: se for "true", a ferramenta não vai modificar o ambiente. Padrão: false.
  • destructiveHint: se for "true", a ferramenta poderá realizar ações destrutivas. Se for "false", a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.
  • idempotentHint: se for "true", chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente dela. Padrão: false.
  • openWorldHint: se for "true", a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for "false", a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.

Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌