Alat: get_conversation
Mendapatkan detail percakapan yang ditentukan.
Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP get_conversation.
| Permintaan 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_conversation", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Skema Input
Pesan permintaan untuk AgentService.GetConversation.
GetConversationRequest
| Representasi JSON |
|---|
{
"name": string,
"source": enum ( |
| Kolom | |
|---|---|
name |
Wajib. Nama resource percakapan yang akan diambil. |
source |
Opsional. Menunjukkan sumber percakapan. Jika tidak ditetapkan, semua sumber akan ditelusuri. |
Sumber
Sumber percakapan.
| Enum | |
|---|---|
SOURCE_UNSPECIFIED |
Sumber tidak ditentukan. |
LIVE |
Percakapan berasal dari pengguna akhir langsung. |
SIMULATOR |
Percakapan berasal dari simulator. |
EVAL |
Percakapan berasal dari evaluasi. |
AGENT_TOOL |
Percakapan berasal dari alat agen. Alat agen menjalankan agen dalam sesi terpisah, yang dipertahankan untuk tujuan pengujian dan proses debug. |
Skema Output
Percakapan mewakili interaksi antara pengguna akhir dan aplikasi CES.
Percakapan
| Representasi JSON |
|---|
{ "name": string, "startTime": string, "endTime": string, "turns": [ { object ( |
| Kolom | |
|---|---|
name |
ID. ID unik percakapan. Format: |
startTime |
Hanya output. Stempel waktu saat percakapan 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: |
endTime |
Hanya output. Stempel waktu saat percakapan selesai. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
turns[] |
Wajib. Giliran dalam percakapan. |
turnCount |
Hanya output. Jumlah giliran dalam percakapan. |
channelType |
TIDAK DIGUNAKAN LAGI. Sebagai gantinya, gunakan |
source |
Hanya output. Menunjukkan sumber percakapan. |
inputTypes[] |
Hanya output. Jenis input percakapan. |
entryAgent |
Hanya output. Agen yang awalnya menangani percakapan. Jika tidak ditentukan, percakapan akan ditangani oleh agen root. Format: |
deployment |
Hanya output. Deployment aplikasi yang digunakan untuk memproses percakapan. Format: |
appVersion |
Hanya output. Versi aplikasi yang digunakan untuk memproses percakapan. Format: |
languageCode |
Hanya output. Kode bahasa percakapan. |
messages[] |
Tidak digunakan lagi. Gunakan belokan. |
Stempel waktu
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
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 |
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 nano non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif. |
Belok
| Representasi JSON |
|---|
{ "messages": [ { object ( |
| Kolom | |
|---|---|
messages[] |
Opsional. Daftar pesan dalam giliran percakapan, termasuk input pengguna, respons agen, dan peristiwa perantara selama pemrosesan. |
rootSpan |
Opsional. Span root pemrosesan tindakan. |
userIntendedText |
Opsional. Teks kebenaran nyata yang dimaksud dari Penelepon Simulasi (Polysynth). Hanya diisi jika metrik rasio error kata diaktifkan. |
Pesan
| Representasi JSON |
|---|
{
"role": string,
"chunks": [
{
object ( |
| Kolom | |
|---|---|
role |
Opsional. Peran dalam percakapan, misalnya, pengguna, agen. |
chunks[] |
Opsional. Konten pesan sebagai serangkaian potongan. |
eventTime |
Opsional. Stempel waktu saat pesan dikirim atau diterima. Tidak boleh digunakan jika pesan adalah bagian dari Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
Bagian
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union data. Membagi data menjadi beberapa bagian. data hanya ada berupa salah satu diantara berikut: |
|
text |
Opsional. Data teks. |
transcript |
Opsional. Transkrip yang terkait dengan audio. |
blob |
Opsional. Data blob. |
payload |
Opsional. Data payload kustom. |
image |
Opsional. Data gambar. |
toolCall |
Opsional. Permintaan eksekusi alat. |
toolResponse |
Opsional. Respons eksekusi alat. |
agentTransfer |
Opsional. Peristiwa transfer agen. |
updatedVariables |
Struct mewakili variabel yang diperbarui dalam percakapan, yang diberi kunci berdasarkan nama variabel. |
defaultVariables |
Struct mewakili variabel default di awal percakapan, yang diberi kunci berdasarkan nama variabel. |
Blob
| Representasi JSON |
|---|
{ "mimeType": string, "data": string } |
| Kolom | |
|---|---|
mimeType |
Wajib. Jenis MIME standar IANA dari data sumber. |
data |
Wajib. Byte mentah blob. String berenkode base64. |
Struct
| Representasi JSON |
|---|
{ "fields": { string: value, ... } } |
| Kolom | |
|---|---|
fields |
Peta nilai yang diketik secara dinamis dan tidak diurutkan. Objek yang berisi daftar pasangan |
FieldsEntry
| Representasi JSON |
|---|
{ "key": string, "value": value } |
| Kolom | |
|---|---|
key |
|
value |
|
Nilai
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union kind. Jenis nilai. kind hanya ada berupa salah satu diantara berikut: |
|
nullValue |
Merepresentasikan |
numberValue |
Merepresentasikan angka JSON. Tidak boleh |
stringValue |
Mewakili string JSON. |
boolValue |
Merepresentasikan boolean JSON (literal |
structValue |
Mewakili objek JSON. |
listValue |
Mewakili array JSON. |
ListValue
| Representasi JSON |
|---|
{ "values": [ value ] } |
| Kolom | |
|---|---|
values[] |
Kolom berulang dari nilai yang diketik secara dinamis. |
Gambar
| Representasi JSON |
|---|
{ "mimeType": string, "data": string, "altText": string } |
| Kolom | |
|---|---|
mimeType |
Wajib. Jenis MIME standar IANA dari data sumber. Jenis gambar yang didukung meliputi: * image/png * image/jpeg * image/webp |
data |
Wajib. Byte mentah gambar. String berenkode base64. |
altText |
Opsional. Teks alternatif untuk gambar. |
ToolCall
| Representasi JSON |
|---|
{ "id": string, "displayName": string, "args": { object }, "parentToolCallId": string, "agentName": string, "targetApp": string, // Union field |
| Kolom | |
|---|---|
id |
Opsional. ID unik panggilan alat. Jika diisi, klien harus menampilkan hasil eksekusi dengan ID yang cocok di |
displayName |
Hanya output. Nama tampilan alat. |
args |
Opsional. Parameter dan nilai input untuk alat dalam format objek JSON. |
parentToolCallId |
Hanya output. ID panggilan alat yang menyebabkan panggilan ini, saat dikeluarkan oleh sub-agen yang bekerja atas nama panggilan induk. Kosong untuk panggilan tingkat teratas. Memungkinkan klien mengelompokkan pekerjaan sub-agen di bawah panggilan yang memulainya, bukan merender setiap langkah sebagai sibling. |
agentName |
Hanya output. Nama agen yang dapat dibaca manusia yang mengeluarkan panggilan ini, misalnya "Contract Architect". Kosong saat agen root mengeluarkannya. |
targetApp |
Hanya output. Aplikasi yang ditargetkan oleh panggilan ini, yang diperoleh asisten dari argumen resource panggilan: nama resource aplikasi, |
Kolom union tool_identifier. ID alat yang akan dieksekusi. Alat ini dapat berupa alat yang dipertahankan atau alat dari toolset. tool_identifier hanya ada berupa salah satu diantara berikut: |
|
tool |
Opsional. Nama alat yang akan dieksekusi. Format: |
toolsetTool |
Opsional. Alat toolset yang akan dijalankan. |
ToolsetTool
| Representasi JSON |
|---|
{ "toolset": string, "toolId": string } |
| Kolom | |
|---|---|
toolset |
Wajib. Nama resource Toolset yang menjadi asal alat ini. Format: |
toolId |
Opsional. ID alat untuk memfilter alat yang akan diambil skemanya. |
ToolResponse
| Representasi JSON |
|---|
{ "id": string, "displayName": string, "response": { object }, "parentToolCallId": string, "agentName": string, "targetApp": string, // Union field |
| Kolom | |
|---|---|
id |
Opsional. ID kecocokan |
displayName |
Hanya output. Nama tampilan alat. |
response |
Wajib. Hasil eksekusi alat dalam format objek JSON. Gunakan kunci "output" untuk menentukan respons alat dan kunci "error" untuk menentukan detail error (jika ada). Jika kunci "output" dan "error" tidak ditentukan, seluruh "respons" akan diperlakukan sebagai hasil eksekusi alat. |
parentToolCallId |
Hanya output. ID panggilan alat yang menyebabkan panggilan ini, saat dikeluarkan oleh sub-agen yang bekerja atas nama panggilan induk. Kosong untuk panggilan tingkat teratas. Memungkinkan klien mengelompokkan pekerjaan sub-agen di bawah panggilan yang memulainya, bukan merender setiap langkah sebagai sibling. |
agentName |
Hanya output. Nama agen yang dapat dibaca manusia yang mengeluarkan panggilan ini, misalnya "Contract Architect". Kosong saat agen root mengeluarkannya. |
targetApp |
Hanya output. Aplikasi yang ditargetkan oleh alat yang dieksekusi; mencerminkan |
Kolom union tool_identifier. ID alat yang dieksekusi. Alat ini dapat berupa alat yang dipertahankan atau alat dari toolset. tool_identifier hanya ada berupa salah satu diantara berikut: |
|
tool |
Opsional. Nama alat yang akan dieksekusi. Format: |
toolsetTool |
Opsional. Alat toolset yang dijalankan. |
AgentTransfer
| Representasi JSON |
|---|
{ "targetAgent": string, "displayName": string } |
| Kolom | |
|---|---|
targetAgent |
Wajib. Agen yang akan menerima transfer percakapan. Agen akan menangani percakapan mulai dari titik ini. Format: |
displayName |
Hanya output. Nama tampilan agen. |
Span
| Representasi JSON |
|---|
{
"name": string,
"startTime": string,
"endTime": string,
"duration": string,
"attributes": {
object
},
"childSpans": [
{
object ( |
| Kolom | |
|---|---|
name |
Hanya output. Nama span. |
startTime |
Hanya output. Waktu mulai span. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
endTime |
Hanya output. Waktu berakhir span. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
duration |
Hanya output. Durasi span. Durasi dalam detik dengan maksimal sembilan digit pecahan, diakhiri dengan ' |
attributes |
Hanya output. Atribut nilai kunci yang terkait dengan span. |
childSpans[] |
Hanya output. Span turunan yang disusun bertingkat di bawah span ini. |
Durasi
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
Detik bertanda dari rentang waktu. Harus dari -315.576.000.000 hingga +315.576.000.000 inklusif. Catatan: batas ini dihitung dari: 60 dtk/mnt * 60 mnt/jam * 24 jam/hari * 365,25 hari/tahun * 10.000 tahun |
nanos |
Pecahan detik bertanda tangan pada resolusi nanodetik dari rentang waktu. Durasi kurang dari satu detik direpresentasikan dengan kolom |
NullValue
Merepresentasikan null JSON.
NullValue adalah sentinel, yang menggunakan enum dengan hanya satu nilai untuk merepresentasikan nilai null untuk gabungan jenis Value.
Kolom jenis NullValue dengan nilai selain 0 dianggap tidak valid. Sebagian besar serializer ProtoJSON akan memunculkan Value dengan null_value yang ditetapkan sebagai null JSON, terlepas dari nilai bilangan bulatnya, sehingga akan melakukan perjalanan pulang pergi ke nilai 0.
| Enum | |
|---|---|
NULL_VALUE |
Nilai null. |
ChannelType
Jenis saluran percakapan.
| Enum | |
|---|---|
CHANNEL_TYPE_UNSPECIFIED |
Jenis saluran tidak ditentukan. |
TEXT |
Percakapan hanya berisi pesan teks antara pengguna akhir dan agen. |
AUDIO |
Percakapan berisi pesan audio antara pengguna akhir dan agen. |
MULTIMODAL |
Pesan multimodal percakapan (misalnya, gambar) antara pengguna akhir dan agen. |
Sumber
Sumber percakapan.
| Enum | |
|---|---|
SOURCE_UNSPECIFIED |
Sumber tidak ditentukan. |
LIVE |
Percakapan berasal dari pengguna akhir langsung. |
SIMULATOR |
Percakapan berasal dari simulator. |
EVAL |
Percakapan berasal dari evaluasi. |
AGENT_TOOL |
Percakapan berasal dari alat agen. Alat agen menjalankan agen dalam sesi terpisah, yang dipertahankan untuk tujuan pengujian dan proses debug. |
InputType
Jenis pesan input.
| Enum | |
|---|---|
INPUT_TYPE_UNSPECIFIED |
Jenis input tidak ditentukan. |
INPUT_TYPE_TEXT |
Input teks. |
INPUT_TYPE_EVENT |
Input peristiwa. |
INPUT_TYPE_AUDIO |
Input audio. |
INPUT_TYPE_IMAGE |
Input gambar. |
INPUT_TYPE_BLOB |
Input blob. |
INPUT_TYPE_TOOL_RESPONSE |
Input respons alat fungsi klien. |
INPUT_TYPE_VARIABLES |
Input variabel. |
Anotasi Alat
Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk tersebut dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim kepada pengguna.
Bersama dengan string judul, petunjuk boolean berikut ditentukan sebagai berikut:
readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: false.destructiveHint: Jika benar, alat dapat melakukan tindakan destruktif. Jika salah, alat hanya dapat melakukan tindakan aditif. Default: true.idempotentHint: Jika benar, memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.openWorldHint: Jika benar, alat dapat berinteraksi dengan 'open world' entitas eksternal. Jika salah, alat hanya dapat berinteraksi dengan entity internal. Misalnya, alat penelusuran web akan bersifat open world, sedangkan alat memori tidak akan bersifat open world.
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌