MCP Tools Reference: chatmcp.googleapis.com

الأداة: search_messages

البحث عن رسائل Google Chat باستخدام الكلمات الرئيسية وعوامل التصفية تعمل هذه الميزة في جميع المساحات التي يمكن للمستخدم الوصول إليها، أو يمكن حصرها في محادثة معيّنة.

يوضّح المثال التالي كيفية استخدام curl لاستدعاء أداة search_messages MCP.

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

مخطط الإدخال

طلب البحث عن رسائل Google Chat باستخدام الكلمات الرئيسية والفلاتر تعمل هذه الميزة في جميع المساحات التي يمكن للمستخدم الوصول إليها، أو يمكن حصرها في محادثة معيّنة.

SearchMessagesRequest

تمثيل JSON
{
  "searchParameters": {
    object (SearchParameters)
  },
  "orderBy": enum (OrderBy),
  "pageSize": integer,
  "pageToken": string
}
الحقول
searchParameters

object (SearchParameters)

الحقل مطلوب. معلَمات البحث التي سيتم استخدامها في عملية البحث

orderBy

enum (OrderBy)

اختياريّ. تحدّد هذه السمة الترتيب الذي يجب أن تظهر به النتائج. القيم المسموح بها: CREATE_TIME_DESC أو CREATE_TIME_ASC أو RELEVANCE_DESC. ملاحظة: لا يمكن استخدام RELEVANCE_DESC عند استخدام الفلتر is_unread. يتم تلقائيًا استخدام RELEVANCE_DESC إذا لم يتم ضبط is_unread على "صحيح"، وإلا يتم استخدام CREATE_TIME_DESC.

pageSize

integer

اختياريّ. الحد الأقصى لعدد النتائج التي سيتم عرضها (100 كحد أقصى) إذا لم يتم تحديدها، سيتم عرض 25 نتيجة على الأكثر.

pageToken

string

اختياريّ. رمز مميز للصفحة تم تلقّيه من طلب search_messages سابق. يجب تقديم هذا الرمز لاسترداد الصفحة التالية.

SearchParameters

تمثيل JSON
{
  "keywords": [
    string
  ],
  "conversationId": string,
  "sender": string,
  "isUnread": boolean,
  "hasLink": boolean,
  "startTime": string,
  "endTime": string,
  "mentionsMe": boolean,
  "conversationIncludesUser": string,
  "spaceDisplayNames": [
    string
  ]
}
الحقول
keywords[]

string

اختياريّ. مجموعة من الكلمات الرئيسية تُستخدَم لفلترة النتائج.

conversationId

string

اختياريّ. يقتصر البحث على معرّف محادثة معيّن، كما هو معروض من أداة search_conversations. التنسيق: spaces/{ID}

sender

string

اختياريّ. فلترة الرسائل من مستخدم معيّن يمكن استخدام عنوان البريد الإلكتروني أو اسم المورد الخاص بالمُرسِل. يتم تنسيق أسماء موارد المستخدمين على النحو التالي: users/{ID}، حيث يمكن أن يكون {ID} معرّف شخص أو عنوان بريده الإلكتروني.

isUnread

boolean

اختياريّ. فلترة الرسائل التي لم يقرأها المستخدم المتصل

hasLink

boolean

اختياريّ. فلترة الرسائل التي تحتوي على عنوان URL واحد على الأقل

startTime

string

اختياريّ. فلتر للرسائل التي تم إنشاؤها بعد هذا الوقت التنسيق: طابع زمني بتنسيق ISO 8601.

endTime

string

اختياريّ. فلتر للرسائل التي تم إنشاؤها قبل هذا الوقت التنسيق: طابع زمني بتنسيق ISO 8601.

mentionsMe

boolean

اختياريّ. فلترة الرسائل التي تشير صراحةً إلى المستخدم الذي يجري المكالمة

conversationIncludesUser

string

اختياريّ. فلترة الرسائل في الرسائل المباشرة والمحادثات الجماعية التي تتضمّن البريد الإلكتروني أو رقم التعريف الخاص بالمستخدم المحدّد

spaceDisplayNames[]

string

اختياريّ. فلترة النتائج حسب قائمة بأسماء المساحات، ويتم مطابقة الأسماء المعروضة للمساحات جزئيًا ملاحظة: يتم عرض أفضل 5 نتائج مطابقة فقط.

OrderBy

تحدّد هذه السمة الترتيب الذي يجب أن تظهر به النتائج. يتم تلقائيًا استخدام RELEVANCE_DESC إذا لم يتم ضبط is_unread على "صحيح"، وإلا سيتم استخدام CREATE_TIME_DESC.

عمليات التعداد
ORDER_BY_UNSPECIFIED القيمة التلقائية
CREATE_TIME_DESC الترتيب حسب وقت الإنشاء بترتيب تنازلي
RELEVANCE_DESC الترتيب حسب مدى الصلة بالموضوع تنازليًا

مخطط النتائج

استجابة للبحث عن رسائل Google Chat إذا تم ملء next_page_token، يمكن إعادة استدعاء SearchMessages باستخدام هذا الرمز المميز لاسترداد الصفحة التالية من النتائج.

SearchMessagesResponse

تمثيل JSON
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
الحقول
messages[]

object (ChatMessage)

قائمة بكائنات الرسائل التي تطابق معايير البحث، ويتم ترتيبها وفقًا لمَعلمة الطلب order_by.

nextPageToken

string

رمز مميز يمكن إرساله كـ page_token لاسترداد الصفحة التالية. في حال حذف هذا الحقل، لن تكون هناك صفحات لاحقة.

ChatMessage

تمثيل JSON
{
  "messageId": string,
  "threadId": string,
  "plaintextBody": string,
  "sender": {
    object (User)
  },
  "createTime": string,
  "threadedReply": boolean,
  "attachments": [
    {
      object (ChatAttachmentMetadata)
    }
  ],
  "reactionSummaries": [
    {
      object (ReactionSummary)
    }
  ]
}
الحقول
messageId

string

اسم مورد الرسالة التنسيق: spaces/{space}/messages/{message}

threadId

string

سلسلة المحادثات التي تنتمي إليها هذه الرسالة سيكون هذا الحقل فارغًا إذا كانت الرسالة غير مرتبطة بسلسلة محادثات. التنسيق: spaces/{space}/threads/{thread}

plaintextBody

string

تمثّل هذه السمة النص العادي للرسالة.

sender

object (User)

مُرسِل الرسالة

createTime

string

النتائج فقط. الطابع الزمني لوقت إنشاء الرسالة

threadedReply

boolean

تُستخدَم لتحديد ما إذا كانت الرسالة ردًا في سلسلة محادثات.

attachments[]

object (ChatAttachmentMetadata)

المرفقات المضمّنة في الرسالة

reactionSummaries[]

object (ReactionSummary)

ملخّص التفاعلات باستخدام رموز الإيموجي المضمّن في الرسالة

المستخدم

تمثيل JSON
{
  "userId": string,
  "displayName": string,
  "email": string,
  "userType": enum (UserType)
}
الحقول
userId

string

اسم المورد لمستخدم Chat التنسيق: users/{user}

displayName

string

الاسم المعروض لمستخدم Chat

email

string

عنوان البريد الإلكتروني للمستخدم لا تتم تعبئة هذا الحقل إلا عندما يكون نوع المستخدم HUMAN.

userType

enum (UserType)

نوع المستخدم

ChatAttachmentMetadata

تمثيل JSON
{
  "attachmentId": string,
  "filename": string,
  "mimeType": string,
  "source": enum (Source)
}
الحقول
attachmentId

string

اسم مصدر المرفق التنسيق: spaces/{space}/messages/{message}/attachments/{attachment}.

filename

string

اسم المرفق

mimeType

string

نوع المحتوى (نوع MIME)

source

enum (Source)

مصدر المرفق

ReactionSummary

تمثيل JSON
{
  "emoji": string,
  "count": integer
}
الحقول
emoji

string

سلسلة يونيكود الإيموجي أو اسم الإيموجي المخصّص

count

integer

تمثّل هذه السمة إجمالي عدد التفاعلات باستخدام الإيموجي المرتبط.

UserType

نوع مستخدم Google Chat

عمليات التعداد
USER_TYPE_UNSPECIFIED غير محدد
HUMAN مستخدم بشري
APP مستخدم التطبيق

المصدر

مصدر المرفق

عمليات التعداد
SOURCE_UNSPECIFIED محجوزة
DRIVE_FILE الملف هو ملف Google Drive.
UPLOADED_CONTENT يتم تحميل الملف إلى Chat.

التعليقات التوضيحية للأدوات

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌