MCP Tools Reference: ces.googleapis.com

Alat: list_toolsets

Mencantumkan toolset di aplikasi tertentu.

Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP list_toolsets.

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

Skema Input

Pesan permintaan untuk AgentService.ListToolsets.

ListToolsetsRequest

Representasi JSON
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string,
  "orderBy": string
}
Kolom
parent

string

Wajib. Nama resource aplikasi untuk mencantumkan toolset.

pageSize

integer

Opsional. Ukuran halaman yang diminta. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai.

pageToken

string

Opsional. Nilai next_page_token yang ditampilkan dari panggilan AgentService.ListToolsets daftar sebelumnya.

filter

string

Opsional. Filter yang akan diterapkan saat mencantumkan toolset. Lihat https://google.aip.dev/160 untuk mengetahui detail selengkapnya.

orderBy

string

Opsional. Kolom yang akan diurutkan. Hanya "name" dan "create_time" yang didukung. Lihat https://google.aip.dev/132#ordering untuk mengetahui detail selengkapnya.

Skema Output

Pesan respons untuk AgentService.ListToolsets.

ListToolsetsResponse

Representasi JSON
{
  "toolsets": [
    {
      object (Toolset)
    }
  ],
  "nextPageToken": string
}
Kolom
toolsets[]

object (Toolset)

Daftar set alat.

nextPageToken

string

Token yang dapat dikirim sebagai ListToolsetsRequest.page_token untuk mengambil halaman berikutnya. Jika kolom ini tidak ada, berarti tidak ada halaman berikutnya.

Toolset

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

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Kolom
name

string

ID. ID unik toolset. Format: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opsional. Nama tampilan toolset. Harus unik dalam aplikasi yang sama.

description

string

Opsional. Deskripsi toolset.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Hanya output. Stempel waktu saat toolset terakhir diperbarui.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

etag

string

ETag yang digunakan untuk memastikan objek tidak berubah selama operasi baca-ubah-tulis. Jika etag kosong, pembaruan akan menimpa perubahan serentak.

executionType

enum (ExecutionType)

Opsional. Jenis eksekusi alat dalam toolset.

toolFakeConfig

object (ToolFakeConfig)

Opsional. Konfigurasi untuk perilaku alat dalam mode palsu.

Kolom union toolset_type. Jenis toolset. toolset_type hanya ada berupa salah satu diantara berikut:
mcpToolset

object (McpToolset)

Opsional. Toolset yang berisi daftar alat yang ditawarkan oleh server MCP.

openApiToolset

object (OpenApiToolset)

Opsional. Kumpulan alat yang berisi daftar alat yang ditentukan oleh skema OpenAPI.

connectorToolset

object (ConnectorToolset)

Opsional. Kumpulan alat yang membuat alat dari Koneksi Integration Connectors.

McpToolset

Representasi JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  }
}
Kolom
serverAddress

string

Wajib. Alamat server MCP, misalnya, "https://example.com/mcp/". Jika server dibangun dengan MCP SDK, URL harus memiliki akhiran "/mcp/". Hanya server berbasis transport HTTP yang dapat di-streaming yang didukung. Lihat https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http untuk mengetahui detail selengkapnya.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan untuk mengakses alat dan menjalankan alat terhadap server MCP. Untuk autentikasi token pembawa, token hanya berlaku untuk eksekusi alat, bukan untuk alat listingan. Hal ini mengharuskan alat dapat dicantumkan tanpa autentikasi.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Service Directory untuk VPC-SC, yang digunakan untuk menyelesaikan nama layanan dalam perimeter.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom yang harus dipercaya oleh klien.

ApiAuthentication

Representasi JSON
{

  // 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
apiKeyConfig

object (ApiKeyConfig)

Opsional. Konfigurasi untuk autentikasi kunci API.

oauthConfig

object (OAuthConfig)

Opsional. Konfigurasi untuk OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opsional. Konfigurasi untuk autentikasi token ID yang dibuat dari agen layanan CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opsional. Konfigurasi untuk autentikasi akun layanan.

bearerTokenConfig

object (BearerTokenConfig)

Opsional. Konfigurasi untuk autentikasi token bearer.

ApiKeyConfig

Representasi JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Kolom
keyName

string

Wajib. Nama parameter atau nama header kunci API. Misalnya, Jika permintaan API adalah "https://example.com/act?X-Api-Key=", "X-Api-Key" akan menjadi nama parameter.

apiKeySecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan kunci API. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Wajib. Lokasi kunci dalam permintaan.

OAuthConfig

Representasi JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Kolom
oauthGrantType

enum (OauthGrantType)

Wajib. Jenis pemberian OAuth.

clientId

string

Wajib. Client ID dari penyedia OAuth.

clientSecretVersion

string

Wajib. Nama resource versi secret SecretManager yang menyimpan rahasia klien. Format: projects/{project}/secrets/{secret}/versions/{version}

Catatan: Anda harus memberikan peran roles/secretmanager.secretAccessor kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Wajib. Endpoint token di penyedia OAuth untuk ditukar dengan token akses.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan.

ServiceAccountAuthConfig

Representasi JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Kolom
serviceAccount

string

Wajib. Alamat email akun layanan yang digunakan untuk autentikasi. CES menggunakan akun layanan ini untuk menukar token akses dan token akses tersebut kemudian dikirim di header Authorization permintaan.

Akun layanan harus memiliki peran roles/iam.serviceAccountTokenCreator yang diberikan kepada agen layanan CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opsional. Cakupan OAuth yang akan diberikan. Jika tidak ditentukan, cakupan default https://www.googleapis.com/auth/cloud-platform akan digunakan.

BearerTokenConfig

Representasi JSON
{
  "token": string
}
Kolom
token

string

Wajib. Token pemilik. Harus dalam format $context.variables.<name_of_variable>.

ServiceDirectoryConfig

Representasi JSON
{
  "service": string
}
Kolom
service

string

Wajib. Nama layanan Service Directory. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. Lokasi direktori layanan harus sama dengan lokasi aplikasi.

TlsConfig

Representasi JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Kolom
caCerts[]

object (CaCert)

Wajib. Menentukan daftar sertifikat CA kustom yang diizinkan untuk verifikasi HTTPS.

CaCert

Representasi JSON
{
  "displayName": string,
  "cert": string
}
Kolom
displayName

string

Wajib. Nama sertifikat CA kustom yang diizinkan. Ini dapat digunakan untuk membedakan sertifikat CA kustom.

cert

string (bytes format)

Wajib. Sertifikat CA kustom yang diizinkan (dalam format DER) untuk verifikasi HTTPS. Tindakan ini akan menggantikan trust store SSL default. Jika kosong atau tidak ditentukan, CES akan menggunakan penyimpanan tepercaya default Google untuk memverifikasi sertifikat. Catatan: Pastikan sertifikat server HTTPS ditandatangani dengan "subject alt name". Misalnya, sertifikat dapat ditandatangani sendiri menggunakan perintah berikut, openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

String berenkode base64.

OpenApiToolset

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

string

Wajib. Skema OpenAPI toolset.

apiAuthentication

object (ApiAuthentication)

Opsional. Informasi autentikasi yang diperlukan oleh API.

tlsConfig

object (TlsConfig)

Opsional. Konfigurasi TLS. Mencakup sertifikat server kustom

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opsional. Konfigurasi Direktori Layanan.

ignoreUnknownFields

boolean

Opsional. Jika benar (true), agen akan mengabaikan kolom yang tidak diketahui dalam respons API untuk semua operasi yang ditentukan dalam skema OpenAPI.

url

string

Opsional. URL server skema Open API. Kolom ini hanya ditetapkan di toolset dalam dependensi lingkungan selama proses ekspor jika skema berisi URL server. Selama proses impor, jika URL ini ada dalam dependensi lingkungan dan skema memiliki placeholder $env_var, URL ini akan menggantikan placeholder dalam skema.

ConnectorToolset

Representasi JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Kolom
connection

string

Wajib. Nama resource lengkap Koneksi Integration Connectors yang dirujuk. Format: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opsional. Mengonfigurasi cara penanganan autentikasi di Integration Connectors. Secara default, autentikasi admin diteruskan dalam permintaan API Integration Connectors. Anda dapat menggantinya dengan konfigurasi autentikasi pengguna akhir yang berbeda. Catatan: Koneksi harus mengaktifkan penggantian autentikasi agar dapat menentukan konfigurasi EUC di sini. Jika tidak, pembuatan Toolset akan gagal. Lihat: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Wajib. Daftar tindakan konektor/operasi entitas untuk membuat alat.

EndUserAuthConfig

Representasi JSON
{

  // 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.
}
Kolom
Kolom union auth_config. Konfigurasi autentikasi. auth_config hanya ada berupa salah satu diantara berikut:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autentikasi Kode Otorisasi Oauth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autentikasi pemberian otorisasi OAuth 2.0 Profil JWT.

Oauth2AuthCodeConfig

Representasi JSON
{
  "oauthToken": string
}
Kolom
oauthToken

string

Wajib. Nama parameter token OAuth yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representasi JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Kolom
issuer

string

Wajib. Nama parameter penerbit yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

subject

string

Wajib. Nama parameter subjek yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

clientKey

string

Wajib. Nama parameter klien yang akan diteruskan. Harus dalam format $context.variables.<name_of_variable>.

Tindakan

Representasi JSON
{
  "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.
}
Kolom
inputFields[]

string

Opsional. Kolom entitas yang akan digunakan sebagai input untuk operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entitas akan digunakan.

outputFields[]

string

Opsional. Kolom entitas yang akan ditampilkan dari operasi. Jika tidak ada kolom yang ditentukan, semua kolom Entity akan ditampilkan.

Kolom union action_spec. Spesifikasi untuk tindakan yang akan dikonfigurasi agar dapat digunakan oleh alat. action_spec hanya ada berupa salah satu diantara berikut:
connectionActionId

string

ID tindakan Koneksi yang akan digunakan alat.

entityOperation

object (EntityOperation)

Konfigurasi operasi entitas yang akan digunakan alat.

EntityOperation

Representasi JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Kolom
entityId

string

Wajib. ID entitas.

operation

enum (OperationType)

Wajib. Operasi yang akan dilakukan pada entity.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

ToolFakeConfig

Representasi JSON
{
  "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.
}
Kolom
enableFakeMode

boolean

Opsional. Apakah alat menggunakan mode palsu.

Kolom union tool_response. Respons bersifat statis atau disediakan oleh fungsi python. tool_response hanya ada berupa salah satu diantara berikut:
codeBlock

object (CodeBlock)

Opsional. Blok kode yang akan dieksekusi, bukan panggilan alat yang sebenarnya.

CodeBlock

Representasi JSON
{
  "pythonCode": string
}
Kolom
pythonCode

string

Wajib. Kode Python yang akan dipanggil dalam mode palsu alat. Tanda tangan fungsi Python yang diharapkan - Untuk menangkap semua panggilan alat: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Untuk menangkap panggilan alat tertentu: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: Jika fungsi menampilkan None, alat yang sebenarnya akan dipanggil.

Anotasi Alat

Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ✅ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌