MCP Tools Reference: gmailmcp.googleapis.com

Araç: search_threads

Kimliği doğrulanmış kullanıcının Gmail hesabındaki e-posta yazışmalarını listeler.

Bu araç, ileti dizilerini sorgu dizesine göre filtreleyebilir ve sayfalara ayırmayı destekler. Kimlikleri ve ilgili iletileri de içeren bir ileti dizisi listesi döndürür. İlgili her iletide, e-posta mesajının snippet'i, konu, gönderen, alıcılar vb. gibi ayrıntılar yer alır. Bu araç, e-posta mesajlarının tamamını döndürmez. Gerekirse e-posta mesajının tamamını getirmek için ileti dizisi kimliğiyle birlikte "get_thread" aracını kullanın. Hariç tutulan ölçütlere sahip ileti dizileri sonuçlarda görünmeye devam edebilir. Bunun nedeni, Gmail'in önce eşleşen iletileri tanımlamasıdır. Örneğin, -is:starred ifadesini aradığınızda Gmail, aynı ileti dizisindeki diğer e-postalar yıldızlı olsa bile yıldızsız en az bir ileti içeriyorsa ileti dizisinin tamamını bulur.

Aşağıdaki örnekte, curl kullanılarak search_threads MCP aracının nasıl çağrılacağı gösterilmektedir.

Curl Request
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "search_threads",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Giriş Şeması

SearchThreads RPC için istek mesajı.

SearchThreadsRequest

JSON gösterimi
{

  "pageSize": integer

  "pageToken": string

  "query": string

  "includeTrash": boolean
}
Alanlar

_page_size birleşik alanı.

_page_size aşağıdakilerden yalnızca biri olabilir:

pageSize

integer

İsteğe bağlı. Döndürülecek maksimum ileti dizisi sayısı. Belirtilmemişse varsayılan olarak 20 olur. İzin verilen en yüksek değer 50'dir.

_page_token birleşik alanı.

_page_token aşağıdakilerden yalnızca biri olabilir:

pageToken

string

İsteğe bağlı. Listedeki belirli bir sonuç sayfasını almak için kullanılan sayfa jetonu. İlk sayfayı getirmek için boş bırakın. Bu parametre, özellikle sorguyla eşleşen iş parçacığı sayısı page_size sınırını aştığında, önceki SearchThreads çağrısının kaldığı yerden sonuç getirmeye devam etmek için öncelikle sayfalara ayırma işleminde kullanılır.

_query birleşik alanı.

_query aşağıdakilerden yalnızca biri olabilir:

query

string

İsteğe bağlı. İş parçacıklarını filtrelemek için kullanılan sorgu dizesi. Bu aracı kullanmak için doğal dil sorgularının önceden Gmail söz dizimi sorgularına dönüştürülmesi gerekir. Atlanırsa tüm ileti dizileri (varsayılan olarak spam ve çöp kutusu hariç) listelenir.

Kategoriye Göre Desteklenen Operatörler:

Gönderen ve Alıcı: from: - Belirli bir kişiden gönderilenler. Kime: - Belirli bir kişiye gönderilen e-postalar. cc: - Cc alanındaki belirli kişiler. bcc: - Bcc alanındaki belirli kişiler. deliveredto: - Belirli bir adrese teslim edilenler. list: - Belirli bir posta listesinden.

Saat ve Tarih: after:YYYY/MM/DD / newer:YYYY/MM/DD - Belirli bir tarihten sonra alınanlar. before:YYYY/AA/GG / older:YYYY/AA/GG: Belirli bir tarihten önce alınan iletiler. older_than: - Belirli bir süreden eski (ör. 1y, 2d). newer_than: - Bir süreden daha yeni.

İçerik: konu: - Konu satırındaki kelimeler. has: - Belirli içerik türlerine (ek, Drive, YouTube, doküman) sahip. filename: - Belirli bir ada veya türe sahip ek. "<kelime/kelime öbeği>": Bir kelime veya kelime öbeğini eksiksiz olarak arama (ör. "tatil", "yılbaşı tatili"). + - Bir kelimeyi tam olarak eşleştirin. (ör. +tatil, +tekboynuzlu) rfc822msgid: - Belirli ileti kimliği üstbilgisi. AROUND - Birbirine yakın kelimeleri bulur (ör. holiday AROUND 10 vacation).

Etiketler ve Kategoriler: label: - Belirli bir etiket altında. Bu araç, görünen adları değil, plak şirketi kimliklerini kabul eder. Kimliği almak için list_labels aracını kullanın. category: - Bir kategoride (birincil, sosyal, tanıtımlar, güncellemeler, forumlar, rezervasyonlar, satın alma işlemleri). in:

Durum: is: - Duruma göre arama yapın (önemli, yıldızlı, okunmamış, okunmuş, sessize alınmış).

Boyut: size: - Bayt cinsinden belirli boyut. larger: / smaller: - Bir boyuttan büyük veya küçük (ör. 10 MB için 10M).

Mantık ve Gruplandırma: VE - Tüm ölçütlerle eşleşir (varsayılan davranış). OR veya { } - Bir veya daha fazla ölçütle eşleşir (ör. from:amy OR from:david, {from:amy from:david}). - (eksi işareti) - Ölçütleri hariç tutmak için kullanılır (ör. -film). ( ) - Birden fazla arama terimini gruplandırın (ör. subject:(dinner film)).

Örnekler: "subject:OneMCP Update" "from:user@example.com" "to:user2@example.com AND newer_than:7d" "project proposal has:attachment" "is:unread -in:draft"

_include_trash birleşik alanı.

_include_trash aşağıdakilerden yalnızca biri olabilir:

includeTrash

boolean

İsteğe bağlı. ÇÖP KUTUSU'ndaki taslakları sonuçlara dahil et. Varsayılan olarak false değerine ayarlanır.

Çıkış şeması

SearchThreads RPC'si için yanıt mesajı.

SearchThreadsResponse

JSON gösterimi
{
  "threads": [
    {
      object (Thread)
    }
  ],
  "nextPageToken": string
}
Alanlar
threads[]

object (Thread)

Mesaj dizisi özetlerinin listesi.

nextPageToken

string

Bir sonraki ileti dizisi sayfasını almak için sonraki bir çağrıda kullanılabilecek jeton. Yalnızca daha fazla sonuç varsa gösterilir. Sorguyla eşleşen ileti dizilerinin sayısı page_size sınırını aşarsa yanıtta next_page_token yer alır. Sonraki sonuç sayfasını almak için bu jetonu sonraki SearchThreadsRequest öğesinin page_token alanına iletin.

İplik

JSON gösterimi
{
  "id": string,
  "messages": [
    {
      object (Message)
    }
  ]
}
Alanlar
id

string

İş parçacığının benzersiz tanımlayıcısı.

messages[]

object (Message)

İleti dizisindeki iletilerin kronolojik olarak sıralanmış listesi.

Mesaj

JSON gösterimi
{
  "id": string,
  "snippet": string,
  "subject": string,
  "sender": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "date": string,
  "plaintextBody": string,
  "attachmentIds": [
    string
  ]
}
Alanlar
id

string

Mesajın benzersiz tanımlayıcısı.

snippet

string

E-posta mesajının snippet'i.

subject

string

Üstbilgilerden çıkarılan ileti konusu:

sender

string

Gönderenin e-posta adresi.

toRecipients[]

string

Alıcı e-posta adreslerine

ccRecipients[]

string

CC alıcılarının e-posta adresleri.

date

string

İletinin ISO 8601 biçimindeki tarihi (YYYY-AA-GG).

plaintextBody

string

İletinin tam içeriği. Yalnızca MessageFormat FULL_CONTENT ise doldurulur.

attachmentIds[]

string

Yalnızca çıkış. Ek kimlikleri, yalnızca MessageFormat FULL_CONTENT ise doldurulur.

Araç Ek Açıklamaları

Yıkıcı İpucu: ❌ | İdempotent İpucu: ✅ | Salt Okunur İpucu: ✅ | Açık Dünya İpucu: ❌