เครื่องมือ: search_conversations
ค้นหาการสนทนาใน Google Chat (พื้นที่ทำงานที่มีชื่อ ข้อความส่วนตัว (DM) หรือแชทเป็นกลุ่ม) ตามชื่อที่แสดงหรือผู้เข้าร่วมเพื่อค้นหารหัสการสนทนา
เครื่องมือนี้จะค้นหาข้อมูลเมตาของการสนทนา ไม่ใช่เนื้อหาข้อความ หากต้องการค้นหาภายในประวัติข้อความหรือค้นหาข้อความตามคีย์เวิร์ด/ผู้ส่ง/การประทับเวลา ให้ใช้ search_messages
หากระบุเฉพาะ participants เครื่องมือนี้จะค้นหาข้อความส่วนตัวแบบ 1:1 (หากระบุผู้เข้าร่วม 1 คน) หรือแชทเป็นกลุ่ม (หากระบุผู้เข้าร่วมหลายคน) ที่มีผู้เข้าร่วมที่ระบุและผู้ใช้ที่โทร
หากระบุเฉพาะ query เครื่องมือนี้จะค้นหาการสนทนาที่คำค้นหาเป็นสตริงย่อยที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ของชื่อที่แสดงของการสนทนา
หากระบุทั้ง participants และ query เครื่องมือนี้จะค้นหาการสนทนาตามผู้เข้าร่วม แล้วกรองตามชื่อที่แสดง
หากไม่ได้ระบุทั้ง participants และ query เครื่องมือนี้จะแสดงรายการการสนทนาทั้งหมดที่ผู้ใช้ที่โทรเป็นสมาชิกอยู่
เครื่องมือนี้จะแสดงเฉพาะการสนทนาที่ผู้ใช้ที่โทรเป็นสมาชิกอยู่เท่านั้น
แสดงรายการออบเจ็กต์การสนทนาที่มีรหัสการสนทนา (รูปแบบ: spaces/{space}) ชื่อที่แสดง และประเภทการสนทนา
สำคัญ: รายการ conversations ที่ว่างเปล่าไม่ได้หมายความว่าไม่มีผลลัพธ์อีกต่อไปโดยรวม หากมี next_page_token ระบบจะดึงข้อมูลหน้าเว็บเพิ่มเติมได้ หากคุณได้รับรายการที่ว่างเปล่าแต่มี next_page_token ให้ถามผู้ใช้ว่าคุณควรค้นหาต่อหรือไม่
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ curl เพื่อเรียกใช้เครื่องมือ MCP search_conversations
| คำขอ Curl |
|---|
curl --location 'https://chatmcp.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_conversations", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
สคีมาอินพุต
SearchConversationsRequest
| การแสดง JSON |
|---|
{ "spaceNameQuery": string, "pageSize": integer, "pageToken": string, "participants": [ string ] } |
| ฟิลด์ | |
|---|---|
spaceNameQuery |
ไม่บังคับ ข้อความที่จะค้นหาภายในชื่อที่แสดงของพื้นที่ทำงาน (การจับคู่สตริงย่อยที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่) |
pageSize |
ไม่บังคับ จำนวนพื้นที่ทำงานสูงสุดที่จะแสดงผล บริการอาจแสดงผลลัพธ์น้อยกว่าค่านี้ หากไม่ระบุ ระบบจะแสดงผลพื้นที่ทำงานไม่เกิน 20 รายการ ค่าสูงสุดคือ 1,000 โดยค่าที่มากกว่า 1,000 จะถูกบังคับให้เป็น 1,000 |
pageToken |
ไม่บังคับ โทเค็นหน้าเว็บที่ได้รับจากการเรียกใช้ |
participants[] |
ไม่บังคับ รายการอีเมลของผู้เข้าร่วมเพื่อกรองการสนทนา โดยไม่รวมผู้โทร |
สคีมาเอาต์พุต
การตอบกลับที่มีรายการการสนทนาที่ตรงกัน
SearchConversationsResponse
| การแสดง JSON |
|---|
{
"conversations": [
{
object ( |
| ช่อง | |
|---|---|
conversations[] |
รายการออบเจ็กต์การสนทนาที่ตรงกับเกณฑ์การค้นหา การสนทนาแต่ละรายการประกอบด้วย conversation_id (รูปแบบ: spaces/{space}), display_name, conversation_type และ last_active_timestamp |
nextPageToken |
โทเค็นที่ส่งเป็น จะป้อนข้อมูลก็ต่อเมื่อมีการกรองคำขอตาม |
การสนทนา
| การแสดง JSON |
|---|
{
"conversationId": string,
"displayName": string,
"conversationType": enum ( |
| ช่อง | |
|---|---|
conversationId |
รหัสของการสนทนา (เช่น "spaces/AAAAAAAAA") |
displayName |
ชื่อที่แสดงของการสนทนา สำหรับพื้นที่ทำงานที่มีชื่อ ค่าจะเป็นชื่อพื้นที่ทำงาน สำหรับข้อความส่วนตัวแบบ 1:1 จะเป็นชื่อของผู้เข้าร่วมอีกคน สำหรับแชทเป็นกลุ่มที่ไม่มีชื่อ ชื่อนี้จะเป็นชื่อที่สร้างขึ้นตามชื่อของสมาชิก |
conversationType |
ประเภทการสนทนา (DIRECT_MESSAGE, GROUP_CHAT หรือ NAMED_SPACE) |
lastActiveTimestamp |
เวลาที่ใช้งานล่าสุดของการสนทนาในรูปแบบ ISO 8601 ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 0, 3, 6 หรือ 9 หลัก นอกจากนี้ ระบบยังยอมรับออฟเซ็ตอื่นๆ นอกเหนือจาก "Z" ด้วย เช่น |
การประทับเวลา
| การแสดง JSON |
|---|
{ "seconds": string, "nanos": integer } |
| ช่อง | |
|---|---|
seconds |
แสดงวินาทีของเวลา UTC นับตั้งแต่ Unix Epoch 1970-01-01T00:00:00Z ต้องอยู่ระหว่าง -62135596800 ถึง 253402300799 (ซึ่งสอดคล้องกับ 0001-01-01T00:00:00Z ถึง 9999-12-31T23:59:59Z) |
nanos |
เศษส่วนของวินาทีที่ไม่เป็นค่าลบที่ความละเอียดระดับนาโนวินาที ช่องนี้เป็นส่วนนาโนวินาทีของระยะเวลา ไม่ใช่ทางเลือกแทนวินาที ค่าที่สองที่เป็นลบซึ่งมีเศษส่วนยังคงต้องมีค่านาโนที่ไม่เป็นลบซึ่งนับเวลาไปข้างหน้า ต้องอยู่ระหว่าง 0 ถึง 999,999,999 |
ConversationType
กำหนดประเภทของการสนทนา
| Enum | |
|---|---|
CONVERSATION_TYPE_UNSPECIFIED |
ไม่ระบุ |
NAMED_SPACE |
พื้นที่ทำงานที่มีชื่อ |
GROUP_CHAT |
แชทเป็นกลุ่มระหว่างผู้เข้าร่วมตั้งแต่ 3 คนขึ้นไป |
DIRECT_MESSAGE |
ข้อความส่วนตัวระหว่างมนุษย์ 2 คน หรือมนุษย์กับแอปใน Chat |
คำอธิบายประกอบเครื่องมือ
ระบบจะส่งคำอธิบายประกอบเครื่องมือไปยังไคลเอ็นต์ MCP เพื่ออธิบายความเสี่ยงพื้นฐานของเครื่องมือหนึ่งๆ ไคลเอ็นต์ส่วนใหญ่จะถือว่าคำแนะนำเหล่านี้ไม่น่าเชื่อถือ แต่สามารถใช้เพื่อตัดสินใจว่าจะส่งข้อความแจ้งยืนยันไปยังผู้ใช้เมื่อใด
นอกจากสตริงชื่อแล้ว ยังมีการกำหนดคำแนะนำบูลีนต่อไปนี้ด้วย
readOnlyHint: หากเป็นจริง เครื่องมือจะไม่แก้ไขสภาพแวดล้อมของตนเอง ค่าเริ่มต้น: falsedestructiveHint: หากเป็น "จริง" เครื่องมือจะดำเนินการที่ทำลายล้างได้ หากเป็นเท็จ เครื่องมือจะดำเนินการได้เฉพาะการดำเนินการแบบเพิ่มเท่านั้น ค่าเริ่มต้น: trueidempotentHint: หากเป็นจริง การเรียกใช้เครื่องมือซ้ำๆ ด้วยอาร์กิวเมนต์เดียวกันจะไม่มีผลเพิ่มเติมต่อสภาพแวดล้อม ค่าเริ่มต้น: falseopenWorldHint: หากเป็นจริง เครื่องมือจะโต้ตอบกับ "โอเพนเวิลด์" ของเอนทิตีภายนอกได้ หากเป็นเท็จ เครื่องมือจะโต้ตอบได้เฉพาะกับเอนทิตีภายในเท่านั้น ตัวอย่างเช่น เครื่องมือค้นเว็บจะเป็นแบบโอเพนเวิลด์ ส่วนเครื่องมือความทรงจำจะไม่ใช่แบบโอเพนเวิลด์
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้
https://www.googleapis.com/auth/chat.memberships.readonlyhttps://www.googleapis.com/auth/chat.spaceshttps://www.googleapis.com/auth/chat.spaces.readonly