الأداة: search_threads
تعرض هذه الطريقة سلاسل الرسائل الإلكترونية من حساب Gmail الخاص بالمستخدم الذي تمّت مصادقته.
يمكن لهذه الأداة فلترة سلاسل المحادثات استنادًا إلى سلسلة طلب بحث وتتيح تقسيم المحتوى إلى صفحات. تعرض هذه الطريقة قائمة بسلاسل المحادثات، بما في ذلك أرقام التعريف والرسائل ذات الصلة. تحتوي كل رسالة ذات صلة على تفاصيل مثل مقتطف من نص الرسالة والموضوع والمُرسِل والمستلِمين وما إلى ذلك. يُرجى العِلم أنّ هذه الأداة لا تعرض نصوص الرسائل الكاملة، لذا استخدِم الأداة get_thread مع رقم تعريف سلسلة المحادثات لاسترداد نص الرسالة الكامل إذا لزم الأمر. قد تظل سلاسل المحادثات التي تتضمّن معايير مستبعدة تظهر في النتائج. يحدث ذلك لأنّ Gmail يحدّد الرسائل المطابقة أولاً. على سبيل المثال، إذا بحثت عن -is:starred، سيعرض لك Gmail سلسلة محادثات بأكملها لمجرد أنها تتضمن رسالة واحدة على الأقل غير مميزة بنجمة، حتى وإن كانت بقية الرسائل في تلك المحادثة مميزة بنجمة.
يوضّح المثال التالي كيفية استخدام curl لاستدعاء أداة search_threads MCP.
| طلب Curl |
|---|
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 }' |
مخطط الإدخال
طلب رسالة لإجراء SearchThreads RPC.
SearchThreadsRequest
| تمثيل JSON |
|---|
{ "pageSize": integer "pageToken": string "query": string "includeTrash": boolean } |
| الحقول | |
|---|---|
حقل الربط يمكن أن يكون التعليق |
|
pageSize |
اختياريّ. الحدّ الأقصى لعدد سلاسل المحادثات المطلوب عرضها إذا لم يتم تحديدها، تكون القيمة التلقائية 20. الحدّ الأقصى المسموح به هو 50. |
حقل الربط يمكن أن يكون التعليق |
|
pageToken |
اختياريّ. رمز مميّز للصفحة لاسترداد صفحة معيّنة من النتائج في القائمة. اترك الحقل فارغًا لجلب الصفحة الأولى. يُستخدَم هذا المعرّف بشكل أساسي لتقسيم النتائج على عدّة صفحات من أجل مواصلة جلب النتائج من حيث توقّفت المكالمة السابقة |
حقل الربط يمكن أن يكون التعليق |
|
query |
اختياريّ. سلسلة طلب بحث لفلترة سلاسل المحادثات يجب تحويل طلبات البحث باللغة الطبيعية مسبقًا إلى طلبات بحث بصيغة Gmail لاستخدام هذه الأداة. في حال عدم تحديد هذا الخيار، سيتم إدراج جميع سلاسل المحادثات (باستثناء الرسائل غير المرغوب فيها والمحذوفة تلقائيًا). عوامل التشغيل المتاحة حسب الفئة: المُرسِل والمستلِم: from: الوقت والتاريخ: after:YYYY/MM/DD / newer:YYYY/MM/DD - تم استلامها بعد تاريخ معيّن before:YYYY/MM/DD / older:YYYY/MM/DD - تم استلامها قبل تاريخ معيّن older_than: المحتوى: subject: التصنيفات والفئات: label: الحالة: is: الحجم: size: المنطق والتجميع: AND - مطابقة جميع المعايير (السلوك التلقائي) OR أو { } - تطابق معيارًا واحدًا أو أكثر (مثلاً، from:سليم OR from:إبراهيم أو {from:سليم from:إبراهيم}). علامة الطرح (-) - استبعاد معايير (مثلاً، -فيلم) ( ) - لجمع عبارات بحث متعددة (مثلاً، subject:(dinner film)). أمثلة: "subject:OneMCP Update" "from:user@example.com" "to:user2@example.com AND newer_than:7d" "project proposal has:attachment" "is:unread -in:draft" |
حقل الربط يمكن أن يكون التعليق |
|
includeTrash |
اختياريّ. تضمين المسودّات من المهملات في النتائج القيمة التلقائية هي "خطأ". |
مخطط النتائج
رسالة الردّ على استدعاء إجراء SearchThreads عن بُعد
SearchThreadsResponse
| تمثيل JSON |
|---|
{
"threads": [
{
object ( |
| الحقول | |
|---|---|
threads[] |
قائمة بملخّصات سلاسل المحادثات |
nextPageToken |
رمز مميّز يمكن استخدامه في طلب لاحق لاسترداد الصفحة التالية من سلاسل المحادثات. يجب عرضها فقط إذا كانت هناك نتائج إضافية. إذا كان عدد سلاسل المحادثات المطابقة لطلب البحث يتجاوز الحدّ الأقصى المسموح به في page_size، سيتضمّن الردّ |
Thread
| تمثيل JSON |
|---|
{
"id": string,
"messages": [
{
object ( |
| الحقول | |
|---|---|
id |
المعرّف الفريد لسلسلة المحادثات. |
messages[] |
قائمة بالرسائل في سلسلة المحادثات، مرتبة حسب التسلسل الزمني |
رسالة
| تمثيل JSON |
|---|
{ "id": string, "snippet": string, "subject": string, "sender": string, "toRecipients": [ string ], "ccRecipients": [ string ], "date": string, "plaintextBody": string, "attachmentIds": [ string ] } |
| الحقول | |
|---|---|
id |
المعرّف الفريد للرسالة. |
snippet |
مقتطف من نص الرسالة |
subject |
موضوع الرسالة المستخرَج من العناوين: |
sender |
عنوان البريد الإلكتروني للمُرسِل |
toRecipients[] |
إلى عناوين البريد الإلكتروني للمستلِمين |
ccRecipients[] |
عناوين البريد الإلكتروني للمستلِمين في الحقل "نسخة إلى" |
date |
تاريخ الرسالة بتنسيق ISO 8601 (YYYY-MM-DD). |
plaintextBody |
محتوى الرسالة الكامل، ويتم ملؤه فقط إذا كانت قيمة MessageFormat هي FULL_CONTENT. |
attachmentIds[] |
النتائج فقط. معرّفات المرفقات، ويتم ملؤها فقط إذا كانت قيمة MessageFormat هي FULL_CONTENT. |
التعليقات التوضيحية للأدوات
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌