Files
beaver_project/skills/outlook-mail/versions/v0001/SKILL.md
steven_li 8aeb97a5fc feat(app): 移除内置agents并添加CORS支持和技能上传优化
移除了agents/registry.json中的所有内置agents配置,将agents数组清空。
为web应用添加了CORS中间件支持,允许指定的前端地址跨域访问。
重构了技能上传功能,增加了LLM重写机制,自动规范化上传的技能格式。
新增了工具名称提取逻辑,从技能正文中自动识别Required Tools段落。
更新了技能学习候选者和草稿的载荷结构,添加评估报告统计信息。
修改了意图路由技能的说明,改进任务状态管理逻辑。
2026-06-12 13:25:20 +08:00

202 lines
6.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: outlook-mail
description: 通过 Outlook MCP 进行邮件收发、日历管理和会议安排。支持 Graph API 和 on-prem Exchange。
tools:
- mcp_outlook_mcp_mail_list_folders
- mcp_outlook_mcp_mail_list_messages
- mcp_outlook_mcp_mail_search_messages
- mcp_outlook_mcp_mail_get_message
- mcp_outlook_mcp_mail_send_email
- mcp_outlook_mcp_mail_reply_to_message
- mcp_outlook_mcp_mail_forward_message
- mcp_outlook_mcp_mail_move_message
- mcp_outlook_mcp_mail_delta_sync
- mcp_outlook_mcp_calendar_list_events
- mcp_outlook_mcp_calendar_create_event
- mcp_outlook_mcp_calendar_update_event
- mcp_outlook_mcp_calendar_get_schedule
- mcp_outlook_mcp_calendar_find_meeting_times
- mcp_outlook_mcp_calendar_delta_sync
---
# Outlook Mail
## Overview
通过 Outlook MCP 进行邮件收发、日历管理和会议安排。支持 Graph API 和 on-prem Exchange。
## When to Use
- Use when the task requires Outlook Mail guidance.
## Required Tools
- `mcp_outlook_mcp_mail_list_folders`
- `mcp_outlook_mcp_mail_list_messages`
- `mcp_outlook_mcp_mail_search_messages`
- `mcp_outlook_mcp_mail_get_message`
- `mcp_outlook_mcp_mail_send_email`
- `mcp_outlook_mcp_mail_reply_to_message`
- `mcp_outlook_mcp_mail_forward_message`
- `mcp_outlook_mcp_mail_move_message`
- `mcp_outlook_mcp_mail_delta_sync`
- `mcp_outlook_mcp_calendar_list_events`
- `mcp_outlook_mcp_calendar_create_event`
- `mcp_outlook_mcp_calendar_update_event`
- `mcp_outlook_mcp_calendar_get_schedule`
- `mcp_outlook_mcp_calendar_find_meeting_times`
- `mcp_outlook_mcp_calendar_delta_sync`
## Workflow
- Identify whether the user's request matches the skill's trigger conditions.
- Read the relevant source guidance below and apply only the steps that fit the current task.
- Use the required tools deliberately and keep tool output tied to the user's goal.
### Source Guidance
### Outlook MCP — 邮件与日历管理
通过 MCP server 连接 OutlookMicrosoft Graph / on-prem Exchange提供邮件和日历的完整操作能力。
#### 邮件工具
##### mcp_outlook_mcp_mail_list_folders
列出 Outlook 邮件文件夹。
- `top` (int, 默认 50): 返回数量上限
##### mcp_outlook_mcp_mail_list_messages
列出指定文件夹的邮件。
- `folder` (str, 默认 "inbox"): 文件夹名
- `top` (int, 默认 20): 返回条数
- `skip` (int, 默认 0): 跳过的条数
- `unread_only` (bool, 默认 false): 仅未读
##### mcp_outlook_mcp_mail_search_messages
搜索邮件(使用 Graph search 语义)。
- `query` (str): 搜索关键词
- `folder` (str | None): 限定文件夹
- `top` (int, 默认 20): 返回条数
##### mcp_outlook_mcp_mail_get_message
读取单封邮件的完整内容。
- `message_id` (str): 邮件 ID
- `changekey` (str | None): EWS changekeyon-prem 需要)
##### mcp_outlook_mcp_mail_send_email
发送新邮件。**幂等操作**,支持 idempotency_key。
- `subject` (str): 主题
- `body` (str): 正文(支持 HTML
- `to_recipients` (list[str]): 收件人
- `cc_recipients` (list[str] | None): 抄送
- `bcc_recipients` (list[str] | None): 密送
- `idempotency_key` (str | None): 幂等键,防止重复发送
##### mcp_outlook_mcp_mail_reply_to_message
回复一封邮件。
- `message_id` (str): 原邮件 ID
- `comment` (str): 回复内容
- `changekey` (str | None): EWS changekey
- `idempotency_key` (str | None)
##### mcp_outlook_mcp_mail_forward_message
转发邮件给其他人。
- `message_id` (str): 原邮件 ID
- `to_recipients` (list[str]): 转发目标
- `comment` (str): 附加说明
- `cc_recipients` (list[str] | None)
- `changekey` (str | None)
- `idempotency_key` (str | None)
##### mcp_outlook_mcp_mail_move_message
移动邮件到其他文件夹。
- `message_id` (str): 邮件 ID
- `destination_folder` (str): 目标文件夹
- `changekey` (str | None)
- `idempotency_key` (str | None)
##### mcp_outlook_mcp_mail_delta_sync
增量同步邮件变更。支持游标持久化,适合长期同步场景。
- `folder` (str, 默认 "inbox"): 文件夹
- `delta_link` (str | None): 增量链接(续传时提供)
- `top` (int, 默认 50)
- `persist_cursor` (bool, 默认 true): 是否持久化游标
#### 日历工具
##### mcp_outlook_mcp_calendar_list_events
列出日历事件或日历视图。
- `start_time` (str | None): ISO 开始时间,与 end_time 成对提供
- `end_time` (str | None): ISO 结束时间
- `top` (int, 默认 20)
- `skip` (int, 默认 0)
##### mcp_outlook_mcp_calendar_create_event
创建日历事件或正式会议邀请。**幂等操作**。
- `subject` (str): 主题
- `start_time` (str): ISO 开始时间
- `end_time` (str): ISO 结束时间
- `timezone` (str, 默认 "UTC"): 时区
- `body` (str | None): 正文
- `location` (str | None): 地点
- `attendees` (list[str] | None): 参会人
- `is_online_meeting` (bool, 默认 false): 是否创建 Teams 会议
- `online_meeting_provider` (str, 默认 "teamsForBusiness"): 在线会议提供商
- `transaction_id` (str | None): 事务 ID
- `idempotency_key` (str | None)
##### mcp_outlook_mcp_calendar_update_event
更新已有日历事件。
- `event_id` (str): 事件 ID
- `subject` / `start_time` / `end_time` / `timezone` / `body` / `location` / `attendees`: 可选更新字段
- `idempotency_key` (str | None)
##### mcp_outlook_mcp_calendar_get_schedule
查询与会人忙闲状态。
- `schedules` (list[str]): 要查询的人员列表
- `start_time` (str): ISO 开始
- `end_time` (str): ISO 结束
- `availability_view_interval` (int, 默认 30): 时间间隔(分钟)
- `timezone` (str, 默认 "UTC")
##### mcp_outlook_mcp_calendar_find_meeting_times
推荐最佳会议时间。
- `attendees` (list[str]): 参会人
- `start_time` (str): 时间范围开始
- `end_time` (str): 时间范围结束
- `duration_minutes` (int, 默认 30): 会议时长
- `timezone` (str, 默认 "UTC")
- `max_candidates` (int, 默认 10): 候选数
##### mcp_outlook_mcp_calendar_delta_sync
增量同步日历事件变更。
- `start_time` (str): 同步窗口开始
- `end_time` (str): 同步窗口结束
- `delta_link` (str | None): 增量续传链接
- `top` (int, 默认 50)
- `persist_cursor` (bool, 默认 true)
- `cursor_key` (str, 默认 "calendar:primary")
#### 使用原则
1. 邮件操作优先使用幂等键idempotency_key防止重复发送
2. 日历时间参数统一使用 ISO 8601 格式
3. 增量同步时优先使用返回的 delta_link 续传,避免全量拉取
4. 发送邮件前确认收件人地址格式正确
5. 创建会议时明确时区,避免跨时区混淆
## Validation
- Verify the requested outcome with the most direct available check.
- Report any skipped step, unavailable dependency, or remaining uncertainty explicitly.
## Boundaries
- Do not broaden the task beyond the user's request.
- Do not use tools that are not listed or clearly available in the current runtime.
## Anti-Patterns
- Do not summarize the skill instead of applying it.
- Do not claim completion without validation evidence.