MCP Tools Reference: ces.googleapis.com

Ferramenta: create_evaluation_dataset

Cria um conjunto de dados de avaliação.

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

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

Esquema de entrada

Mensagem de solicitação para EvaluationService.CreateEvaluationDataset.

CreateEvaluationDatasetRequest

Representação JSON
{
  "parent": string,
  "evaluationDatasetId": string,
  "evaluationDataset": {
    object (EvaluationDataset)
  }
}
Campos
parent

string

Obrigatório. O app para criar a avaliação. Formato: projects/{project}/locations/{location}/apps/{app}

evaluationDatasetId

string

Opcional. O ID a ser usado no conjunto de dados de avaliação, que se tornará o componente final do nome do recurso do conjunto de dados de avaliação. Se não for fornecido, um ID exclusivo será atribuído automaticamente à avaliação.

evaluationDataset

object (EvaluationDataset)

Obrigatório. O conjunto de dados de avaliação a ser criado.

EvaluationDataset

Representação JSON
{
  "name": string,
  "displayName": string,
  "evaluations": [
    string
  ],
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "createdBy": string,
  "lastUpdatedBy": string,
  "aggregatedMetrics": {
    object (AggregatedMetrics)
  }
}
Campos
name

string

Identificador. O identificador exclusivo deste conjunto de dados de avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

displayName

string

Obrigatório. Nome de exibição do conjunto de dados de avaliação definido pelo usuário. Exclusivo em um app.

evaluations[]

string

Opcional. Avaliações incluídas neste conjunto de dados.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da criação do conjunto de dados de avaliação.

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".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do conjunto de dados de avaliação.

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".

etag

string

Apenas saída. Etag usada para garantir que o objeto não mudou durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

createdBy

string

Apenas saída. O usuário que criou o conjunto de dados de avaliação.

lastUpdatedBy

string

Apenas saída. O usuário que atualizou o conjunto de dados de avaliação por último.

aggregatedMetrics

object (AggregatedMetrics)

Apenas saída. As métricas agregadas desse conjunto de dados de avaliação em todas as execuções.

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 (inclusive).

AggregatedMetrics

Representação JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campos
metricsByAppVersion[]

object (MetricsByAppVersion)

Apenas saída. Métricas agregadas, agrupadas por ID da versão do app.

MetricsByAppVersion

Representação JSON
{
  "appVersionId": string,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ],
  "passCount": integer,
  "failCount": integer,
  "metricsByTurn": [
    {
      object (MetricsByTurn)
    }
  ]
}
Campos
appVersionId

string

Apenas saída. O ID da versão do app.

toolMetrics[]

object (ToolMetrics)

Apenas saída. Métricas de cada ferramenta nesta versão do app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Apenas saída. Métricas de similaridade semântica nesta versão do app.

hallucinationMetrics[]

object (HallucinationMetrics)

Apenas saída. Métricas de alucinação nesta versão do app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Apenas saída. Métricas para latência de chamada de ferramenta nesta versão do app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Apenas saída. Métricas para latência de turno nesta versão do app.

passCount

integer

Apenas saída. O número de vezes que a avaliação foi aprovada.

failCount

integer

Apenas saída. O número de vezes que a avaliação falhou.

metricsByTurn[]

object (MetricsByTurn)

Apenas saída. Métricas agregadas por turno nessa versão do app.

ToolMetrics

Representação JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campos
tool

string

Apenas saída. O nome da ferramenta.

passCount

integer

Apenas saída. O número de vezes que a ferramenta foi aprovada.

failCount

integer

Apenas saída. O número de vezes que a ferramenta falhou.

SemanticSimilarityMetrics

Representação JSON
{
  "score": number
}
Campos
score

number

Apenas saída. A pontuação média de similaridade semântica (0 a 4).

HallucinationMetrics

Representação JSON
{
  "score": number
}
Campos
score

number

Apenas saída. A pontuação média de alucinação (de 0 a 1).

ToolCallLatencyMetrics

Representação JSON
{
  "tool": string,
  "averageLatency": string
}
Campos
tool

string

Apenas saída. O nome da ferramenta.

averageLatency

string (Duration format)

Apenas saída. A latência média das chamadas de ferramenta.

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

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 com base em: 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 seconds 0 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).

TurnLatencyMetrics

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

string (Duration format)

Apenas saída. A latência média dos turnos.

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

MetricsByTurn

Representação JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campos
turnIndex

integer

Apenas saída. O índice da vez (com base em 0).

toolMetrics[]

object (ToolMetrics)

Apenas saída. Métricas para cada ferramenta nesta rodada.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Apenas saída. Métricas de similaridade semântica neste turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Apenas saída. Métricas de alucinação neste turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Apenas saída. Métricas de latência de chamada de ferramenta neste turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Apenas saída. Métricas de latência do turno.

Esquema de saída

Um conjunto de dados de avaliação representa um conjunto de avaliações agrupadas com base em tags compartilhadas.

EvaluationDataset

Representação JSON
{
  "name": string,
  "displayName": string,
  "evaluations": [
    string
  ],
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "createdBy": string,
  "lastUpdatedBy": string,
  "aggregatedMetrics": {
    object (AggregatedMetrics)
  }
}
Campos
name

string

Identificador. O identificador exclusivo deste conjunto de dados de avaliação. Formato: projects/{project}/locations/{location}/apps/{app}/evaluationDatasets/{evaluationDataset}

displayName

string

Obrigatório. Nome de exibição do conjunto de dados de avaliação definido pelo usuário. Exclusivo em um app.

evaluations[]

string

Opcional. Avaliações incluídas neste conjunto de dados.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da criação do conjunto de dados de avaliação.

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".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do conjunto de dados de avaliação.

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".

etag

string

Apenas saída. Etag usada para garantir que o objeto não mudou durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

createdBy

string

Apenas saída. O usuário que criou o conjunto de dados de avaliação.

lastUpdatedBy

string

Apenas saída. O usuário que atualizou o conjunto de dados de avaliação por último.

aggregatedMetrics

object (AggregatedMetrics)

Apenas saída. As métricas agregadas desse conjunto de dados de avaliação em todas as execuções.

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 (inclusive).

AggregatedMetrics

Representação JSON
{
  "metricsByAppVersion": [
    {
      object (MetricsByAppVersion)
    }
  ]
}
Campos
metricsByAppVersion[]

object (MetricsByAppVersion)

Apenas saída. Métricas agregadas, agrupadas por ID da versão do app.

MetricsByAppVersion

Representação JSON
{
  "appVersionId": string,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ],
  "passCount": integer,
  "failCount": integer,
  "metricsByTurn": [
    {
      object (MetricsByTurn)
    }
  ]
}
Campos
appVersionId

string

Apenas saída. O ID da versão do app.

toolMetrics[]

object (ToolMetrics)

Apenas saída. Métricas de cada ferramenta nesta versão do app.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Apenas saída. Métricas de similaridade semântica nesta versão do app.

hallucinationMetrics[]

object (HallucinationMetrics)

Apenas saída. Métricas de alucinação nesta versão do app.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Apenas saída. Métricas para latência de chamada de ferramenta nesta versão do app.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Apenas saída. Métricas para latência de turno nesta versão do app.

passCount

integer

Apenas saída. O número de vezes que a avaliação foi aprovada.

failCount

integer

Apenas saída. O número de vezes que a avaliação falhou.

metricsByTurn[]

object (MetricsByTurn)

Apenas saída. Métricas agregadas por turno nessa versão do app.

ToolMetrics

Representação JSON
{
  "tool": string,
  "passCount": integer,
  "failCount": integer
}
Campos
tool

string

Apenas saída. O nome da ferramenta.

passCount

integer

Apenas saída. O número de vezes que a ferramenta foi aprovada.

failCount

integer

Apenas saída. O número de vezes que a ferramenta falhou.

SemanticSimilarityMetrics

Representação JSON
{
  "score": number
}
Campos
score

number

Apenas saída. A pontuação média de similaridade semântica (0 a 4).

HallucinationMetrics

Representação JSON
{
  "score": number
}
Campos
score

number

Apenas saída. A pontuação média de alucinação (de 0 a 1).

ToolCallLatencyMetrics

Representação JSON
{
  "tool": string,
  "averageLatency": string
}
Campos
tool

string

Apenas saída. O nome da ferramenta.

averageLatency

string (Duration format)

Apenas saída. A latência média das chamadas de ferramenta.

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

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 com base em: 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 seconds 0 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).

TurnLatencyMetrics

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

string (Duration format)

Apenas saída. A latência média dos turnos.

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

MetricsByTurn

Representação JSON
{
  "turnIndex": integer,
  "toolMetrics": [
    {
      object (ToolMetrics)
    }
  ],
  "semanticSimilarityMetrics": [
    {
      object (SemanticSimilarityMetrics)
    }
  ],
  "hallucinationMetrics": [
    {
      object (HallucinationMetrics)
    }
  ],
  "toolCallLatencyMetrics": [
    {
      object (ToolCallLatencyMetrics)
    }
  ],
  "turnLatencyMetrics": [
    {
      object (TurnLatencyMetrics)
    }
  ]
}
Campos
turnIndex

integer

Apenas saída. O índice da vez (com base em 0).

toolMetrics[]

object (ToolMetrics)

Apenas saída. Métricas para cada ferramenta nesta rodada.

semanticSimilarityMetrics[]

object (SemanticSimilarityMetrics)

Apenas saída. Métricas de similaridade semântica neste turno.

hallucinationMetrics[]

object (HallucinationMetrics)

Apenas saída. Métricas de alucinação neste turno.

toolCallLatencyMetrics[]

object (ToolCallLatencyMetrics)

Apenas saída. Métricas de latência de chamada de ferramenta neste turno.

turnLatencyMetrics[]

object (TurnLatencyMetrics)

Apenas saída. Métricas de latência do turno.

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 de adição. 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: ❌