Tool: search_threads
Listet E‑Mail-Konversationen aus dem Gmail-Konto des authentifizierten Nutzers auf.
Mit diesem Tool können Threads anhand eines Abfragestrings gefiltert werden. Außerdem wird die Paginierung unterstützt. Es wird eine Liste von Threads zurückgegeben, einschließlich ihrer IDs und zugehörigen Nachrichten. Jede zugehörige Nachricht enthält Details wie einen Ausschnitt des Inhalts der Nachricht, den Betreff, den Absender und die Empfänger. Mit dem Parameter view wird gesteuert, welche Felder in den zugehörigen Nachrichten ausgefüllt werden. Standardmäßig (oder mit THREAD_VIEW_MINIMAL) sind Betreff und Snippet enthalten. Verwenden Sie THREAD_VIEW_METADATA_ONLY, um Betreff und Snippet auszuschließen. Beachten Sie, dass mit diesem Tool nicht die vollständigen Nachrichtentexte zurückgegeben werden. Verwenden Sie das Tool „get_thread“ mit einer Thread-ID, um den vollständigen Nachrichtentext abzurufen, falls erforderlich. Threads mit ausgeschlossenen Kriterien können weiterhin in den Ergebnissen angezeigt werden. Das liegt daran, dass Gmail zuerst übereinstimmende Nachrichten identifiziert. Wenn Sie beispielsweise nach -is:starred suchen, findet Gmail einen ganzen Thread, wenn er mindestens eine nicht markierte Nachricht enthält, auch wenn andere E‑Mails in derselben Konversation markiert sind.
Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool search_threads aufrufen.
| Curl-Anfrage |
|---|
curl --location 'https://gmailmcp.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_threads", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Eingabeschema
Anfragenachricht für den RPC „SearchThreads“.
SearchThreadsRequest
| JSON-Darstellung |
|---|
{
"pageSize": integer
"pageToken": string
"query": string
"includeTrash": boolean
"view": enum ( |
| Felder | |
|---|---|
Union-Feld Für |
|
pageSize |
Optional. Die maximale Anzahl der zurückzugebenden Threads. Wenn nichts anderes angegeben wird, wird der Wert standardmäßig auf 20 gesetzt. Der maximal zulässige Wert beträgt 50. |
Union-Feld Für |
|
pageToken |
Optional. Seitentoken zum Abrufen einer bestimmten Ergebnisseite in der Liste. Lassen Sie das Feld leer, um die erste Seite abzurufen. Dieser Parameter wird hauptsächlich für die Paginierung verwendet, um Ergebnisse abzurufen, die beim vorherigen |
Union-Feld Für |
|
query |
Optional. Ein Abfragestring zum Filtern der Threads. Anfragen in natürlicher Sprache müssen vor der Verwendung dieses Tools in Gmail-Syntaxanfragen umgewandelt werden. Wenn das Flag nicht angegeben ist, werden alle Threads (mit Ausnahme von Spam und Papierkorb) aufgelistet. Unterstützte Operatoren nach Kategorie: Absender und Empfänger:
Uhrzeit und Datum:
Inhalt:
Labels und Kategorien:
Status:
Größe:
Logik und Gruppierung:
Beispiele:
|
Union-Feld Für |
|
includeTrash |
Optional. Threads aus dem Papierkorb in die Ergebnisse einbeziehen Die Standardeinstellung ist "false". |
Union-Feld Für |
|
view |
Optional. Steuert die Felder, die für Threads in der Threadliste ausgefüllt werden. Die Standardeinstellung ist THREAD_VIEW_MINIMAL. THREAD_VIEW_MINIMAL gibt id, snippet, subject, from, to, cc, date, labelIds zurück. THREAD_VIEW_METADATA_ONLY gibt „id“, „from“, „to“, „cc“, „date“ und „labelIds“ zurück. |
ThreadView
Enumeration zur Steuerung der Felder, die für Threads in der Antwort von „ListThreads“ und „SearchThreads“ ausgefüllt werden.
| Enums | |
|---|---|
THREAD_VIEW_UNSPECIFIED |
Wird für die Abwärtskompatibilität auf THREAD_VIEW_MINIMAL abgebildet. |
THREAD_VIEW_METADATA_ONLY |
Gibt „id“, „from“, „to“, „cc“, „date“ und „labelIds“ zurück. |
THREAD_VIEW_MINIMAL |
Gibt „id“, „snippet“, „subject“, „from“, „to“, „cc“, „date“ und „labelIds“ zurück. |
Ausgabeschema
Antwortnachricht für den RPC „SearchThreads“.
SearchThreadsResponse
| JSON-Darstellung |
|---|
{
"threads": [
{
object ( |
| Felder | |
|---|---|
threads[] |
Liste der Zusammenfassungen von Threads. |
nextPageToken |
Ein Token, das in einem nachfolgenden Aufruf verwendet werden kann, um die nächste Seite mit Threads abzurufen. Wird nur angezeigt, wenn es weitere Ergebnisse gibt. Wenn die Anzahl der Threads, die der Anfrage entsprechen, das Limit für „page_size“ überschreitet, enthält die Antwort ein |
resultCountEstimate |
Die geschätzte Anzahl der Ergebnisse für diese Abfrage. Sie sollte als Untergrenze betrachtet werden. Wenn sie beispielsweise 500 beträgt, kann die Anzahl dem Nutzer als „500+“ gemeldet werden. |
Thread
| JSON-Darstellung |
|---|
{
"id": string,
"messages": [
{
object ( |
| Felder | |
|---|---|
id |
Die eindeutige ID des Threads. |
messages[] |
Eine Liste der Nachrichten im Thread, chronologisch sortiert. |
Nachricht
| JSON-Darstellung |
|---|
{
"id": string,
"snippet": string,
"subject": string,
"sender": string,
"toRecipients": [
string
],
"ccRecipients": [
string
],
"date": string,
"plaintextBody": string,
"attachmentIds": [
string
],
"htmlBody": string,
"attachments": [
{
object ( |
| Felder | |
|---|---|
id |
Die eindeutige ID der Nachricht. |
snippet |
Snippet des Nachrichtentexts. |
subject |
Der aus Headern extrahierte Betreff der Nachricht: |
sender |
E‑Mail-Adresse des Absenders. |
toRecipients[] |
An die E-Mail-Adressen der Empfänger. |
ccRecipients[] |
E-Mail-Adressen der Cc-Empfänger. |
date |
Das Datum der Nachricht im ISO 8601-Format (JJJJ-MM-TT). |
plaintextBody |
Vollständiger Textinhalt, wird nur ausgefüllt, wenn MessageFormat FULL_CONTENT war. |
attachmentIds[] |
Nur Ausgabe. Die Anhänge-IDs werden nur ausgefüllt, wenn MessageFormat FULL_CONTENT war. |
htmlBody |
Der HTML-Inhalt der E-Mail. Wird nur ausgefüllt, wenn MessageFormat FULL_CONTENT ist. |
attachments[] |
Nur Ausgabe. Die Anhänge werden nur ausgefüllt, wenn MessageFormat FULL_CONTENT war. |
labelIds[] |
Die IDs der Labels, die an die Nachricht angehängt sind. Enthält IDs von Nutzerlabels und Standard-Systemlabels, die auf |
AttachmentMetadata
| JSON-Darstellung |
|---|
{ "id": string, "mimeType": string, "filename": string } |
| Felder | |
|---|---|
id |
Nur Ausgabe. Die ID des Anhangs. |
mimeType |
Der MIME-Typ des Anhangs. |
filename |
Der Dateiname des Anhangs. |
Tool-Annotationen
Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Hinweis „Nur lesen“: ✅ | Hinweis „Offene Welt“: ❌
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
https://mail.google.com/https://www.googleapis.com/auth/gmail.modifyhttps://www.googleapis.com/auth/gmail.readonly