Alat: search_conversations
Menelusuri percakapan Google Chat (ruang bernama, pesan langsung (DM), atau chat grup) menurut nama tampilan atau peserta untuk menemukan ID percakapan.
Alat ini menelusuri metadata percakapan, BUKAN konten pesan. Untuk menelusuri dalam histori pesan atau menemukan pesan menurut kata kunci/pengirim/stempel waktu, gunakan search_messages.
Jika hanya participants yang diberikan, alat ini akan menemukan pesan langsung 1:1 (jika satu peserta diberikan) atau chat grup (jika beberapa peserta diberikan) yang menyertakan peserta yang ditentukan dan pengguna yang melakukan panggilan.
Jika hanya query yang diberikan, alat ini akan menelusuri percakapan yang kuerinya merupakan substring yang tidak peka huruf besar/kecil dari nama tampilan percakapan.
Jika participants dan query tersedia, alat ini akan menemukan percakapan berdasarkan peserta, lalu memfilternya berdasarkan nama tampilan.
Jika participants maupun query tidak diberikan, alat ini akan mencantumkan semua percakapan yang diikuti oleh pengguna yang melakukan panggilan.
Alat ini hanya mencantumkan percakapan yang diikuti oleh pengguna yang melakukan panggilan.
Menampilkan daftar objek percakapan yang berisi ID percakapan (format: spaces/{space}), nama tampilan, dan jenis percakapan.
PENTING: Daftar conversations yang kosong tidak berarti tidak ada lagi hasil secara keseluruhan. Jika next_page_token ada, lebih banyak halaman dapat diambil. Jika Anda mendapatkan daftar kosong tetapi next_page_token, tanyakan kepada pengguna apakah Anda harus melanjutkan penelusuran.
Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP search_conversations.
| Permintaan Curl |
|---|
curl --location 'https://chatmcp.googleapis.com/mcp/v1' \ --header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_conversations", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Skema Input
SearchConversationsRequest
| Representasi JSON |
|---|
{ "spaceNameQuery": string, "pageSize": integer, "pageToken": string, "participants": [ string ] } |
| Kolom | |
|---|---|
spaceNameQuery |
Opsional. Teks yang akan ditelusuri dalam nama tampilan ruang (kecocokan substring yang tidak peka huruf besar/kecil). |
pageSize |
Opsional. Jumlah maksimum ruang yang akan ditampilkan. Layanan mungkin menampilkan lebih sedikit dari nilai ini. Jika tidak ditentukan, paling banyak 20 ruang akan ditampilkan. Nilai maksimum adalah 1.000; nilai di atas 1.000 akan dikonversi menjadi 1.000. |
pageToken |
Opsional. Token halaman, yang diterima dari panggilan |
participants[] |
Opsional. Daftar alamat email peserta untuk memfilter percakapan, tidak termasuk pemanggil. |
Skema Output
Respons yang berisi daftar percakapan yang cocok.
SearchConversationsResponse
| Representasi JSON |
|---|
{
"conversations": [
{
object ( |
| Kolom | |
|---|---|
conversations[] |
Daftar objek percakapan yang cocok dengan kriteria penelusuran. Setiap percakapan mencakup conversation_id (format: spaces/{space}), display_name, conversation_type, dan last_active_timestamp. |
nextPageToken |
Token yang dapat dikirim sebagai Hanya diisi jika permintaan difilter menurut |
Percakapan
| Representasi JSON |
|---|
{
"conversationId": string,
"displayName": string,
"conversationType": enum ( |
| Kolom | |
|---|---|
conversationId |
ID percakapan (misalnya, "spaces/AAAAAAAAA"). |
displayName |
Nama tampilan percakapan. |
conversationType |
Jenis percakapan (DIRECT_MESSAGE, GROUP_CHAT, atau NAMED_SPACE). |
lastActiveTimestamp |
Waktu terakhir percakapan aktif dalam format ISO 8601. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
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 nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif. |
ConversationType
Menentukan jenis percakapan.
| Enum | |
|---|---|
CONVERSATION_TYPE_UNSPECIFIED |
Tidak ditentukan. |
NAMED_SPACE |
Ruang yang diberi nama. |
GROUP_CHAT |
Chat grup antara 3 orang atau lebih. |
DIRECT_MESSAGE |
Pesan langsung antara dua orang, atau antara orang dan aplikasi Chat. |
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 ini dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim ke pengguna.
Selain 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 (false), alat hanya dapat melakukan tindakan tambahan. Default: true.idempotentHint: Jika benar (true), memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.openWorldHint: Jika benar, alat dapat berinteraksi dengan 'dunia terbuka' entitas eksternal. Jika salah (false), alat hanya dapat berinteraksi dengan entitas internal. Misalnya, alat penelusuran web akan menjadi open world, sedangkan alat memori tidak akan menjadi open world.
Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ✅ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌
Cakupan Otorisasi
Memerlukan salah satu cakupan OAuth berikut:
https://www.googleapis.com/auth/chat.memberships.readonlyhttps://www.googleapis.com/auth/chat.spaceshttps://www.googleapis.com/auth/chat.spaces.readonly