mcpField
G
gmail

gmail

github.com/aws-samples生产力19757 次安装3 周前更新
代码仓库

关于 gmail

用于处理 Gmail 邮件和标签的 Skill,支持浏览与搜索邮件、查看会话、撰写或发送邮件,以及管理标签和删除邮件。

主要功能

  1. 01列出标签和邮件
  2. 02使用 Gmail 查询语法搜索
  3. 03查看邮件和会话线程
  4. 04发送邮件或保存草稿
  5. 05管理标签并删除邮件

适用场景

  1. 01查找特定发件人的未读邮件
  2. 02回复前查看邮件会话
  3. 03起草或发送含抄送的邮件
  4. 04归档、标记或删除匹配邮件

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aws-samples/sample-strands-agent-with-agentcore --skill gmail

安装后在 Claude Code 中输入/gmail确认已加载。

详细介绍

Gmail

可用工具

  • list_labels():列出所有 Gmail 标签(系统标签:INBOX、SENT、TRASH、SPAM、DRAFT、IMPORTANT、STARRED、UNREAD;以及用户创建的标签)。

  • list_emails(label?, max_results?, include_spam_trash?):按标签列出邮件。

    • label(字符串,可选,默认值:"INBOX"):用于筛选的标签(INBOX、SENT、DRAFT、TRASH、SPAM、STARRED、IMPORTANT,或自定义标签 ID)
    • max_results(整数,可选,默认值:10,最大值:100):要返回的邮件数量
    • include_spam_trash(布尔值,可选,默认值:false):是否包含 SPAM 和 TRASH
  • search_emails(query, max_results?):使用查询语法搜索 Gmail。

    • query(字符串,必填):Gmail 搜索查询(from:、to:、subject:、is:unread、has:attachment、after:、before:、older_than:、newer_than:)
    • max_results(整数,可选,默认值:10,最大值:50):结果数量
  • read_email(message_id):读取完整邮件,包括正文和附件。

    • message_id(字符串,必填):Gmail 邮件 ID(来自 list_emails 或 search_emails)
  • send_email(to, subject, body, cc?, bcc?, reply_to?, in_reply_to?, html_body?):发送邮件。

    • to(字符串,必填):收件人,多个地址以逗号分隔
    • subject(字符串,必填):邮件主题
    • body(字符串,必填):纯文本邮件正文
    • cc(字符串,可选):抄送收件人
    • bcc(字符串,可选):密送收件人
    • reply_to(字符串,可选):回复地址
    • in_reply_to(字符串,可选):要回复的 Message-ID(用于串联邮件)
    • html_body(字符串,可选):邮件正文的 HTML 版本
  • draft_email(to, subject, body, cc?, bcc?, reply_to?, in_reply_to?, html_body?):创建草稿,以便稍后编辑或发送。参数与 send_email 相同。

  • delete_email(message_id, permanent?):删除邮件。

    • message_id(字符串,必填):Gmail 邮件 ID
    • permanent(布尔值,可选,默认值:false):如果为 true,则永久删除;如果为 false,则移至回收站
  • bulk_delete_emails(query, reason, max_delete?):按查询条件永久删除多封邮件。此操作无法撤销。

    • query(字符串,必填):用于查找邮件的 Gmail 搜索查询
    • reason(字符串,必填):面向用户的说明(将在请求用户批准时显示)
    • max_delete(整数,可选,默认值:50,最大值:100):要删除的邮件数量上限
  • modify_email(message_id, add_labels?, remove_labels?):添加或移除邮件标签。

    • message_id(字符串,必填):Gmail 邮件 ID
    • add_labels(字符串,可选):要添加的标签 ID,以逗号分隔(例如:"STARRED,IMPORTANT")
    • remove_labels(字符串,可选):要移除的标签 ID,以逗号分隔(例如:"UNREAD,INBOX")
  • get_email_thread(thread_id):获取邮件对话中的所有邮件。

    • thread_id(字符串,必填):Gmail 对话 ID(来自 read_email 或 search_emails)

使用指南

  • 对于 INBOX、SENT、DRAFT、TRASH、SPAM、STARRED 和 IMPORTANT 等标准标签,直接调用 list_emails。仅当用户要求查找自定义标签或标签名称未知时,才使用 list_labels。
  • Gmail 搜索查询语法:from:sender、to:recipient、subject:text、is:unread、has:attachment、after:2024/01/01、before:2024/12/31。
  • 回复邮件前,使用 get_email_thread 查看完整的对话上下文。

常见操作

通过 modify_email 管理标签:

操作参数
标记为已读remove_labels="UNREAD"
标记为未读add_labels="UNREAD"
归档remove_labels="INBOX"
加星标add_labels="STARRED"
取消星标remove_labels="STARRED"
标记为重要add_labels="IMPORTANT"

批量删除

bulk_delete_emails(query, reason) 会永久删除所有符合 Gmail 查询条件的邮件。此操作无法撤销。

  • 始终提供 reason 参数,说明操作意图。
  • 调用前始终说明将删除的内容,并征得用户确认。

常见查询:

  • 清理垃圾邮件:"is:spam older_than:7d"
  • 过期未读邮件:"in:inbox is:unread older_than:14d"
  • 清理促销邮件:"category:promotions older_than:30d"
  • 来自特定发件人的邮件:"from:[email protected] older_than:30d"

界面使用指南(来自 tools-config)

Gmail 工具用法:

  • list_labels:请求的标签未知时,查找自定义标签
  • list_emails:按标签浏览邮件(INBOX、SENT、DRAFT、TRASH 等)
  • search_emails:使用 Gmail 查询语法(from:、to:、subject:、is:unread、has:attachment、after:、before:)
  • read_email:获取完整邮件内容及附件
  • send_email:发送邮件,可选抄送、密送和 HTML 正文
  • draft_email:创建草稿,以便稍后编辑或发送
  • delete_email:移至垃圾箱(永久删除时设置 permanent=True)
  • bulk_delete_emails:按查询条件永久删除多封邮件(需要用户批准)
  • modify_email:添加或移除标签(标记为已读:移除 UNREAD;归档:移除 INBOX;加星标:添加 STARRED)
  • get_email_thread:查看完整邮件对话串

批量删除(bulk_delete_emails):

  • 用于清理垃圾邮件、清除过期邮件等
  • 始终提供 'reason' 参数,说明操作意图
  • 常见查询:"is:spam older_than:7d"、"in:inbox is:unread older_than:14d"、"category:promotions older_than:30d"
  • 警告:邮件将被永久删除,无法恢复

常见操作:

  • 标记为已读:modify_email(id, remove_labels="UNREAD")
  • 归档:modify_email(id, remove_labels="INBOX")
  • 加星标:modify_email(id, add_labels="STARRED")
  • 标记为重要:modify_email(id, add_labels="IMPORTANT")

评论

支持 Markdown