REST Resource: projects.locations.apps.toolsets

Ressource: Toolset

Ein Toolset ist eine Gruppe von dynamisch verwalteten Tools, die vom Agent verwendet werden können.

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

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of mutually exclusive fields.
}
Felder
name

string

ID. Die eindeutige Kennung des Toolsets. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Optional. Der Anzeigename des Toolsets. Muss innerhalb derselben App eindeutig sein.

description

string

Optional. Die Beschreibung des Toolsets.

timeout

string (Duration format)

Optional. Das Zeitlimit für die Ausführung des Toolsets. Wenn nichts anderes festgelegt ist, beträgt das Standard-Zeitlimit 30 Sekunden für SYNCHRONOUS-Toolsets und 60 Sekunden für ASYNCHRONOUS-Toolsets.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

createTime

string (Timestamp format)

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

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

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 durch das Update alle gleichzeitigen Änderungen überschrieben.

executionType

enum (ExecutionType)

Optional. Der Ausführungstyp der Tools im Toolset.

toolFakeConfig

object (ToolFakeConfig)

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

Der Typ des Toolsets. Im Folgenden finden Sie eine Liste von sich gegenseitig ausschließenden Feldern. In einer Antwort wird höchstens eines der Felder festgelegt:
mcpToolset

object (McpToolset)

Optional. Ein Toolset, das eine Liste der Tools enthält, die vom MCP-Server angeboten werden.

openApiToolset

object (OpenApiToolset)

Optional. Ein Toolset, das eine Liste von Tools enthält, die durch ein OpenAPI-Schema definiert werden.

connectorToolset

object (ConnectorToolset)

Optional. Ein Toolset, mit dem Tools aus einer Integration Connectors-Verbindung generiert werden.

Ende der sich gegenseitig ausschließenden Felder.

McpToolset

Ein Toolset, das eine Liste der Tools enthält, die vom MCP-Server angeboten werden.

JSON-Darstellung
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Felder
serverAddress

string

Erforderlich. Die Adresse des MCP-Servers, z. B. „https://beispiel.de/mcp/“. Wenn der Server mit dem MCP SDK erstellt wurde, sollte die URL mit „/mcp/“ enden. Es werden nur Server unterstützt, die auf dem Streamable HTTP-Transport basieren. Weitere Informationen finden Sie unter https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Optional. Authentifizierungsinformationen, die für den Zugriff auf Tools und die Ausführung eines 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.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

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

tlsConfig

object (TlsConfig)

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

customHeaders

map (key: string, value: string)

Optional. Die benutzerdefinierten Header, die in der Anfrage an den MCP-Server gesendet werden sollen. Die Werte müssen im Format $context.variables.<name_of_variable> angegeben werden und können in den Sitzungsvariablen festgelegt werden. Weitere Informationen finden Sie unter https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection.

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

toolOverrides[]

object (McpToolOverride)

Optional. Überschreibungen für einzelne Tools in diesem Toolset. So können Sie bestimmte Details wie Beschreibungen oder Namen überschreiben oder den Status der Tools fixieren, damit er nicht vollständig dynamisch ist.

McpToolOverride

Überschreibungen, die einem bestimmten Tool in einem Toolset zugeordnet sind. Dadurch können Tool-Definitionen vom externen dynamischen Server angepinnt oder überschrieben werden.

JSON-Darstellung
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Felder
tool

string

Erforderlich. Der ursprüngliche Name des Tools, wie er vom MCP-Server ausgegeben wird.

nameOverride

string

Optional. Falls vorhanden, wird dieser Name im Agent anstelle des ursprünglichen Namens verwendet. Dies wird hauptsächlich als Alias verwendet, wenn der MCP-Server schlecht benannte Tools anbietet.

descriptionOverride

string

Optional. Falls vorhanden, wird diese Beschreibung anstelle der ursprünglichen Beschreibung vom Server verwendet.

snapshot

object (McpToolDefinition)

Nur Ausgabe. Wenn dieses Tool vorhanden ist, wird es angepinnt und verwendet die Snapshot-Werte als Fallback, wenn der Server vorübergehend nicht verfügbar ist oder keine Überschreibung vorhanden ist.

McpToolDefinition

Container für die wichtigsten Definitionselemente eines Tools, die als Snapshot erfasst werden. Schemas im Snapshot werden unverändert verwendet und können nicht überschrieben werden.

JSON-Darstellung
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Felder
description

string

Nur Ausgabe. Die Beschreibung des MCP-Tools. Dies kann durch descriptionOverride in McpToolOverride überschrieben werden.

inputSchema

object (Schema)

Nur Ausgabe. Das Schema der Eingabeargumente des MCP-Tools.

outputSchema

object (Schema)

Nur Ausgabe. Das Schema der Ausgabeargumente des MCP-Tools.

OpenApiToolset

Ein Toolset, das eine Liste von Tools enthält, die durch ein OpenAPI-Schema definiert werden.

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

string

Erforderlich. Das OpenAPI-Schema des Toolsets.

apiAuthentication

object (ApiAuthentication)

Optional. Von der API benötigte Authentifizierungsinformationen.

tlsConfig

object (TlsConfig)

Optional. Die TLS-Konfiguration. Benutzerdefinierte Serverzertifikate sind enthalten

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Optional. Service Directory-Konfiguration.

ignoreUnknownFields

boolean

Optional. Bei „true“ ignoriert der Agent unbekannte Felder in der API-Antwort für alle im OpenAPI-Schema definierten Vorgänge.

url

string

Optional. Die Server-URL des Open API-Schemas. Dieses Feld wird nur in Toolsets in den Umgebungsabhängigkeiten während des Exportvorgangs 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.

ConnectorToolset

Ein Toolset, mit dem Tools aus einer Integration Connectors-Verbindung generiert werden.

JSON-Darstellung
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Felder
connection

string

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

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 Endnutzerauthentifizierungskonfiguration überschreiben. Hinweis: Für die Verbindung muss die Authentifizierungsüberschreibung aktiviert sein, damit hier eine EUC-Konfiguration angegeben werden kann. Andernfalls schlägt die Toolset-Erstellung fehl. Weitere Informationen finden Sie unter https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

connectorActions[]

object (Action)

Erforderlich. Die Liste der Connector-Aktionen/Entitätsvorgänge, für die Tools generiert werden sollen.

Methoden

create

Erstellt ein neues Toolset in der angegebenen App.

delete

Löscht das angegebene Toolset.

get

Ruft die Details des angegebenen Toolsets ab.

list

Listet Toolsets in der angegebenen App auf.

patch

Aktualisiert das angegebene Toolset.

retrieveTools

Rufen Sie die Liste der Tools ab, die im angegebenen Toolset enthalten sind.