Outlook日历MCP工具
一个模型上下文协议(MCP)服务器,允许Claude访问和管理您的本地Microsoft Outlook日历(仅限Windows)。

特性
- 查看日历事件:列出日期范围内的事件,查看事件详细信息,检查与会者状态
- 管理日历事件:创建新的活动和会议,更新现有活动
- 日历智能:查找空闲时间段进行日程安排,确定最佳会议时间
- 多日历支持:访问Outlook配置文件中的不同日历
先决条件
- Windows操作系统
- 已安装Microsoft Outlook桌面客户端
- VBScript支持 (如果您使用的是Windows 11 24H2+,请参阅下面的VBScript安装)
- Node.js(14.x或更高版本)
- npm(附带Node.js)
VBScript安装(Windows 11 24H2+用户)
重要:从Windows 11 24H2开始,默认情况下不再安装VBScript,必须将其作为可选功能启用。
如果您在Windows更新后遇到MCP服务器无法工作的问题,您可能需要安装VBScript:
- 打开 设置 (Windows+I)
- 首选 应用 → 可选功能
- 点击 “查看功能” 旁边 “添加可选功能”
- 搜索 “VBScript”
- 选择 VBScript 然后单击 安装
- 安装后重新启动计算机
VBScript弃用时间线:
- 第一阶段 (2024年末以上):在Windows 11 24H2中作为可选功能提供
- 第2阶段 (~2027):默认情况下将不再启用
- 第三期 (未来):完全从Windows中删除
*注意:由于社区对VBScript弃用的反馈,我正在考虑对架构进行改进,以使该项目更加经得起未来考验。*
安装
选项1:从npm安装
npm install -g outlook-calendar-mcp您也可以使用npx直接运行它而无需安装:
npx outlook-calendar-mcp选项2:从源代码安装
- 克隆此存储库或下载源代码
- 安装依赖项:
npm install- 运行服务器:
npm startMCP服务器配置
要将此工具与Claude一起使用,您需要将其添加到MCP设置配置文件中。
适用于Claude桌面应用程序
将以下内容添加到您的Claude Desktop配置文件(位于 %APPDATA%\Claude\claude_desktop_config.json):
如果通过npm全局安装:
{
"mcpServers": {
"outlook-calendar": {
"command": "outlook-calendar-mcp",
"args": [],
"env": {}
}
}
}使用npx(无需安装):
{
"mcpServers": {
"outlook-calendar": {
"command": "npx",
"args": ["-y", "outlook-calendar-mcp"],
"env": {}
}
}
}如果从源代码安装:
{
"mcpServers": {
"outlook-calendar": {
"command": "node",
"args": ["path/to/outlook-calendar-mcp/src/index.js"],
"env": {}
}
}
}适用于Claude VSCode扩展
将以下内容添加到您的Claude VSCode扩展MCP设置文件(位于 %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json):
如果通过npm全局安装:
{
"mcpServers": {
"outlook-calendar": {
"command": "outlook-calendar-mcp",
"args": [],
"env": {}
}
}
}使用npx(无需安装):
{
"mcpServers": {
"outlook-calendar": {
"command": "npx",
"args": ["-y", "outlook-calendar-mcp"],
"env": {}
}
}
}如果从源代码安装:
{
"mcpServers": {
"outlook-calendar": {
"command": "node",
"args": ["path/to/outlook-calendar-mcp/src/index.js"],
"env": {}
}
}
}对于源安装,请更换 path/to/outlook-calendar-mcp 带有安装此工具的实际路径。
用法
配置后,Claude将可以访问以下工具:
列出日历事件
list_events
- startDate: Start date in MM/DD/YYYY format
- endDate: End date in MM/DD/YYYY format (optional)
- calendar: Calendar name (optional)示例:“列出我下周的日历事件”
创建日历事件
create_event
- subject: Event subject/title
- startDate: Start date in MM/DD/YYYY format
- startTime: Start time in HH:MM AM/PM format
- endDate: End date in MM/DD/YYYY format (optional)
- endTime: End time in HH:MM AM/PM format (optional)
- location: Event location (optional)
- body: Event description (optional)
- isMeeting: Whether this is a meeting with attendees (optional)
- attendees: Semicolon-separated list of attendee email addresses (optional)
- calendar: Calendar name (optional)示例:“在周五下午2点与约翰就项目提案举行会议”
查找空闲时间
find_free_slots
- startDate: Start date in MM/DD/YYYY format
- endDate: End date in MM/DD/YYYY format (optional)
- duration: Duration in minutes (optional)
- workDayStart: Work day start hour (0-23) (optional)
- workDayEnd: Work day end hour (0-23) (optional)
- calendar: Calendar name (optional)示例:“本周我什么时候有空参加一个1小时的会议?”
获取与会者状态
get_attendee_status
- eventId: Event ID
- calendar: Calendar name (optional)示例:“谁还没有回复我的团队会议邀请?”
重要提示:当使用需要事件ID(update_event、delete_event、get_attendee_status)的操作时,必须使用 id listevent响应中的字段。这是Outlook用于标识事件的唯一EntryID。更新日历事件
update_event
- eventId: Event ID to update
- subject: New event subject/title (optional)
- startDate: New start date in MM/DD/YYYY format (optional)
- startTime: New start time in HH:MM AM/PM format (optional)
- endDate: New end date in MM/DD/YYYY format (optional)
- endTime: New end time in HH:MM AM/PM format (optional)
- location: New event location (optional)
- body: New event description (optional)
- calendar: Calendar name (optional)示例:“将我明天的团队会议更新为下午3点开始,而不是下午2点”
获取日历
get_calendars示例:“显示我的可用日历”
安全说明
- 首次使用时,Outlook可能会显示安全提示以允许脚本访问
- 该工具仅访问您的本地Outlook客户端,不会将日历数据发送到外部服务器
- 所有日历操作都在您的计算机上本地执行
故障排除
- VBScript不可用(Windows 11 24H2+):如果在Windows更新后出现错误,可能需要安装VBScript。看 VBScript安装 以上章节
- “脚本执行失败”错误:通常表示VBScript不可用或Outlook不可访问
- Outlook安全提示:如果从Outlook看到安全提示,则需要允许脚本访问Outlook数据
- 脚本执行策略:如果遇到脚本执行错误,可能需要调整PowerShell执行策略
- 路径问题:确保MCP配置文件中的路径指向工具的正确位置
贡献
我们欢迎为Outlook日历MCP工具做出贡献!请查看我们的 贡献指南 了解如何开始的详细信息。
通过参与此项目,您同意遵守我们的 行为准则.
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

