MCP Tools Reference: gmailmcp.googleapis.com

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

แสดงรายการเธรดอีเมลจากบัญชี Gmail ของผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์

เครื่องมือนี้สามารถกรองเธรดตามสตริงการค้นหาและรองรับการแบ่งหน้า โดยจะแสดงผลรายการชุดข้อความ รวมถึงรหัสและข้อความที่เกี่ยวข้อง ข้อความที่เกี่ยวข้องแต่ละข้อความจะมีรายละเอียด เช่น ตัวอย่างเนื้อความ เรื่อง ผู้ส่ง ผู้รับ เป็นต้น โปรดทราบว่าเครื่องมือนี้จะไม่แสดงเนื้อความทั้งหมดของข้อความ ให้ใช้เครื่องมือ "get_thread" กับรหัสเธรดเพื่อดึงข้อมูลเนื้อความทั้งหมดของข้อความหากจำเป็น เธรดที่มีเกณฑ์ที่ยกเว้นอาจยังปรากฏในผลการค้นหา ซึ่งเกิดขึ้นเนื่องจาก Gmail ระบุข้อความที่ตรงกันก่อน เช่น หากคุณค้นหา -is:starred Gmail จะค้นหาชุดการสนทนาทั้งหมดได้หากมีข้อความที่ไม่ได้ติดดาวไว้อย่างน้อย 1 รายการ แม้ว่าอีเมลอื่นๆ ในการสนทนาเดียวกันนั้นจะติดดาวอยู่ก็ตาม

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

คำขอ Curl
curl --location 'https://gmailmcp.googleapis.com/mcp/v1' \
--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
}
ช่อง

ฟิลด์ Union _page_size

_page_size ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

pageSize

integer

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

ฟิลด์ Union _page_token

_page_token ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

pageToken

string

ไม่บังคับ โทเค็นหน้าเว็บเพื่อดึงข้อมูลหน้าผลลัพธ์ที่เฉพาะเจาะจงในรายการ เว้นว่างไว้เพื่อดึงข้อมูลหน้าแรก โดยส่วนใหญ่จะใช้สำหรับการแบ่งหน้าเพื่อดึงผลลัพธ์ต่อจากที่การเรียกใช้ SearchThreads ก่อนหน้าหยุดไว้ โดยเฉพาะอย่างยิ่งเมื่อจำนวนเธรดที่ตรงกับการค้นหาเกินขีดจำกัด page_size

ฟิลด์ Union _query

_query ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

query

string

ไม่บังคับ สตริงการค้นหาเพื่อกรองชุดข้อความ ต้องแปลงคำค้นหาที่เป็นภาษาธรรมชาติเป็นคำค้นหาไวยากรณ์ Gmail ล่วงหน้าเพื่อใช้เครื่องมือนี้ หากไม่ระบุ ระบบจะแสดงรายการเธรดทั้งหมด (ยกเว้นจดหมายขยะและถังขยะโดยค่าเริ่มต้น)

โอเปอเรเตอร์ที่รองรับตามหมวดหมู่

ผู้ส่งและผู้รับ: from: - ส่งจากบุคคลที่ระบุ ถึง: - ส่งถึงบุคคลที่ระบุ สำเนา: - บุคคลที่ระบุในสำเนา สำเนาลับ: - บุคคลที่ระบุในสำเนาลับ deliveredto: - นำส่งไปยังที่อยู่ที่เฉพาะเจาะจง list: - จากรายชื่ออีเมลที่เฉพาะเจาะจง

เวลาและวันที่: after:YYYY/MM/DD / newer:YYYY/MM/DD - ได้รับหลังจากวันที่ ก่อน:ปปปป/ดด/วว / เก่ากว่า:ปปปป/ดด/วว - ได้รับก่อนวันที่ older_than: - เก่ากว่าระยะเวลา (เช่น 1y, 2d) newer_than: - ใหม่กว่าระยะเวลา

เนื้อหา: เรื่อง: - คำที่อยู่ในบรรทัดเรื่อง has: - มีประเภทเนื้อหาที่เฉพาะเจาะจง (ไฟล์แนบ, ไดรฟ์, YouTube, เอกสาร) filename: - ไฟล์แนบที่มีชื่อหรือประเภทที่เฉพาะเจาะจง "<คำ/วลี>" - ค้นหาคำหรือวลีที่ตรงกันทุกประการ (เช่น "วันหยุด" "วันหยุดพักผ่อน") + - จับคู่คำที่ตรงกันทุกประการ (เช่น +วันหยุด, +ยูนิคอร์น) rfc822msgid: - ส่วนหัวรหัสข้อความที่เฉพาะเจาะจง AROUND - ค้นหาคำที่อยู่ใกล้กัน (เช่น holiday AROUND 10 vacation)

ป้ายกำกับและหมวดหมู่: label: - ภายใต้ป้ายกำกับที่เฉพาะเจาะจง เครื่องมือนี้ยอมรับรหัสค่ายเพลง ไม่ใช่ชื่อที่แสดง ใช้เครื่องมือ list_labels เพื่อรับรหัส category: - ในหมวดหมู่ (หลัก โซเชียล โปรโมชัน การอัปเดต ฟอรัม การจอง การซื้อ) in:

สถานะ: is: - ค้นหาตามสถานะ (สำคัญ ติดดาว ยังไม่อ่าน อ่านแล้ว ปิดเสียง)

ขนาด: size: - ขนาดที่เฉพาะเจาะจงในหน่วยไบต์ larger: / smaller: - ใหญ่กว่าหรือเล็กกว่าขนาด (เช่น 10M สำหรับ 10 MB)

ตรรกะและการจัดกลุ่ม: AND - ตรงกับเกณฑ์ทั้งหมด (ลักษณะการทำงานเริ่มต้น) OR หรือ { } - ตรงกับเกณฑ์อย่างน้อย 1 รายการ (เช่น from:amy OR from:david, {from:amy from:david}) - (เครื่องหมายลบ) - ยกเว้นเกณฑ์ (เช่น -movie) ( ) - จัดกลุ่มข้อความค้นหาหลายรายการ (เช่น subject:(dinner film))

ตัวอย่างเช่น "subject:OneMCP Update" "from:user@example.com" "to:user2@example.com AND newer_than:7d" "project proposal has:attachment" "is:unread -in:draft"

ฟิลด์ Union _include_trash

_include_trash ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

includeTrash

boolean

ไม่บังคับ รวมฉบับร่างจากโฟลเดอร์ถังขยะไว้ในผลลัพธ์ ค่าเริ่มต้นคือ false

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

ข้อความตอบกลับสำหรับ RPC ของ SearchThreads

SearchThreadsResponse

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

object (Thread)

รายการข้อมูลสรุปของชุดข้อความ

nextPageToken

string

โทเค็นที่ใช้ในการเรียกครั้งถัดไปเพื่อดึงข้อมูลหน้าถัดไปของเธรดได้ แสดงเฉพาะในกรณีที่มีผลลัพธ์เพิ่มเติม หากจำนวนเธรดที่ตรงกับการค้นหาเกินขีดจำกัด page_size การตอบกลับจะมี next_page_token หากต้องการดึงข้อมูลผลลัพธ์ในหน้าถัดไป ให้ส่งโทเค็นนี้ในฟิลด์ page_token ของ SearchThreadsRequest รายการถัดไป

ชุดข้อความ

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

string

ตัวระบุที่ไม่ซ้ำกันของเธรด

messages[]

object (Message)

รายการข้อความในชุดข้อความที่จัดเรียงตามลำดับเวลา

ข้อความ

การแสดง JSON
{
  "id": string,
  "snippet": string,
  "subject": string,
  "sender": string,
  "toRecipients": [
    string
  ],
  "ccRecipients": [
    string
  ],
  "date": string,
  "plaintextBody": string,
  "attachmentIds": [
    string
  ]
}
ช่อง
id

string

ตัวระบุที่ไม่ซ้ำกันของข้อความ

snippet

string

ข้อมูลโค้ดของเนื้อความ

subject

string

เรื่องของข้อความที่ดึงมาจากส่วนหัว

sender

string

อีเมลของผู้ส่ง

toRecipients[]

string

ไปยังอีเมลของผู้รับ

ccRecipients[]

string

อีเมลของผู้รับในสำเนา

date

string

วันที่ของข้อความในรูปแบบ ISO 8601 (YYYY-MM-DD)

plaintextBody

string

เนื้อหาข้อความแบบเต็ม จะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT เท่านั้น

attachmentIds[]

string

เอาต์พุตเท่านั้น รหัสไฟล์แนบ จะแสดงก็ต่อเมื่อ MessageFormat เป็น FULL_CONTENT เท่านั้น

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

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