用 AI 自动处理 Outlook 邮件、日历和联系人

解决日常办公繁琐问题:通过 Rube MCP 连接 Outlook API,让 AI 代理自动执行搜索邮件、下载附件、查看日程安排及管理联系人等操作。

为什么需要这个技能

日常工作中,频繁使用 Outlook 查找特定邮件、查看附件、整理日历日程或添加联系人极其耗时。手动登录 Web 端或客户端操作不仅效率低下,还容易遗漏关键信息。

本技能允许 AI 直接调用 Rube MCP 提供的 Outlook 工具箱,自动处理这些任务。它适用于需要跨多个 Outlook 功能模块(邮件、日历、联系人)进行批量处理或自动化响应的场景。

适用场景

  • 需要快速在收件箱、发件箱或特定文件夹中搜索特定主题或发件人的邮件时。
  • AI 代理需要下载邮件附件或整理会议日程信息时。
  • 用户希望让 AI 自动创建新的日历事件或更新联系人信息时。

前置准备

  1. 连接 Rube MCP:在您的客户端配置中添加 https://rube.app/mcp 作为 MCP 服务器。无需 API 密钥,仅需添加端点即可工作。
  2. 验证连接:确保工具 RUBE_SEARCH_TOOLS 可用,并调用 RUBE_MANAGE_CONNECTIONS 设置 toolkit 为 outlook
  3. 完成 OAuth 授权:如果连接未处于 ACTIVE 状态,请按返回的链接完成 Microsoft OAuth 授权。
  4. 重要提示:此技能主要适用于 Microsoft 365/Enterprise 账户,个人免费账户(@hotmail.com/@outlook.com)API 访问权限受限。

核心工作流

1. 搜索与筛选邮件

当需要在整个邮箱中查找特定邮件时使用。

  1. 调用 OUTLOOK_SEARCH_MESSAGES 使用 KQL 语法搜索所有文件夹(必填)。
  2. 可选调用 OUTLOOK_GET_MESSAGE 获取完整邮件详情。
  3. 可选调用 OUTLOOK_LIST_OUTLOOK_ATTACHMENTS 列出附件。
  4. 调用 OUTLOOK_DOWNLOAD_OUTLOOK_ATTACHMENT 下载附件。

关键参数说明

  • query:KQL 搜索字符串(如 from:boss@example.com)。
  • from_index:分页起始位置(基于 0)。
  • size:每页结果数(最大 25)。
  • message_id:必须使用搜索结果中的 hitId,而非资源 ID。

常见陷阱

  • 仅限企业账户,不支持个人免费账号。
  • 索引延迟可能导致最新邮件未立即显示。
  • 内联图片会被视为附件,需通过 MIME 类型过滤真实文档。

2. 查询特定文件夹的邮件

当需在特定文件夹(如收件箱、草稿箱)中筛选邮件时使用。

  1. 调用 OUTLOOK_LIST_MAIL_FOLDERS 获取文件夹 ID。
  2. 调用 OUTLOOK_QUERY_EMAILS 使用 OData 过滤器查询邮件。

关键参数说明

  • folder:文件夹名称或 ID。
  • filter:OData 过滤器(如 isRead eq false)。
  • top:最大结果数(1-1000)。
  • orderby:排序字段和方向。
  • select:要返回的字段数组。

常见陷阱

  • QUERY_EMAILS 仅搜索单个文件夹,跨文件夹搜索需使用 SEARCH_MESSAGES
  • 自定义文件夹需使用 ID 而非显示名称。
  • 检查响应中的 @odata.nextLink 进行分页。
  • 无法按收件人或正文内容过滤,此类需求请使用 SEARCH_MESSAGES

3. 管理日历事件

当需列出、搜索或检查日历事件时使用。

  1. 调用 OUTLOOK_LIST_EVENTSOUTLOOK_GET_CALENDAR_VIEW 获取特定时间段事件。
  2. 调用 OUTLOOK_GET_EVENT 获取特定事件详情。
  3. 调用 OUTLOOK_LIST_CALENDARS 列出可用日历。
  4. 调用 OUTLOOK_GET_SCHEDULE 获取空闲/忙碌状态。

关键参数说明

  • filter:OData 过滤器(使用 start/dateTime,而非 receivedDateTime)。
  • start_datetime/end_datetime:ISO 8601 格式的时间窗口。
  • timezone:IANA 时区(如 America/New_York)。
  • expand_recurring_events:对于重复事件设为 true 以查看单独 occurrence。

常见陷阱

  • 区分邮件属性(receivedDateTime)与日历属性(start/dateTime),切勿混用。
  • 日历视图必须提供时间窗口。
  • 出席者状态需通过 attendees[].status.response 获取。

4. 管理联系人

当需列出、创建或组织联系人时使用。

  1. 调用 OUTLOOK_LIST_CONTACTS 列出联系人。
  2. 调用 OUTLOOK_CREATE_CONTACT 创建新联系人。
  3. 调用 OUTLOOK_GET_CONTACT_FOLDERS 列出联系人文件夹。
  4. 调用 OUTLOOK_CREATE_CONTACT_FOLDER 创建新文件夹。

关键参数说明

  • givenName/surname:联系人姓名部分。
  • emailAddresses:邮箱地址对象数组。
  • displayName:完整显示名称。

常见陷阱

  • 创建联系人时仅需提供 givenNamesurname,其余字段可选。

5. 管理邮件文件夹

当需组织邮件文件夹时使用。

  1. 调用 OUTLOOK_LIST_MAIL_FOLDERS 列出顶级文件夹。
  2. 调用 OUTLOOK_LIST_CHILD_MAIL_FOLDERS 列出子文件夹。
  3. 调用 OUTLOOK_CREATE_MAIL_FOLDER 创建新文件夹。

关键参数说明

  • parent_folder_id:顶级文件夹的知名名称或 ID。
  • displayName:新文件夹名称。
  • include_hidden_folders:是否显示隐藏文件夹。

常见陷阱

  • 知名文件夹名称包括:inbox, sentitems, drafts, deleteditems, junkemail, archive
  • 自定义文件夹操作必须使用文件夹 ID。

快速参考语法

KQL 搜索语法

属性过滤器

  • from:xxx - 发件人
  • to:xxx - 收件人
  • subject:xxx - 主题包含
  • hasattachment:yes - 有附件

组合逻辑

  • AND - 两者条件均满足
  • OR - 任一条件满足

OData 过滤器语法

邮件过滤器

  • isRead eq false - 未读邮件
  • importance eq 'high' - 高优先级
  • hasAttachments eq true - 有附件

日历过滤器

  • start/dateTime ge '2025-01-01' - 日期后的事件
  • contains(subject, 'Meeting') - 主题包含文本

下载和安装

下载 outlook-automation 中文版 Skill ZIP

你可能还需要

暂无推荐