เครื่องมือ: search_threads
แสดงรายการเธรดอีเมลจากบัญชี Gmail ของผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์
เครื่องมือนี้สามารถกรองเธรดตามสตริงการค้นหาและรองรับการแบ่งหน้า โดยจะแสดงผลรายการชุดข้อความ รวมถึงรหัสและข้อความที่เกี่ยวข้อง ข้อความที่เกี่ยวข้องแต่ละข้อความจะมีรายละเอียด เช่น ตัวอย่างเนื้อความ หัวเรื่อง ผู้ส่ง ผู้รับ ฯลฯ พารามิเตอร์ view จะควบคุมฟิลด์ที่จะแสดงในข้อความที่เกี่ยวข้อง โดยค่าเริ่มต้น (หรือเมื่อใช้ THREAD_VIEW_MINIMAL) จะมีหัวเรื่องและตัวอย่างข้อมูล ใช้ THREAD_VIEW_METADATA_ONLY เพื่อยกเว้นเรื่องและข้อมูลโค้ด โปรดทราบว่าเครื่องมือนี้จะไม่แสดงเนื้อความของข้อความทั้งหมด หากต้องการดึงเนื้อความของข้อความทั้งหมด ให้ใช้เครื่องมือ "get_thread" กับรหัสชุดข้อความ เธรดที่มีเกณฑ์ที่ยกเว้นอาจยังปรากฏในผลการค้นหา ซึ่งเกิดขึ้นเนื่องจาก Gmail ระบุข้อความที่ตรงกันก่อน เช่น หากคุณค้นหา -is:starred Gmail จะค้นหาชุดการสนทนาทั้งหมดได้หากมีข้อความที่ไม่ได้ติดดาวไว้อย่างน้อย 1 รายการ แม้ว่าอีเมลอื่นๆ ในการสนทนาเดียวกันนั้นจะติดดาวอยู่ก็ตาม
ตัวอย่างต่อไปนี้แสดงวิธีใช้ curl เพื่อเรียกใช้เครื่องมือ search_threads MCP
| คำขอ Curl |
|---|
curl --location 'https://gmailmcp.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_threads", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
สคีมาอินพุต
ข้อความคำขอสำหรับ RPC ของ SearchThreads
SearchThreadsRequest
| การแสดง JSON |
|---|
{
"pageSize": integer
"pageToken": string
"query": string
"includeTrash": boolean
"view": enum ( |
| ช่อง | |
|---|---|
ฟิลด์ Union
|
|
pageSize |
ไม่บังคับ จำนวนสูงสุดของเธรดที่จะแสดง หากไม่ระบุ ระบบจะกำหนดค่าเริ่มต้นไว้ที่ 20 ค่าสูงสุดที่อนุญาตคือ 50 |
ฟิลด์ Union
|
|
pageToken |
ไม่บังคับ โทเค็นหน้าเว็บเพื่อดึงข้อมูลหน้าผลลัพธ์ที่เฉพาะเจาะจงในรายการ เว้นว่างไว้เพื่อดึงข้อมูลหน้าแรก โดยส่วนใหญ่จะใช้สำหรับการแบ่งหน้าเพื่อดึงผลลัพธ์ต่อจากที่ |
ฟิลด์ Union
|
|
query |
ไม่บังคับ สตริงการค้นหาเพื่อกรองชุดข้อความ ต้องแปลงคำค้นหาที่เป็นภาษาธรรมชาติเป็นคำค้นหาไวยากรณ์ Gmail ล่วงหน้าเพื่อใช้เครื่องมือนี้ หากไม่ระบุ ระบบจะแสดงรายการเธรดทั้งหมด (ยกเว้นจดหมายขยะและถังขยะโดยค่าเริ่มต้น) โอเปอเรเตอร์ที่รองรับตามหมวดหมู่ ผู้ส่งและผู้รับ
เวลาและวันที่:
เนื้อหา:
ป้ายกำกับและหมวดหมู่
สถานะ:
ขนาด:
ตรรกะและการจัดกลุ่ม:
ตัวอย่าง
|
ฟิลด์ Union
|
|
includeTrash |
ไม่บังคับ รวมเธรดจากถังขยะไว้ในผลการค้นหา ค่าเริ่มต้นคือ false |
ฟิลด์ Union
|
|
view |
ไม่บังคับ ควบคุมช่องที่ป้อนข้อมูลสำหรับชุดข้อความในรายการชุดข้อความ ค่าเริ่มต้นคือ THREAD_VIEW_MINIMAL THREAD_VIEW_MINIMAL จะแสดงผล id, snippet, subject, from, to, cc, date, labelIds THREAD_VIEW_METADATA_ONLY จะแสดงผล id, from, to, cc, date, labelIds |
ThreadView
Enum เพื่อควบคุมฟิลด์ที่สร้างขึ้นสำหรับชุดข้อความในการตอบกลับ ListThreads และ SearchThreads
| Enum | |
|---|---|
THREAD_VIEW_UNSPECIFIED |
แมปกับ THREAD_VIEW_MINIMAL เพื่อความเข้ากันได้แบบย้อนหลัง |
THREAD_VIEW_METADATA_ONLY |
แสดงผลรหัส จาก ถึง สำเนา วันที่ และ labelIds |
THREAD_VIEW_MINIMAL |
แสดงผล id, snippet, subject, from, to, cc, date, labelIds |
สคีมาเอาต์พุต
ข้อความตอบกลับสำหรับ RPC ของ SearchThreads
SearchThreadsResponse
| การแสดง JSON |
|---|
{
"threads": [
{
object ( |
| ช่อง | |
|---|---|
threads[] |
รายการข้อมูลสรุปของชุดข้อความ |
nextPageToken |
โทเค็นที่ใช้ในการเรียกครั้งถัดไปเพื่อดึงข้อมูลหน้าถัดไปของเธรดได้ แสดงเฉพาะในกรณีที่มีผลลัพธ์เพิ่มเติม หากจำนวนชุดข้อความที่ตรงกับการค้นหาเกินขีดจำกัด page_size การตอบกลับจะมี |
resultCountEstimate |
จำนวนผลลัพธ์โดยประมาณสําหรับการค้นหานี้ ควรถือว่าเป็นขอบเขตล่าง เช่น หากเป็น 500 ระบบจะรายงานจำนวนต่อผู้ใช้เป็น "500 ขึ้นไป" |
ชุดข้อความ
| การแสดง JSON |
|---|
{
"id": string,
"messages": [
{
object ( |
| ช่อง | |
|---|---|
id |
ตัวระบุที่ไม่ซ้ำกันของเธรด |
messages[] |
รายการข้อความในชุดข้อความที่จัดเรียงตามลำดับเวลา |
ข้อความ
| การแสดง JSON |
|---|
{
"id": string,
"snippet": string,
"subject": string,
"sender": string,
"toRecipients": [
string
],
"ccRecipients": [
string
],
"date": string,
"plaintextBody": string,
"attachmentIds": [
string
],
"htmlBody": string,
"attachments": [
{
object ( |
| ช่อง | |
|---|---|
id |
ตัวระบุที่ไม่ซ้ำกันของข้อความ |
snippet |
ข้อมูลโค้ดของเนื้อความ |
subject |
เรื่องของข้อความที่ดึงมาจากส่วนหัว |
sender |
อีเมลของผู้ส่ง |
toRecipients[] |
ไปยังอีเมลของผู้รับ |
ccRecipients[] |
อีเมลของผู้รับในสำเนา |
date |
วันที่ของข้อความในรูปแบบ ISO 8601 (YYYY-MM-DD) |
plaintextBody |
เนื้อหาข้อความแบบเต็ม จะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT เท่านั้น |
attachmentIds[] |
เอาต์พุตเท่านั้น รหัสไฟล์แนบ จะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT เท่านั้น |
htmlBody |
เนื้อหา HTML ของอีเมล จะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT |
attachments[] |
เอาต์พุตเท่านั้น ไฟล์แนบจะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT เท่านั้น |
labelIds[] |
รหัสของป้ายกำกับที่แนบกับข้อความ รวมรหัสของป้ายกำกับที่ผู้ใช้สร้างขึ้นและป้ายกำกับของระบบมาตรฐานที่จำกัดไว้สำหรับ |
AttachmentMetadata
| การแสดง JSON |
|---|
{ "id": string, "mimeType": string, "filename": string } |
| ช่อง | |
|---|---|
id |
เอาต์พุตเท่านั้น รหัสของไฟล์แนบ |
mimeType |
ประเภท MIME ของไฟล์แนบ |
filename |
ชื่อไฟล์ของไฟล์แนบ |
คำอธิบายประกอบเครื่องมือ
คำแนะนำที่ทำลายล้าง: ❌ | คำแนะนำที่ทำซ้ำได้: ✅ | คำแนะนำแบบอ่านอย่างเดียว: ✅ | คำแนะนำแบบโลกเปิด: ❌
ขอบเขตการให้สิทธิ์
ต้องใช้ขอบเขต OAuth อย่างใดอย่างหนึ่งต่อไปนี้
https://mail.google.com/https://www.googleapis.com/auth/gmail.modifyhttps://www.googleapis.com/auth/gmail.readonly