关于 Outlook MCP (Model Context Protocol) Server
Outlook MCP Server 通过 Microsoft Graph API 将 Outlook 日历、邮件和联系人功能接入 LLM。它提供事件管理、邮件操作和人员查询工具。
主要功能
- 01查看及管理日历事件
- 02读取、发送和管理邮件
- 03创建邮件草稿
- 04搜索组织人员和联系人
- 05提供日历与收件箱资源
适用场景
- 01查看指定时间范围内的日程
- 02创建或更新 Outlook 会议
- 03整理收件箱并处理邮件
- 04查找组织成员或近期联系人
MCP 相关
该 MCP 服务通过 Microsoft Graph API 向 MCP 客户端提供日历、邮件和人员查询工具,并提供日历与收件箱资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
17收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| startDateTime | string | 否 | |
| endDateTime | string | 否 | |
| top | integer | 否 | |
| filter | string | 否 | |
| orderBy | string | 否 |
详细介绍
Outlook MCP(Model Context Protocol)服务
通过 Microsoft Graph API 与 Microsoft Outlook 集成的 Model Context Protocol 服务,可让 Claude 和其他大模型查看日历事件、安排新事件、阅读电子邮件并发送消息。
功能
- 📅 日历集成:查看、列出、创建、更新和删除日历事件
- 📧 电子邮件集成:读取、发送、草拟和管理 Outlook 帐户中的电子邮件
- 🔁 Model Context Protocol:遵循 MCP 标准,支持大模型工具集成
- 🛡️ 类型安全:采用 Zod 验证的完整 TypeScript 实现
先决条件
- Node.js 18+
- 具有相应权限的 Microsoft 365 帐户
- 配置了 Graph API 权限(日历和邮件)的 Microsoft Azure 应用注册
设置
-
在 Azure Active Directory 中注册应用程序:
-
前往 Azure Portal
-
导航至“应用注册”
-
创建新的注册,并将重定向 URI 类型设为“Public client/native (mobile & desktop)”
- 将
http://localhost注册为重定向 URI
- 将
-
配置 API 权限:
- 选择 Microsoft Graph 和 delegated 类型,因为我们将代表用户执行操作
- 日历:“Calendars.Read”和“Calendars.ReadWrite”
- 邮件:“Mail.Read”、“Mail.ReadWrite”和“Mail.Send”
- 联系人:“People.Read”
-
-
记下 Azure 应用注册中的值(概述),并将其作为环境变量用于 MCP 配置:
- Client ID(应用程序(客户端)ID)
- Authority ID(目录(租户)ID)
- 注册 MCP 服务
对于 Claude Desktop,请在
~/.claude/config.json中创建或更新配置:
{
"mcpServers": {
"outlook": {
"command": "npx",
"args": [
"mcp_outlook"
],
"env": {
"AUTHORITY": "your-authority-id",
"CLIENT_ID": "your-client-id",
"MCP_SERVER_NAME": "outlook-mcp",
"MCP_SERVER_VERSION": "1.0.0"
}
}
}
}
请务必将路径和环境变量替换为实际值。
可用工具
日历工具
- listCalendarEvents:列出用户在指定时间范围内的日历事件
- createCalendarEvent:创建新的日历事件
- getCalendarEvent:获取特定日历事件的详细信息
- updateCalendarEvent:更新现有日历事件
- deleteCalendarEvent:删除日历事件
电子邮件工具
- listEmails:列出指定文件夹(收件箱、已发送、草稿等)中的电子邮件
- getEmail:获取特定电子邮件的详细信息
- sendEmail:发送新的电子邮件
- createDraft:创建电子邮件草稿,但不发送
- markEmailAsRead:将电子邮件标记为已读
- markEmailAsUnread:将电子邮件标记为未读
- deleteEmail:删除电子邮件
联系人工具
- searchPeople 在组织或近期联系人中查找人员
- getPerson 获取人员信息
资源
- calendar:包含日历事件数据的资源
- inbox:包含收件箱消息数据的资源
开发
在开发模式下运行并启用实时重新加载:
npm run dev
运行 lint:
npm run lint
在本地配置 MCP
{
"mcpServers": {
"outlook": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/outlook_mcp/build/index.js"
],
"env": {
"AUTHORITY": "your-authority-id",
"CLIENT_ID": "your-client-id",
"MCP_SERVER_NAME": "outlook-mcp",
"MCP_SERVER_VERSION": "1.0.0"
}
}
}
}
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。