关于 outlook-automation
outlook-automation 是通过 Composio Outlook 工具包和 Rube MCP 自动处理 Microsoft Outlook 邮件、日历、联系人及文件夹的技能,面向需要以工作流操作 Outlook 的用户。
主要功能
- 01搜索和筛选邮件
- 02查询邮件与附件
- 03管理日历事件和日程
- 04创建及整理联系人
- 05管理邮件文件夹
适用场景
- 01按发件人或日期查找邮件
- 02筛选特定文件夹中的邮件
- 03查看日历事件与空闲时间
- 04创建联系人或邮件文件夹
MCP 相关
通过 Rube MCP 调用 Composio 的 Outlook 工具包;需要先连接 MCP,并激活 Outlook 账户连接。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ composiohq/ awesome-claude-skills --skill outlook-automation安装后在 Claude Code 中输入/outlook-automation确认已加载。
详细介绍
通过 Rube MCP 自动化 Outlook
通过 Rube MCP 使用 Composio 的 Outlook 工具包自动执行 Microsoft Outlook 操作。
工具包文档:composio.dev/toolkits/outlook
前提条件
- 必须已连接 Rube MCP(可使用 RUBE_SEARCH_TOOLS)
- 通过
RUBE_MANAGE_CONNECTIONS建立有效的 Outlook 连接,工具包为outlook - 始终先调用
RUBE_SEARCH_TOOLS,以获取当前工具架构
设置
获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。无需 API 密钥——只需添加端点即可使用。
- 确认
RUBE_SEARCH_TOOLS有响应,以验证 Rube MCP 可用 - 使用工具包
outlook调用RUBE_MANAGE_CONNECTIONS - 如果连接状态不是 ACTIVE,请通过返回的身份验证链接完成 Microsoft OAuth
- 运行任何工作流前,确认连接状态为 ACTIVE
核心工作流
1. 搜索和筛选邮件
适用场景:用户想要在邮箱中查找特定邮件
工具调用顺序:
OUTLOOK_SEARCH_MESSAGES- 使用 KQL 语法搜索所有文件夹【必需】OUTLOOK_GET_MESSAGE- 获取完整邮件详情【可选】OUTLOOK_LIST_OUTLOOK_ATTACHMENTS- 列出邮件附件【可选】OUTLOOK_DOWNLOAD_OUTLOOK_ATTACHMENT- 下载附件【可选】
关键参数:
query:KQL 搜索字符串(from:、to:、subject:、received:、hasattachment:)from_index:分页起始位置(从 0 开始)size:每页结果数(最多 25)message_id:邮件 ID(使用搜索结果中的 hitId)
注意事项:
- 仅适用于 Microsoft 365/Enterprise 账户(不适用于 @hotmail.com/@outlook.com)
- 分页依赖 hitsContainers[0].moreResultsAvailable;仅当其为 false 时才停止
- 后续调用的 message_id 应使用搜索结果中的 hitId,而非 resource.id
- 索引存在延迟:最新邮件可能不会立即显示
- 内嵌图片会显示为附件;请按 mimetype 筛选实际文档
2. 查询文件夹中的邮件
适用场景:用户想要使用 OData 筛选器列出特定文件夹中的邮件
工具调用顺序:
OUTLOOK_LIST_MAIL_FOLDERS- 列出邮件文件夹以获取文件夹 ID【前置条件】OUTLOOK_QUERY_EMAILS- 使用结构化筛选器查询邮件【必需】
关键参数:
folder:文件夹名称('inbox'、'sentitems'、'drafts')或文件夹 IDfilter:OData 筛选器(例如,isRead eq false and importance eq 'high')top:最大结果数(1-1000)orderby:排序字段和方向select:要返回的字段数组
注意事项:
- QUERY_EMAILS 仅搜索单个文件夹;如需跨文件夹搜索,请使用 SEARCH_MESSAGES
- 自定义文件夹需要使用文件夹 ID,而非显示名称;请使用 LIST_MAIL_FOLDERS
- 始终检查 response['@odata.nextLink'] 以进行分页
- 无法按收件人或正文内容筛选;这类搜索请使用 SEARCH_MESSAGES
3. 管理日历事件
适用场景:用户想要列出、搜索或查看日历事件
工具调用顺序:
OUTLOOK_LIST_EVENTS- 使用筛选器列出事件【可选】OUTLOOK_GET_CALENDAR_VIEW- 获取指定时间范围内的事件【可选】OUTLOOK_GET_EVENT- 获取特定事件详情【可选】OUTLOOK_LIST_CALENDARS- 列出可用日历【可选】OUTLOOK_GET_SCHEDULE- 获取空闲/忙碌信息【可选】
关键参数:
filter:OData 筛选器(使用 start/dateTime,不要使用 receivedDateTime)start_datetime/end_datetime:日历视图的 ISO 8601 时间timezone:IANA 时区(例如,'America/New_York')calendar_id:可选的非主日历 IDselect:要返回的字段
注意事项:
- 仅使用日历事件属性(start/dateTime、end/dateTime),不要使用邮件属性(receivedDateTime)
- 日历视图需要提供 start_datetime 和 end_datetime
- 若要查看重复事件的单次实例,需设置
expand_recurring_events=true - 拒绝状态按参与者分别记录,位于 attendees[].status.response
4. 管理联系人
适用场景:用户想要列出、创建或整理联系人
工具调用顺序:
OUTLOOK_LIST_CONTACTS- 列出联系人 [可选]OUTLOOK_CREATE_CONTACT- 创建新联系人 [可选]OUTLOOK_GET_CONTACT_FOLDERS- 列出联系人文件夹 [可选]OUTLOOK_CREATE_CONTACT_FOLDER- 创建联系人文件夹 [可选]
关键参数:
givenName/surname:联系人姓名emailAddresses:电子邮件对象数组displayName:完整显示名称contact_folder_id:联系人的可选文件夹
注意事项:
- 创建联系人支持许多字段,但只需提供 givenName 或 surname
5. 管理邮件文件夹
适用场景:用户想要整理邮件文件夹
工具调用顺序:
OUTLOOK_LIST_MAIL_FOLDERS- 列出顶级文件夹 [必需]OUTLOOK_LIST_CHILD_MAIL_FOLDERS- 列出子文件夹 [可选]OUTLOOK_CREATE_MAIL_FOLDER- 创建新文件夹 [可选]
关键参数:
parent_folder_id:已知名称或文件夹 IDdisplayName:新文件夹名称include_hidden_folders:显示隐藏文件夹
注意事项:
- 已知文件夹名称:'inbox'、'sentitems'、'drafts'、'deleteditems'、'junkemail'、'archive'
- 操作自定义文件夹时需要使用文件夹 ID,而非显示名称
常见模式
KQL 搜索语法
属性筛选器:
from:[email protected]- 发件人to:[email protected]- 收件人subject:invoice- 主题包含received>=2025-01-01- 日期筛选hasattachment:yes- 包含附件
组合运算符:
AND- 同时满足两个条件OR- 满足任一条件- 使用括号进行分组
OData 筛选语法
电子邮件筛选器:
isRead eq false- 未读邮件importance eq 'high'- 高重要性hasAttachments eq true- 包含附件receivedDateTime ge 2025-01-01T00:00:00Z- 日期筛选
日历筛选器:
start/dateTime ge '2025-01-01T00:00:00Z'- 日期之后的事件contains(subject, 'Meeting')- 主题包含文本
已知注意事项
帐户类型:
- SEARCH_MESSAGES 需要 Microsoft 365/Enterprise 帐户
- 个人帐户(@hotmail.com、@outlook.com)的 API 访问权限有限
字段混淆:
- 电子邮件属性(receivedDateTime)与日历属性(start/dateTime)不同
- 请勿在日历查询中使用电子邮件字段,反之亦然
快速参考
| 任务 | 工具标识 | 关键参数 |
|---|---|---|
| 搜索邮件 | OUTLOOK_SEARCH_MESSAGES | query, from_index, size |
| 查询文件夹 | OUTLOOK_QUERY_EMAILS | folder, filter, top |
| 获取邮件 | OUTLOOK_GET_MESSAGE | message_id |
| 列出附件 | OUTLOOK_LIST_OUTLOOK_ATTACHMENTS | message_id |
| 下载附件 | OUTLOOK_DOWNLOAD_OUTLOOK_ATTACHMENT | message_id, attachment_id |
| 列出文件夹 | OUTLOOK_LIST_MAIL_FOLDERS | (无) |
| 子文件夹 | OUTLOOK_LIST_CHILD_MAIL_FOLDERS | parent_folder_id |
| 列出事件 | OUTLOOK_LIST_EVENTS | filter, timezone |
| 日历视图 | OUTLOOK_GET_CALENDAR_VIEW | start_datetime, end_datetime |
| 获取事件 | OUTLOOK_GET_EVENT | event_id |
| 列出日历 | OUTLOOK_LIST_CALENDARS | (无) |
| 空闲/忙碌 | OUTLOOK_GET_SCHEDULE | schedules, times |
| 列出联系人 | OUTLOOK_LIST_CONTACTS | top, filter |
| 创建联系人 | OUTLOOK_CREATE_CONTACT | givenName, emailAddresses |
| 联系人文件夹 | OUTLOOK_GET_CONTACT_FOLDERS | (无) |
由 Composio 提供支持
评论
支持 Markdown