MCP Tools Reference: chatmcp.googleapis.com

เครื่องมือ: list_messages

ดึงข้อมูลข้อความจากการสนทนาใน Google Chat ที่ระบุ (พื้นที่ทำงาน ข้อความส่วนตัว (DM) หรือ DM กลุ่ม) ในรูปแบบ Markdown อนุญาตให้กรองตามชุดข้อความ ช่วงเวลา และจำนวนข้อความ นอกจากนี้ยังดึงข้อมูลหน้าถัดไปของข้อความเพื่อเพิ่มบริบทได้ด้วย ระบบจะกรองข้อความส่วนตัว (ข้อความที่ผู้ใช้คนเดียวเท่านั้นที่มองเห็น) ออก

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีใช้ curl เพื่อเรียกใช้เครื่องมือ list_messages MCP

คำขอ 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": "list_messages",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

สคีมาอินพุต

ListChatMessagesRequest

การแสดง JSON
{
  "conversationId": string,
  "threadId": string,
  "pageSize": integer,
  "pageToken": string,
  "startTime": string,
  "endTime": string
}
ช่อง
conversationId

string

ต้องระบุ รหัสของการสนทนา การสนทนาอาจเป็นพื้นที่ทำงาน ข้อความส่วนตัว (DM) หรือ DM/แชทกลุ่ม รูปแบบ: spaces/{space}

threadId

string

ไม่บังคับ รหัสของชุดข้อความที่เฉพาะเจาะจงภายในบทสนทนา หากระบุไว้ ระบบจะแสดงเฉพาะข้อความจากชุดข้อความนี้ หากไม่ระบุ ระบบจะพิจารณาข้อความจากชุดข้อความทั้งหมดในการสนทนา รูปแบบ: spaces/{space}/threads/{thread}

pageSize

integer

ไม่บังคับ จำนวนข้อความสูงสุดที่จะแสดง บริการอาจแสดงผลน้อยกว่าค่านี้ หากไม่ระบุ ระบบจะกำหนดค่าเริ่มต้นไว้ที่ 20 ค่าสูงสุดคือ 50 หากใช้ค่ามากกว่า 50 ระบบจะเปลี่ยนเป็น 50 โดยอัตโนมัติ

pageToken

string

ไม่บังคับ โทเค็นหน้าเว็บที่ได้รับจากการเรียก list_messages ก่อนหน้า ระบุค่านี้เพื่อดึงข้อมูลหน้าถัดไป

startTime

string

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

endTime

string

ไม่บังคับ การประทับเวลา ISO 8601 เพื่อกรองข้อความ ระบบจะแสดงเฉพาะข้อความที่สร้างขึ้นก่อนเวลานี้

สคีมาเอาต์พุต

การตอบกลับที่มีรายการข้อความจากการสนทนาที่ขอ

ListChatMessagesResponse

การแสดง JSON
{
  "messages": [
    {
      object (ChatMessage)
    }
  ],
  "nextPageToken": string
}
ช่อง
messages[]

object (ChatMessage)

รายชื่อข้อความที่ดึงมาได้ เรียงลำดับจากใหม่ที่สุดไปเก่าที่สุด

nextPageToken

string

โทเค็นซึ่งส่งเป็น page_token ใน ListMessagesRequest ที่ตามมาเพื่อดึงข้อมูลข้อความในหน้าถัดไป หากช่องนี้ว่างเปล่า แสดงว่าไม่มีหน้าอื่นอีก

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

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

คำอธิบายประกอบของเครื่องมือจะส่งไปยังลูกค้า MCP เพื่ออธิบายความเสี่ยงพื้นฐานของเครื่องมือที่กำหนด ไคลเอ็นต์ส่วนใหญ่จะถือว่าคำแนะนำเหล่านี้ไม่น่าเชื่อถือ แต่สามารถใช้เพื่อตัดสินใจว่าจะส่งข้อความแจ้งการยืนยันให้ผู้ใช้เมื่อใด

นอกจากสตริงชื่อแล้ว คำใบ้บูลีนต่อไปนี้จะได้รับการกำหนดดังนี้

  • readOnlyHint: หากเป็นจริง เครื่องมือจะไม่แก้ไขสภาพแวดล้อม ค่าเริ่มต้น: เท็จ
  • destructiveHint: หากเป็นจริง เครื่องมือจะดำเนินการที่ทำลายข้อมูลได้ หากเป็นเท็จ เครื่องมือจะดำเนินการได้เฉพาะการดำเนินการเพิ่มเติมเท่านั้น ค่าเริ่มต้น: จริง
  • idempotentHint: หากเป็นจริง การเรียกใช้เครื่องมือซ้ำๆ ด้วยอาร์กิวเมนต์เดียวกันจะไม่ส่งผลกระทบเพิ่มเติมต่อสภาพแวดล้อมของเครื่องมือ ค่าเริ่มต้น: เท็จ
  • openWorldHint: หากเป็นจริง เครื่องมือจะโต้ตอบกับ "โอเพนเวิลด์" ของเอนทิตีภายนอกได้ หากเป็นเท็จ เครื่องมือจะโต้ตอบกับเอนทิตีภายในเท่านั้น ตัวอย่างเช่น เครื่องมือค้นหาเว็บจะเป็นแบบโอเพนเวิลด์ แต่เครื่องมือความทรงจำจะไม่ใช่แบบโอเพนเวิลด์

టీपที่ทำลายล้าง: ❌ | টিপที่ไม่มีผลข้างเคียง: ✅ | টিপแบบอ่านอย่างเดียว: ✅ | টিপแบบโลกเปิด: ❌

ขอบเขตการให้สิทธิ์

ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้

  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly