Araç: search_conversations
Görüşme kimliklerini bulmak için Google Chat görüşmelerini arar. Adlandırılmış alanlar, görünen ada (space_name_query) göre bulunur. Doğrudan mesajlar (DM'ler) ve grup sohbetleri yalnızca katılımcı e-posta adreslerine (participants) göre bulunur.
Bu araç, mesaj içeriklerini DEĞİL, görüşme meta verilerini arar. Mesaj geçmişinde arama yapmak veya anahtar kelimeye/gönderene/zaman damgasına göre mesaj bulmak için search_messages kullanın.
Yalnızca participants sağlanırsa bu araç, belirtilen katılımcıları ve arayan kullanıcıyı içeren bire bir doğrudan mesajları (bir katılımcı sağlanırsa) veya grup sohbetlerini (birden fazla katılımcı sağlanırsa) bulur. Adlandırılmış alanlar döndürülmez.
Yalnızca space_name_query sağlanırsa bu araç, sorgunun alanın görünen adının büyük/küçük harfe duyarlı olmayan bir alt dizesi olduğu YALNIZCA adlandırılmış alanları arar. DM'ler ve grup sohbetleri hiçbir zaman döndürülmez. Bu nedenle, bir kişiyle DM bulmak için kişinin adını space_name_query olarak iletmeyin. Bunun yerine, kişinin e-posta adresini arayın ve participants olarak iletin.
Hem participants hem de space_name_query sağlanırsa bu araç, katılımcılara göre DM'leri veya grup sohbetlerini bulur ve ardından bunları görünen ada göre filtreler.
participants veya space_name_query sağlanmazsa bu araç, arayan kullanıcının üyesi olduğu adlandırılmış alanları listeler (DM'ler ve grup sohbetleri dahil değildir).
Bu araç yalnızca arayan kullanıcının üyesi olduğu görüşmeleri listeler.
Görüşme kimliklerini (biçim: spaces/{space}), görünen adları ve görüşme türlerini içeren görüşme nesnelerinin listesini döndürür.
ÖNEMLİ: conversations listesinin boş olması, genel olarak başka sonuç olmadığı anlamına gelmez. next_page_token varsa daha fazla sayfa getirilebilir. Boş bir liste alırsanız ancak next_page_token varsa kullanıcıya aramaya devam edip etmeyeceğinizi sorun.
Aşağıdaki kod örneğinde, search_conversations MCP aracını çağırmak için curl öğesinin nasıl kullanılacağı gösterilmektedir.
| Curl İsteği |
|---|
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 }' |
Giriş şeması
SearchConversationsRequest
| JSON gösterimi |
|---|
{ "spaceNameQuery": string, "pageSize": integer, "pageToken": string, "participants": [ string ] } |
| Alanlar | |
|---|---|
spaceNameQuery |
İsteğe bağlıdır. Görüşme görünen adlarında aranacak metin (büyük/küçük harfe duyarlı olmayan alt dize eşleşmesi).
|
pageSize |
İsteğe bağlıdır. Döndürülecek maksimum alan sayısı. Hizmet, bu değerden daha az sonuç döndürebilir. Belirtilmezse en fazla 20 alan döndürülür. Maksimum değer 1.000'dir. 1.000'in üzerindeki değerler 1.000'e zorlanır. |
pageToken |
İsteğe bağlıdır. Önceki bir |
participants[] |
İsteğe bağlıdır. Görüşmeleri filtrelemek için katılımcıların e-posta adreslerinin listesi (arayan hariç). Doğrudan mesajları (DM'ler) ve grup sohbetlerini bulmak için bu yöntemi kullanın: Tek bir katılımcı, o kişiyle olan bire bir DM'yi döndürür ve birden fazla katılımcı, hepsini içeren grup sohbetlerini döndürür. Bu alan ayarlandığında adlandırılmış alanlar döndürülmez. |
Çıkış şeması
Eşleşen görüşmelerin listesini içeren yanıt.
SearchConversationsResponse
| JSON gösterimi |
|---|
{
"conversations": [
{
object ( |
| Alanlar | |
|---|---|
conversations[] |
Arama ölçütleriyle eşleşen görüşme nesnelerinin listesi. Her görüşme; conversation_id (biçim: spaces/{space}), display_name, conversation_type ve last_active_timestamp bilgilerini içerir. |
nextPageToken |
Sonraki sayfayı almak için Yalnızca istek |
Sohbet
| JSON gösterimi |
|---|
{
"conversationId": string,
"displayName": string,
"conversationType": enum ( |
| Alanlar | |
|---|---|
conversationId |
Görüşmenin kimliği (ör. "spaces/AAAAAAAAA"). |
displayName |
Görüşmenin görünen adı. Adlandırılmış alanlar için bu, alan adıdır. Bire bir doğrudan mesajlarda bu, diğer katılımcının adıdır. Adsız grup sohbetleri için bu, üyelerin adlarına göre oluşturulan bir addır. |
conversationType |
Görüşme türü (DIRECT_MESSAGE, GROUP_CHAT veya NAMED_SPACE). |
lastActiveTimestamp |
Görüşmenin son etkin olduğu zaman (ISO 8601 biçiminde). Zaman damgasında RFC 3339 kullanılır. Yani oluşturulan çıkış her zaman Z ile normalleştirilir ve 0, 3, 6 veya 9 kesirli basamak kullanılır. "Z" dışındaki zaman farkları da kabul edilir. Örnekler: |
Zaman damgası
| JSON gösterimi |
|---|
{ "seconds": string, "nanos": integer } |
| Alanlar | |
|---|---|
seconds |
Unix epoch 1970-01-01T00:00:00Z'den bu yana geçen UTC zamanının saniye cinsinden değerini temsil eder. -62135596800 ile 253402300799 (başlangıç ve bitiş değerleri dahil) arasında olmalıdır (0001-01-01T00:00:00Z ile 9999-12-31T23:59:59Z aralığına karşılık gelir). |
nanos |
Nanosaniye çözünürlüğünde, saniyenin negatif olmayan kesirleri. Bu alan, sürenin nanosaniye kısmıdır, saniyeye alternatif değildir. Kesirli negatif saniye değerleri, zamanı ileriye doğru sayan negatif olmayan nanos değerlerine sahip olmalıdır. 0 ile 999.999.999 (her iki değer de dahil) arasında olmalıdır. |
ConversationType
Görüşmenin türünü tanımlar.
| Sıralamalar | |
|---|---|
CONVERSATION_TYPE_UNSPECIFIED |
Belirtilmedi. |
NAMED_SPACE |
Adlandırılmış bir alan. |
GROUP_CHAT |
3 veya daha fazla kişi arasında yapılan grup sohbeti. |
DIRECT_MESSAGE |
İki kişi veya bir kişi ile bir Chat uygulaması arasındaki doğrudan mesaj. |
Araç Notları
Araç ek açıklamaları, belirli bir aracın temel riskini açıklamak için MCP istemcilerine gönderilir. Çoğu istemci bu ipuçlarını güvenilir olarak değerlendirmez ancak kullanıcıya ne zaman onay istemi gönderileceğine karar vermek için kullanılabilir.
Başlık dizesiyle birlikte aşağıdaki boole ipuçları şu şekilde tanımlanır:
readOnlyHint: Doğru ise araç, ortamını değiştirmez. Varsayılan: false.destructiveHint: Doğru ise araç, yıkıcı işlemler gerçekleştirebilir. Yanlış ise araç yalnızca ekleme işlemleri gerçekleştirebilir. Varsayılan: true.idempotentHint: Doğru ise aracın aynı bağımsız değişkenlerle tekrar tekrar çağrılması, ortamı üzerinde ek bir etki yaratmaz. Varsayılan: false.openWorldHint: Doğru ise araç, harici varlıkların "açık dünyası" ile etkileşim kurabilir. Yanlış ise araç yalnızca dahili varlıklarla etkileşim kurabilir. Örneğin, web arama aracı açık dünya olurken bellek aracı açık dünya olmaz.
Yıkıcı İpucu: ❌ | Idempotent İpucu: ✅ | Salt Okunur İpucu: ✅ | Açık Dünya İpucu: ❌
Yetkilendirme Kapsamları
Aşağıdaki OAuth kapsamlarından birini gerektirir:
https://www.googleapis.com/auth/chat.memberships.readonlyhttps://www.googleapis.com/auth/chat.spaceshttps://www.googleapis.com/auth/chat.spaces.readonly