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 อย่างน้อย 1 รายการ

startTime

string

ไม่บังคับ กรองข้อความที่สร้างขึ้นหลังจากเวลานี้ รูปแบบ: การประทับเวลา ISO 8601

endTime

string

ไม่บังคับ กรองข้อความที่สร้างขึ้นก่อนเวลานี้ รูปแบบ: การประทับเวลา ISO 8601

mentionsMe

boolean

ไม่บังคับ กรองข้อความที่พูดถึงผู้ใช้ที่โทรอย่างชัดเจน

conversationIncludesUser

string

ไม่บังคับ กรองข้อความใน DM และแชทกลุ่มที่มีอีเมลหรือรหัสของผู้ใช้ที่เฉพาะเจาะจง

spaceDisplayNames[]

string

ไม่บังคับ กรองตามรายการชื่อพื้นที่ทำงาน โดยระบบจะจับคู่ชื่อที่แสดงของพื้นที่ทำงานบางส่วน หมายเหตุ: ระบบจะแสดงเฉพาะผลการค้นหา 5 รายการแรก

OrderBy

ระบุลำดับที่ควรส่งคืนผลลัพธ์ โดยค่าเริ่มต้น ระบบจะใช้ RELEVANCE_DESC หากไม่ได้ตั้งค่า is_unread เป็น true มิฉะนั้นระบบจะใช้ CREATE_TIME_DESC

Enum
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

สตริง Unicode อีโมจิหรือชื่ออีโมจิที่กำหนดเอง

count

integer

จำนวนรีแอ็กชันทั้งหมดที่ใช้อีโมจิที่เชื่อมโยง

UserType

ประเภทผู้ใช้ Google Chat

Enum
USER_TYPE_UNSPECIFIED ไม่ระบุ
HUMAN ผู้ใช้ที่เป็นบุคคล
APP ผู้ใช้แอป

แหล่งที่มา

แหล่งที่มาของไฟล์แนบ

Enum
SOURCE_UNSPECIFIED สงวนสิทธิ์
DRIVE_FILE ไฟล์เป็นไฟล์ใน Google ไดรฟ์
UPLOADED_CONTENT ระบบจะอัปโหลดไฟล์ไปยัง Chat

คำอธิบายประกอบเครื่องมือ

คำแนะนำที่ทำลายล้าง: ❌ | คำแนะนำที่ทำซ้ำได้: ✅ | คำแนะนำแบบอ่านอย่างเดียว: ✅ | คำแนะนำแบบโลกเปิด: ❌