MCP Tools Reference: chatmcp.googleapis.com

टूल: search_messages

यह कुकी, कीवर्ड और फ़िल्टर का इस्तेमाल करके Google Chat के मैसेज खोजती है. यह सुविधा उन सभी स्पेस में काम करती है जिन पर उपयोगकर्ता के पास ऐक्सेस है. इसके अलावा, इसे किसी खास बातचीत के लिए भी इस्तेमाल किया जा सकता है.

यहां दिए गए सैंपल में, curl का इस्तेमाल करके search_messages एमसीपी टूल को चालू करने का तरीका बताया गया है.

कर्ल अनुरोध
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 फ़िल्टर का इस्तेमाल किया जाता है. डिफ़ॉल्ट रूप से, अगर is_unread को सही पर सेट नहीं किया गया है, तो RELEVANCE_DESC का इस्तेमाल किया जाता है. अगर ऐसा नहीं है, तो 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

ज़रूरी नहीं. ऐसे मैसेज के लिए फ़िल्टर जिनमें कम से कम एक यूआरएल शामिल हो.

startTime

string

ज़रूरी नहीं. इस समय के बाद बनाए गए मैसेज के लिए फ़िल्टर. फ़ॉर्मैट: आईएसओ 8601 टाइमस्टैंप.

endTime

string

ज़रूरी नहीं. इस समय से पहले बनाए गए मैसेज के लिए फ़िल्टर. फ़ॉर्मैट: आईएसओ 8601 टाइमस्टैंप.

mentionsMe

boolean

ज़रूरी नहीं. ऐसे मैसेज के लिए फ़िल्टर जिनमें कॉल करने वाले व्यक्ति का साफ़ तौर पर ज़िक्र किया गया हो.

conversationIncludesUser

string

ज़रूरी नहीं. DM और ग्रुप चैट में मौजूद उन मैसेज को फ़िल्टर करें जिनमें उपयोगकर्ता का ईमेल पता या आईडी शामिल है.

spaceDisplayNames[]

string

ज़रूरी नहीं. स्पेस के नामों की सूची के हिसाब से फ़िल्टर करें. स्पेस के डिसप्ले नेम, कुछ हद तक मेल खाते हैं. ध्यान दें: सिर्फ़ सबसे ऊपर के पांच मैच दिखाए जाते हैं.

OrderBy

इससे यह तय होता है कि नतीजे किस क्रम में दिखाए जाने चाहिए. डिफ़ॉल्ट रूप से, RELEVANCE_DESC का इस्तेमाल तब किया जाता है, जब is_unread को true पर सेट नहीं किया जाता. ऐसा न होने पर, CREATE_TIME_DESC का इस्तेमाल किया जाता है.

Enums
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 इस्तेमाल करने वाले व्यक्ति का टाइप.

Enums
USER_TYPE_UNSPECIFIED नहीं बताया गया है
HUMAN कोई इंसान.
APP ऐप्लिकेशन का उपयोगकर्ता.

स्रोत

अटैचमेंट का सोर्स.

Enums
SOURCE_UNSPECIFIED रिज़र्व किया गया.
DRIVE_FILE फ़ाइल, Google Drive में मौजूद कोई फ़ाइल है.
UPLOADED_CONTENT फ़ाइल को Chat पर अपलोड किया जाता है.

टूल एनोटेशन

बदलाव करने से जुड़ी जानकारी: ❌ | एक ही बार लागू होने से जुड़ी जानकारी: ✅ | सिर्फ़ पढ़ने से जुड़ी जानकारी: ✅ | ओपन वर्ल्ड से जुड़ी जानकारी: ❌