MCP Tools Reference: ces.googleapis.com

Tool: list_tools

Listet Tools in der angegebenen App auf.

Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool list_tools aufrufen.

Curl-Anfrage
                  
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_tools",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Eingabeschema

Anfragenachricht für AgentService.ListTools.

ListToolsRequest

JSON-Darstellung
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string,
  "orderBy": string
}
Felder
parent

string

Erforderlich. Der Ressourcenname der App, aus der Tools aufgelistet werden sollen.

pageSize

integer

Optional. Angeforderte Seitengröße. Der Server gibt möglicherweise weniger Elemente als angefordert zurück. Wenn kein Wert angegeben wurde, wählt der Server einen geeigneten Standardwert aus.

pageToken

string

Optional. Der Wert next_page_token wurde gegebenenfalls von einem vorherigen AgentService.ListTools-Listenaufruf zurückgegeben.

filter

string

Optional. Filter, der beim Auflisten der Tools angewendet werden soll. Verwenden Sie „include_system_tools=true“, um Systemtools in die Antwort aufzunehmen. Weitere Informationen finden Sie unter https://google.aip.dev/160.

orderBy

string

Optional. Feld, nach dem sortiert werden soll. Nur „name“ und „create_time“ werden unterstützt. Weitere Informationen finden Sie unter https://google.aip.dev/132#ordering.

Ausgabeschema

Antwortnachricht für AgentService.ListTools.

ListToolsResponse

JSON-Darstellung
{
  "tools": [
    {
      object (Tool)
    }
  ],
  "nextPageToken": string
}
Felder
tools[]

object (Tool)

Die Liste der Tools.

nextPageToken

string

Ein Token, das als ListToolsRequest.page_token gesendet werden kann, um die nächste Seite abzurufen. Wenn dieses Feld fehlt, gibt es keine nachfolgenden Seiten.

Tool

JSON-Darstellung
{
  "name": string,
  "displayName": string,
  "executionType": enum (ExecutionType),
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "generatedSummary": string,
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field tool_type can be only one of the following:
  "clientFunction": {
    object (ClientFunction)
  },
  "openApiTool": {
    object (OpenApiTool)
  },
  "googleSearchTool": {
    object (GoogleSearchTool)
  },
  "connectorTool": {
    object (ConnectorTool)
  },
  "dataStoreTool": {
    object (DataStoreTool)
  },
  "pythonFunction": {
    object (PythonFunction)
  },
  "mcpTool": {
    object (McpTool)
  },
  "fileSearchTool": {
    object (FileSearchTool)
  },
  "systemTool": {
    object (SystemTool)
  },
  "widgetTool": {
    object (WidgetTool)
  }
  // End of list of possible types for union field tool_type.
}
Felder
name

string

ID. Die eindeutige Kennung des Tools. Format: - projects/{project}/locations/{location}/apps/{app}/tools/{tool} für

projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool} für Tools, die aus einem Toolset abgerufen werden. Diese Tools sind dynamisch und geben nur Ausgaben zurück. Sie können nicht direkt referenziert werden, wenn ein Tool erwartet wird.

displayName

string

Nur Ausgabe. Der Anzeigename des Tools, der auf dem Typ des Tools basiert. Der Anzeigename einer [ClientFunction][Tool.ClientFunction] wird beispielsweise aus der zugehörigen name-Eigenschaft abgeleitet.

executionType

enum (ExecutionType)

Optional. Der Ausführungstyp des Tools.

createTime

string (Timestamp format)

Nur Ausgabe. Zeitstempel für die Erstellung des Tools.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

Nur Ausgabe. Zeitstempel der letzten Aktualisierung des Tools.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

etag

string

Etag, das verwendet wird, um sicherzustellen, dass sich das Objekt während eines Read-Modify-Write-Vorgangs nicht geändert hat. Wenn das ETag leer ist, werden alle gleichzeitigen Änderungen durch das Update überschrieben.

generatedSummary

string

Nur Ausgabe. Wenn das Tool vom LLM-Assistenten generiert wird, enthält dieses Feld eine beschreibende Zusammenfassung der Generierung.

toolFakeConfig

object (ToolFakeConfig)

Optional. Konfiguration für das Verhalten von Tools im Fälschungsmodus.

Union-Feld tool_type. Der Typ des Tools. Für tool_type ist nur einer der folgenden Werte zulässig:
clientFunction

object (ClientFunction)

Optional. Die Clientfunktion.

openApiTool

object (OpenApiTool)

Optional. Das Tool für offene APIs.

googleSearchTool

object (GoogleSearchTool)

Optional. Das Google-Suchtool.

connectorTool

object (ConnectorTool)

Optional. Das Integration Connector-Tool

dataStoreTool

object (DataStoreTool)

Optional. Das Datenspeichertool.

pythonFunction

object (PythonFunction)

Optional. Das Python-Funktionstool.

mcpTool

object (McpTool)

Optional. Das MCP-Tool Ein MCP-Tool kann nicht direkt erstellt oder aktualisiert werden, sondern wird vom MCP-Toolset verwaltet.

fileSearchTool

object (FileSearchTool)

Optional. Das Dateisuchtool.

systemTool

object (SystemTool)

Optional. Das Systemtool

widgetTool

object (WidgetTool)

Optional. Das Widget-Tool

ClientFunction

JSON-Darstellung
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  },
  "response": {
    object (Schema)
  }
}
Felder
name

string

Erforderlich. Der Name der Funktion.

description

string

Optional. Die Funktionsbeschreibung.

parameters

object (Schema)

Optional. Das Schema der Funktionsparameter.

response

object (Schema)

Optional. Das Schema der Funktionsantwort.

Schema

JSON-Darstellung
{
  "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.
}
Felder
type

enum (Type)

Erforderlich. Der Typ der Daten.

properties

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

Optional. Attribute von Type.OBJECT.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Optional. Erforderliche Eigenschaften von Type.OBJECT.

description

string

Optional. Die Beschreibung der Daten.

items

object (Schema)

Optional. Schema der Elemente von Type.ARRAY.

nullable

boolean

Optional. Gibt an, ob der Wert null sein darf.

uniqueItems

boolean

Optional. Geben Sie an, dass die Elemente im Array eindeutig sein müssen. Gilt nur für TYPE.ARRAY.

prefixItems[]

object (Schema)

Optional. Schemas der ersten Elemente von Type.ARRAY.

additionalProperties

object (Schema)

Optional. Kann entweder ein boolescher Wert oder ein Objekt sein. Steuert das Vorhandensein zusätzlicher Attribute.

anyOf[]

object (Schema)

Optional. Der Wert sollte anhand eines oder mehrerer der Unterschemas in der Liste validiert werden.

enum[]

string

Optional. Mögliche Werte des Elements des einfachen Typs im enum-Format. Beispiele: 1. Wir können die Richtung so definieren : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Wir können die Wohnungsnummer so definieren : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Optional. Standardwert der Daten.

ref

string

Optional. Ermöglicht indirekte Verweise zwischen Schemaknoten. Der Wert sollte ein gültiger Verweis auf ein untergeordnetes Element des Stamm-defs sein.

Das folgende Schema definiert beispielsweise eine Referenz auf einen Schemaknoten mit dem Namen „Pet“:

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

Der Wert der Property „pet“ ist ein Verweis auf den Schemaknoten mit dem Namen „Pet“. Weitere Informationen finden Sie unter https://json-schema.org/understanding-json-schema/structuring.

defs

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

Optional. Eine Karte mit Definitionen, die von ref verwendet werden. Nur im Stammverzeichnis des Schemas zulässig.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Optional. Der Titel des Schemas.

minItems

string (int64 format)

Optional. Mindestanzahl der Elemente für Type.ARRAY.

maxItems

string (int64 format)

Optional. Maximale Anzahl der Elemente für Type.ARRAY.

Union-Feld _minimum.

Für _minimum ist nur einer der folgenden Werte zulässig:

minimum

number

Optional. Mindestwert für Type.INTEGER und Type.NUMBER.

Union-Feld _maximum.

Für _maximum ist nur einer der folgenden Werte zulässig:

maximum

number

Optional. Maximaler Wert für Type.INTEGER und Type.NUMBER.

PropertiesEntry

JSON-Darstellung
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Felder
key

string

value

object (Schema)

Wert

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld kind. Die Art des Werts. Für kind ist nur einer der folgenden Werte zulässig:
nullValue

null

Stellt einen Nullwert dar.

numberValue

number

Stellt einen Double-Wert dar.

stringValue

string

Stellt einen Stringwert dar.

boolValue

boolean

Stellt einen booleschen Wert dar.

structValue

object (Struct format)

Stellt einen strukturierten Wert dar.

listValue

array (ListValue format)

Stellt eine wiederholte Value dar.

Struct

JSON-Darstellung
{
  "fields": {
    string: value,
    ...
  }
}
Felder
fields

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

Ungeordnete Zuordnung von dynamisch typisierten Werten.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

JSON-Darstellung
{
  "key": string,
  "value": value
}
Felder
key

string

value

value (Value format)

ListValue

JSON-Darstellung
{
  "values": [
    value
  ]
}
Felder
values[]

value (Value format)

Wiederholtes Feld mit dynamisch typisierten Werten.

DefsEntry

JSON-Darstellung
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Felder
key

string

value

object (Schema)

OpenApiTool

JSON-Darstellung
{
  "openApiSchema": string,
  "name": string,
  "description": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Felder
openApiSchema

string

Erforderlich. Das OpenAPI-Schema im JSON- oder YAML-Format.

name

string

Optional. Der Name des Tools. Wenn nicht angegeben, wird der Name des Tools aus dem OpenAPI-Schema abgeleitet, aus operation.operationId.

description

string

Optional. Die Beschreibung des Tools. Wenn sie nicht angegeben ist, wird die Beschreibung des Tools aus dem OpenAPI-Schema, aus operation.description oder aus operation.summary abgeleitet.

apiAuthentication

object (ApiAuthentication)

Optional. Von der API benötigte Authentifizierungsinformationen.

tlsConfig

object (TlsConfig)

Optional. Die TLS-Konfiguration. Enthält die benutzerdefinierten Serverzertifikate, denen der Client vertrauen soll.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Optional. Service Directory-Konfiguration.

ignoreUnknownFields

boolean

Optional. Bei „true“ ignoriert der Agent unbekannte Felder in der API-Antwort.

url

string

Optional. Die Server-URL des Open API-Schemas. Dieses Feld wird in Tools in den Umgebungsabhängigkeiten während des Exportvorgangs nur festgelegt, wenn das Schema eine Server-URL enthält. Wenn diese URL während des Importvorgangs in den Umgebungsabhängigkeiten vorhanden ist und das Schema den Platzhalter $env_var enthält, wird der Platzhalter im Schema ersetzt.

ApiAuthentication

JSON-Darstellung
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Felder
Union-Feld auth_config. Die Authentifizierungskonfiguration. Für auth_config ist nur einer der folgenden Werte zulässig:
apiKeyConfig

object (ApiKeyConfig)

Optional. Konfiguration für die API-Schlüsselauthentifizierung.

oauthConfig

object (OAuthConfig)

Optional. Konfiguration für OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Optional. Konfiguration für die ID-Token-Authentifizierung, die vom CES-Dienst-Agent generiert wird.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Optional. Konfiguration für die Dienstkontoauthentifizierung.

bearerTokenConfig

object (BearerTokenConfig)

Optional. Konfiguration für die Inhabertoken-Authentifizierung.

ApiKeyConfig

JSON-Darstellung
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Felder
keyName

string

Erforderlich. Der Parametername oder der Headername des API-Schlüssels. Beispiel: Wenn der API-Aufruf „https://example.com/act?X-Api-Key=“ lautet, ist „X-Api-Key“ der Parametername.

apiKeySecretVersion

string

Erforderlich. Der Name der Secret-Versionsressource des Secret Manager, in der der API-Schlüssel gespeichert ist. Format: projects/{project}/secrets/{secret}/versions/{version}

Hinweis: Sie sollten dem CES-Dienst-Agenten service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com die Rolle roles/secretmanager.secretAccessor zuweisen.

requestLocation

enum (RequestLocation)

Erforderlich. Schlüsselposition in der Anfrage.

OAuthConfig

JSON-Darstellung
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Felder
oauthGrantType

enum (OauthGrantType)

Erforderlich. OAuth-Berechtigungstypen.

clientId

string

Erforderlich. Die Client-ID des OAuth-Anbieters.

clientSecretVersion

string

Erforderlich. Der Name der SecretManager-Secret-Versionsressource, in der der Clientschlüssel gespeichert ist. Format: projects/{project}/secrets/{secret}/versions/{version}

Hinweis: Sie sollten dem CES-Dienst-Agenten service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com die Rolle roles/secretmanager.secretAccessor zuweisen.

tokenEndpoint

string

Erforderlich. Der Token-Endpunkt im OAuth-Anbieter, der gegen ein Zugriffstoken ausgetauscht werden soll.

scopes[]

string

Optional. Die zu gewährenden OAuth-Bereiche.

ServiceAccountAuthConfig

JSON-Darstellung
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Felder
serviceAccount

string

Erforderlich. Die E‑Mail-Adresse des für die Authentifizierung verwendeten Dienstkontos. CES verwendet dieses Dienstkonto, um ein Zugriffstoken auszutauschen. Das Zugriffstoken wird dann im Authorization-Header der Anfrage gesendet.

Dem Dienstkonto muss die Rolle roles/iam.serviceAccountTokenCreator für den CES-Dienst-Agent service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com zugewiesen sein.

scopes[]

string

Optional. Die zu gewährenden OAuth-Bereiche. Wenn nichts angegeben ist, wird der Standardbereich https://www.googleapis.com/auth/cloud-platform verwendet.

BearerTokenConfig

JSON-Darstellung
{
  "token": string
}
Felder
token

string

Erforderlich. Das Inhabertoken. Muss das Format $context.variables.<name_of_variable> aufweisen.

TlsConfig

JSON-Darstellung
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Felder
caCerts[]

object (CaCert)

Erforderlich. Gibt eine Liste der zulässigen benutzerdefinierten CA-Zertifikate für die HTTPS-Überprüfung an.

CaCert

JSON-Darstellung
{
  "displayName": string,
  "cert": string
}
Felder
displayName

string

Erforderlich. Der Name der zulässigen benutzerdefinierten CA-Zertifikate. Damit lassen sich die benutzerdefinierten CA-Zertifikate eindeutig identifizieren.

cert

string (bytes format)

Erforderlich. Die zulässigen benutzerdefinierten CA-Zertifikate (im DER-Format) für die HTTPS-Überprüfung. Dadurch wird der Standard-SSL-Trust-Anchor überschrieben. Wenn dieses Feld leer oder nicht angegeben ist, verwendet CES den Standard-Trust Store von Google, um Zertifikate zu prüfen. Hinweis: Die HTTPS-Serverzertifikate müssen mit „subject alt name“ signiert sein. Ein Zertifikat kann beispielsweise mit dem folgenden Befehl selbst signiert werden: openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Ein base64-codierter String.

ServiceDirectoryConfig

JSON-Darstellung
{
  "service": string
}
Felder
service

string

Erforderlich. Der Name des Service Directory-Dienstes. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Der Speicherort des Dienstverzeichnisses muss mit dem Speicherort der App übereinstimmen.

GoogleSearchTool

JSON-Darstellung
{
  "name": string,
  "description": string,
  "contextUrls": [
    string
  ],
  "preferredDomains": [
    string
  ],
  "excludeDomains": [
    string
  ],
  "promptConfig": {
    object (PromptConfig)
  }
}
Felder
name

string

Erforderlich. Der Name des Tools.

description

string

Optional. Beschreibung des Zwecks des Tools.

contextUrls[]

string

Optional. Inhalte werden direkt von diesen URLs abgerufen, um Kontext und Fundierung zu erhalten. Beispiel: „https://beispiel.de/pfad.html“. Es sind maximal 20 URLs zulässig.

preferredDomains[]

string

Optional. Gibt Domains an, auf die Suchergebnisse beschränkt werden sollen. Beispiel: „beispiel.de“, „andere.website“. Es können maximal 20 Domains angegeben werden.

excludeDomains[]

string

Optional. Liste der Domains, die aus den Suchergebnissen ausgeschlossen werden sollen. Beispiel: „beispiel.de“. Es können maximal 2.000 Domains ausgeschlossen werden.

promptConfig

object (PromptConfig)

Optional. Anweisungen für den Planner, wie die Suchergebnisse für Text und Sprache verarbeitet werden sollen.

PromptConfig

JSON-Darstellung
{
  "textPrompt": string,
  "voicePrompt": string
}
Felder
textPrompt

string

Optional. Definiert den Prompt, der für die Systemanweisungen verwendet wird, wenn Sie in Chatunterhaltungen mit dem Agent interagieren. Wenn nicht festgelegt, wird ein Standard-Prompt verwendet.

voicePrompt

string

Optional. Definiert den Prompt, der für die Systemanweisungen verwendet wird, wenn Sie in Sprachunterhaltungen mit dem Agent interagieren. Wenn nicht festgelegt, wird ein Standard-Prompt verwendet.

ConnectorTool

JSON-Darstellung
{
  "connection": string,
  "action": {
    object (Action)
  },
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "name": string,
  "description": string
}
Felder
connection

string

Erforderlich. Der vollständige Ressourcenname der referenzierten Integration Connectors-Verbindung. Format: projects/{project}/locations/{location}/connections/{connection}

action

object (Action)

Erforderlich. Aktion für das zu verwendende Tool.

authConfig

object (EndUserAuthConfig)

Optional. Konfiguriert, wie die Authentifizierung in Integration Connectors gehandhabt wird. Standardmäßig wird eine Administratorauthentifizierung in den Integration Connectors API-Anfragen übergeben. Sie können sie mit einer anderen Konfiguration für die Endnutzerauthentifizierung überschreiben. Hinweis: Für die Verbindung muss die Authentifizierungsüberschreibung aktiviert sein, damit hier eine EUC-Konfiguration angegeben werden kann. Andernfalls schlägt die Erstellung von ConnectorTool fehl. Weitere Informationen finden Sie unter https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

name

string

Optional. Der Name des Tools, das vom Agent verwendet werden kann, um zu entscheiden, ob dieses ConnectorTool aufgerufen werden soll.

description

string

Optional. Die Beschreibung des Tools, anhand derer der Agent entscheiden kann, ob dieses ConnectorTool aufgerufen werden soll.

Aktion

JSON-Darstellung
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Felder
inputFields[]

string

Optional. Entitätsfelder, die als Eingaben für den Vorgang verwendet werden sollen. Wenn keine Felder angegeben sind, werden alle Felder der Entität verwendet.

outputFields[]

string

Optional. Die Entitätsfelder, die vom Vorgang zurückgegeben werden sollen. Wenn keine Felder angegeben sind, werden alle Felder der Entität zurückgegeben.

Union-Feld action_spec. Spezifikation für eine Aktion, die für das Tool konfiguriert werden soll. Für action_spec ist nur einer der folgenden Werte zulässig:
connectionActionId

string

ID einer Verbindungsaktion für das zu verwendende Tool.

entityOperation

object (EntityOperation)

Konfiguration für den Entitätsvorgang, die vom Tool verwendet werden soll.

EntityOperation

JSON-Darstellung
{
  "entityId": string,
  "operation": enum (OperationType)
}
Felder
entityId

string

Erforderlich. ID der Entität.

operation

enum (OperationType)

Erforderlich. Vorgang, der für die Entität ausgeführt werden soll.

EndUserAuthConfig

JSON-Darstellung
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Felder
Union-Feld auth_config. Die Authentifizierungskonfiguration. Für auth_config ist nur einer der folgenden Werte zulässig:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Oauth 2.0-Authentifizierung mit Autorisierungscode.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Authentifizierung mit OAuth 2.0-Berechtigungstyp zur Autorisierung mit JWT-Profil.

Oauth2AuthCodeConfig

JSON-Darstellung
{
  "oauthToken": string
}
Felder
oauthToken

string

Erforderlich. Name des OAuth-Tokenparameters, der übergeben werden soll. Muss das Format $context.variables.<name_of_variable> aufweisen.

Oauth2JwtBearerConfig

JSON-Darstellung
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Felder
issuer

string

Erforderlich. Name des Ausstellerparameters, der übergeben werden soll. Muss das Format $context.variables.<name_of_variable> aufweisen.

subject

string

Erforderlich. Name des Subjektparameters, der weitergegeben werden soll. Muss das Format $context.variables.<name_of_variable> aufweisen.

clientKey

string

Erforderlich. Name des Clientparameters, der übergeben werden soll. Muss das Format $context.variables.<name_of_variable> aufweisen.

DataStoreTool

JSON-Darstellung
{
  "name": string,
  "description": string,
  "boostSpecs": [
    {
      object (BoostSpecs)
    }
  ],
  "modalityConfigs": [
    {
      object (ModalityConfig)
    }
  ],
  "filterParameterBehavior": enum (FilterParameterBehavior),

  // Union field search_source can be only one of the following:
  "dataStoreSource": {
    object (DataStoreSource)
  },
  "engineSource": {
    object (EngineSource)
  }
  // End of list of possible types for union field search_source.
}
Felder
name

string

Erforderlich. Der Name des Datenspeichertools.

description

string

Optional. Die Toolbeschreibung.

boostSpecs[]

object (BoostSpecs)

Optional. Mit der Boost-Spezifikation können Sie bestimmte Dokumente hervorheben.

modalityConfigs[]

object (ModalityConfig)

Optional. Die Modalitätskonfigurationen für den Datenspeicher.

filterParameterBehavior

enum (FilterParameterBehavior)

Optional. Das Verhalten des Filterparameters.

Union-Feld search_source. Definiert die Suchquelle, entweder einen einzelnen Datenspeicher oder eine Engine. Für search_source ist nur einer der folgenden Werte zulässig:
dataStoreSource

object (DataStoreSource)

Optional. In einem einzelnen bestimmten Datenspeicher suchen.

engineSource

object (EngineSource)

Optional. Suche innerhalb einer Engine (möglicherweise in mehreren Datenspeichern).

DataStoreSource

JSON-Darstellung
{
  "filter": string,
  "dataStore": {
    object (DataStore)
  }
}
Felder
filter

string

Optional. Filterspezifikation für den Datenspeicher. Weitere Informationen finden Sie unter https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata.

dataStore

object (DataStore)

Optional. Der Datenspeicher.

Datastore

JSON-Darstellung
{
  "name": string,
  "type": enum (DataStoreType),
  "documentProcessingMode": enum (DocumentProcessingMode),
  "displayName": string,
  "createTime": string,
  "connectorConfig": {
    object (ConnectorConfig)
  }
}
Felder
name

string

Erforderlich. Vollständiger Ressourcenname des DataStore. Format: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}

type

enum (DataStoreType)

Nur Ausgabe. Der Typ des Datenspeichers. Dieses Feld ist schreibgeschützt und wird vom Server ausgefüllt.

documentProcessingMode

enum (DocumentProcessingMode)

Nur Ausgabe. Der Dokumentverarbeitungsmodus für die Datenspeicherverbindung. Wird nur für PUBLIC_WEB- und UNSTRUCTURED-Datenspeicher festgelegt.

displayName

string

Nur Ausgabe. Der Anzeigename des Datenspeichers.

createTime

string (Timestamp format)

Nur Ausgabe. Zeitstempel für die Erstellung des Datenspeichers.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

connectorConfig

object (ConnectorConfig)

Nur Ausgabe. Die Connector-Konfiguration für die Datenspeicherverbindung.

Zeitstempel

JSON-Darstellung
{
  "seconds": string,
  "nanos": integer
}
Felder
seconds

string (int64 format)

Stellt Sekunden der UTC-Zeit seit Unix-Epoche 1970-01-01T00:00:00Z dar. Muss einschließlich zwischen -62135596800 und 253402300799 liegen (entspricht 0001-01-01T00:00:00Z bis 9999-12-31T23:59:59Z).

nanos

integer

Nicht negative Sekundenbruchteile Nanosekunden-Auflösung. Dieses Feld enthält den Nanosekundenanteil der Dauer und ist keine Alternative zu Sekunden. Negative Sekundenwerte mit Bruchteilen müssen weiterhin nicht negative Nano-Werte haben, die zeitlich vorwärts gezählt werden. Muss zwischen 0 und 999.999.999 liegen.

ConnectorConfig

JSON-Darstellung
{
  "collection": string,
  "collectionDisplayName": string,
  "dataSource": string
}
Felder
collection

string

Der Ressourcenname der Sammlung, zu der der Datenspeicher gehört.

collectionDisplayName

string

Der Anzeigename der Sammlung, zu der der Datenspeicher gehört.

dataSource

string

Der Name der Datenquelle. Beispiel: salesforce, jira, confluence, bigquery.

EngineSource

JSON-Darstellung
{
  "engine": string,
  "dataStoreSources": [
    {
      object (DataStoreSource)
    }
  ],
  "filter": string
}
Felder
engine

string

Erforderlich. Vollständiger Ressourcenname der Engine. Format: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

dataStoreSources[]

object (DataStoreSource)

Optional. Wird verwendet, um bestimmte DataStores innerhalb der Engine als Ziel auszuwählen. Wenn das Feld leer ist, wird die Suche auf alle DataStores angewendet, die mit der Engine verknüpft sind.

filter

string

Optional. Ein Filter, der auf die Suche in der Engine angewendet wird. Nicht relevant und nicht verwendet, wenn „data_store_sources“ angegeben ist. Weitere Informationen finden Sie unter https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata.

BoostSpecs

JSON-Darstellung
{
  "dataStores": [
    string
  ],
  "spec": [
    {
      object (BoostSpec)
    }
  ]
}
Felder
dataStores[]

string

Erforderlich. Der Datenspeicher, auf den die Konfiguration für die Steigerung angewendet wird. Vollständiger Ressourcenname des Datenspeichers, z. B. „projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}“.

spec[]

object (BoostSpec)

Erforderlich. Eine Liste mit Spezifikationen für das Boosting.

BoostSpec

JSON-Darstellung
{
  "conditionBoostSpecs": [
    {
      object (ConditionBoostSpec)
    }
  ]
}
Felder
conditionBoostSpecs[]

object (ConditionBoostSpec)

Erforderlich. Eine Liste mit Spezifikationen für das Boosting.

ConditionBoostSpec

JSON-Darstellung
{
  "condition": string,
  "boost": number,
  "boostControlSpec": {
    object (BoostControlSpec)
  }
}
Felder
condition

string

Erforderlich. Der Ausdruck für eine Boost-Bedingung. Die Syntax ist dieselbe wie die Syntax für Filterausdrücke. Derzeit wird nur eine Liste von BCP-47-Sprachcodes als Bedingung unterstützt. Beispiel: So verbessern Sie Vorschläge in den Sprachen „en“ oder „fr“: (lang_code: ANY("en", "fr"))

boost

number

Optional. Stärke des Boostings, das im Bereich [-1, 1] liegen sollte. Negatives Boosting bedeutet Abwertung. Der Standardwert ist 0,0.

Wenn Sie den Wert auf 1,0 setzen, werden die Vorschläge deutlich hochgestuft. Das bedeutet jedoch nicht, dass das Top-Ergebnis immer ein geboosteter Vorschlag ist.

Wenn Sie den Wert auf -1,0 setzen, werden die Vorschläge stark herabgestuft. Es werden jedoch möglicherweise weiterhin andere relevante Vorschläge angezeigt.

Wenn Sie den Wert auf 0,0 festlegen, wird kein Boosting angewendet. Die Boost-Bedingung wird ignoriert.

boostControlSpec

object (BoostControlSpec)

Optional. Komplexe Spezifikation für benutzerdefiniertes Ranking basierend auf einem vom Kunden definierten Attributwert.

BoostControlSpec

JSON-Darstellung
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Felder
fieldName

string

Optional. Der Name des Feldes, dessen Wert zur Bestimmung des Boost-Betrags verwendet wird.

attributeType

enum (AttributeType)

Optional. Der Attributtyp, der zum Ermitteln des Boost-Betrags verwendet werden soll. Der Attributwert kann aus dem Feldwert des angegebenen „field_name“ abgeleitet werden. Bei numerischen Werten ist das ganz einfach: attribute_value = numerical_field_value. Bei der Aktualität gilt jedoch: attribute_value = (time.now() – datetime_field_value).

interpolationType

enum (InterpolationType)

Optional. Der Interpolationstyp, der zum Verbinden der unten aufgeführten Kontrollpunkte verwendet wird.

controlPoints[]

object (ControlPoint)

Optional. Die Kontrollpunkte, mit denen die Kurve definiert wird. Die monotone Funktion (die oben über „interpolation_type“ definiert wurde) geht durch die hier aufgeführten Kontrollpunkte.

ControlPoint

JSON-Darstellung
{
  "attributeValue": string,
  "boostAmount": number
}
Felder
attributeValue

string

Optional. Kann einer der folgenden Werte sein: 1. Der numerische Feldwert. 2. Die Dauerangabe für die Aktualität: Der Wert muss als XSD-dayTimeDuration-Wert formatiert sein (eine eingeschränkte Teilmenge eines ISO 8601-Dauerwerts). Das Muster dafür ist: [nD][T[nH][nM][nS]].

boostAmount

number

Optional. Der Wert zwischen -1 und 1, der angibt, um wieviel die Punktzahl erhöht werden soll, wenn „attribute_value“ dem oben angegebenen Wert entspricht.

ModalityConfig

JSON-Darstellung
{
  "modalityType": enum (ModalityType),
  "rewriterConfig": {
    object (RewriterConfig)
  },
  "summarizationConfig": {
    object (SummarizationConfig)
  },
  "groundingConfig": {
    object (GroundingConfig)
  }
}
Felder
modalityType

enum (ModalityType)

Erforderlich. Der Modalitätstyp.

rewriterConfig

object (RewriterConfig)

Optional. Die Rewriter-Konfiguration.

summarizationConfig

object (SummarizationConfig)

Optional. Die Zusammenfassungskonfiguration.

groundingConfig

object (GroundingConfig)

Optional. Die Fundierungskonfiguration.

RewriterConfig

JSON-Darstellung
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Felder
modelSettings

object (ModelSettings)

Erforderlich. Konfigurationen für das LLM-Modell.

prompt

string

Optional. Die Prompt-Definition. Wenn nicht festgelegt, wird ein Standard-Prompt verwendet.

disabled

boolean

Optional. Gibt an, ob die Funktion zum Umschreiben deaktiviert ist.

ModelSettings

JSON-Darstellung
{
  "model": string,

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

string

Optional. Das LLM-Modell, das der Agent verwenden soll. Wenn nicht festgelegt, übernimmt der Agent das Modell vom übergeordneten Agent.

Union-Feld _temperature.

Für _temperature ist nur einer der folgenden Werte zulässig:

temperature

number

Optional. Wenn festgelegt, wird diese Temperatur für das LLM-Modell verwendet. Die Temperatur steuert die Zufälligkeit der Antworten des Modells. Niedrigere Temperaturen führen zu vorhersagbareren Antworten. Höhere Temperaturen führen zu kreativeren Antworten.

SummarizationConfig

JSON-Darstellung
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Felder
modelSettings

object (ModelSettings)

Optional. Konfigurationen für das LLM-Modell.

prompt

string

Optional. Die Prompt-Definition. Wenn nicht festgelegt, wird ein Standard-Prompt verwendet.

disabled

boolean

Optional. Gibt an, ob die Zusammenfassung deaktiviert ist.

GroundingConfig

JSON-Darstellung
{
  "groundingLevel": number,
  "disabled": boolean
}
Felder
groundingLevel

number

Optional. Der Fundierungsschwellenwert der Antwort basierend auf den abgerufenen Quellen. Der Wert hat einen konfigurierbaren Bereich von [1, 5]. Mit der Ebene wird die Fundierung der Antwort begrenzt. Das bedeutet, dass für alle Antworten mit einem Fundierungswert unter dem Schwellenwert nur relevante Snippets zurückgegeben werden.

Wenn der Wert beispielsweise 3 ist, muss der Fundierungs-Score mindestens 3 sein, damit die Antwort zurückgegeben wird.

disabled

boolean

Optional. Gibt an, ob die Fundierung deaktiviert ist.

PythonFunction

JSON-Darstellung
{
  "name": string,
  "pythonCode": string,
  "description": string
}
Felder
name

string

Optional. Der Name der auszuführenden Python-Funktion. Muss mit einem in Python-Code definierten Python-Funktionsnamen übereinstimmen. Groß- und Kleinschreibung wird berücksichtigt. Wenn der Name nicht angegeben ist, wird die erste im Python-Code definierte Funktion verwendet.

pythonCode

string

Optional. Der Python-Code, der für das Tool ausgeführt werden soll.

description

string

Nur Ausgabe. Die Beschreibung der Python-Funktion, die aus dem Docstring des Python-Codes geparst wurde.

McpTool

JSON-Darstellung
{
  "name": string,
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  },
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  }
}
Felder
name

string

Erforderlich. Der Name des MCP-Tools.

description

string

Optional. Die Beschreibung des MCP-Tools.

inputSchema

object (Schema)

Optional. Das Schema der Eingabeargumente des MCP-Tools.

outputSchema

object (Schema)

Optional. Das Schema der Ausgabeargumente des MCP-Tools.

serverAddress

string

Erforderlich. Die Serveradresse des MCP-Servers, z.B. "https://example.com/mcp/". Wenn der Server mit dem MCP SDK erstellt wurde, sollte die URL mit „/mcp/“ enden. Es werden nur Streamable HTTP-Transport-basierte Server unterstützt. Dies entspricht der server_address im McpToolset. Weitere Informationen finden Sie unter https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Optional. Authentifizierungsinformationen, die zum Ausführen des Tools auf dem MCP-Server erforderlich sind. Bei der Authentifizierung mit einem Bearer-Token gilt das Token nur für die Ausführung von Tools, nicht für die Auflistung von Tools. Dazu müssen Tools ohne Authentifizierung aufgeführt werden können.

tlsConfig

object (TlsConfig)

Optional. Die TLS-Konfiguration. Enthält die benutzerdefinierten Serverzertifikate, denen der Client vertrauen soll.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Optional. Service Directory-Konfiguration für VPC-SC, die zum Auflösen von Dienstnamen innerhalb eines Perimeters verwendet wird.

FileSearchTool

JSON-Darstellung
{
  "corpusType": enum (CorpusType),
  "name": string,
  "description": string,
  "fileCorpus": string
}
Felder
corpusType

enum (CorpusType)

Optional. Der Typ des Korpus. Der Standardwert ist FULLY_MANAGED.

name

string

Erforderlich. Der Name des Tools.

description

string

Optional. Die Toolbeschreibung.

fileCorpus

string

Optional. Das Corpus, in dem Dateien gespeichert werden. Format: projects/{project}/locations/{location}/ragCorpora/{rag_corpus}

SystemTool

JSON-Darstellung
{
  "name": string,
  "description": string
}
Felder
name

string

Erforderlich. Der Name des Systemtools.

description

string

Nur Ausgabe. Die Beschreibung des Systemtools.

WidgetTool

JSON-Darstellung
{
  "name": string,
  "description": string,
  "widgetType": enum (WidgetType),

  // Union field input can be only one of the following:
  "parameters": {
    object (Schema)
  }
  // End of list of possible types for union field input.
}
Felder
name

string

Erforderlich. Der Anzeigename des Widget-Tools.

description

string

Optional. Die Beschreibung des Widget-Tools.

widgetType

enum (WidgetType)

Optional. Der Typ des Widget-Tools. Wenn keine Angabe erfolgt, wird der Standardtyp CUSTOMIZED verwendet.

Union-Feld input. Die Eingabe des Widget-Tools. Für input ist nur einer der folgenden Werte zulässig:
parameters

object (Schema)

Optional. Die Eingabeparameter des Widget-Tools.

ToolFakeConfig

JSON-Darstellung
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Felder
enableFakeMode

boolean

Optional. Gibt an, ob das Tool den Fiktivmodus verwendet.

Union-Feld tool_response. Die Antwort ist entweder statisch oder wird von einer Python-Funktion bereitgestellt. Für tool_response ist nur einer der folgenden Werte zulässig:
codeBlock

object (CodeBlock)

Optional. Codeblock, der anstelle eines echten Tool-Aufrufs ausgeführt wird.

CodeBlock

JSON-Darstellung
{
  "pythonCode": string
}
Felder
pythonCode

string

Erforderlich. Python-Code, der im Tool-Fake-Modus aufgerufen wird. Erwartete Python-Funktionssignatur: Um alle Tool-Aufrufe abzufangen: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Um einen bestimmten Tool-Aufruf abzufangen: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Wenn die Funktion „None“ zurückgibt, wird stattdessen das echte Tool aufgerufen.

Tool-Annotationen

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ✅ | Open-World-Hinweis: ❌