mcpField
O
Outlook Calendar MCP Tool

Outlook Calendar MCP Tool

本地服务
github.com/merajmehrabi生产力4258 周前更新

关于 Outlook Calendar MCP Tool

Outlook Calendar MCP Tool 是一个 MCP 服务,让 Claude 访问并管理本机 Microsoft Outlook 日历,仅支持 Windows。它适合希望用自然语言查询和安排日程的 Outlook 用户。数据在本地处理,不会发送到外部服务器。

主要功能

  1. 01查询指定日期范围内的日历事件
  2. 02创建与更新会议及事件
  3. 03查找可用空闲时段
  4. 04访问 Outlook 配置中的多个日历
  5. 05查看参会者的回复状态

适用场景

  1. 01查询下周的日程安排
  2. 02为项目讨论会议查找合适时间
  3. 03更新已有会议的开始时间

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端提供 list_events、create_event、find_free_slots、get_attendee_status、update_event 与 get_calendars 等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"Outlook_Calendar_MCP": {
"command": "npx",
"args": [
"-y",
"outlook-calendar-mcp"
]
}
}
}
启动命令npx -y outlook-calendar-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmoutlook-calendar-mcp

工具

7

收录的工具列表 · 更新于 3 周前

参数类型必填说明
startDatestring是开始日期,格式为 MM/DD/YYYY
endDatestring是结束日期,格式为 MM/DD/YYYY
calendarstring否日历名称(可选)

详细介绍

Outlook Calendar MCP 工具

一个 Model Context Protocol(MCP)服务,让 Claude 能够访问和管理你的本地 Microsoft Outlook 日历(仅限 Windows)。

Outlook Calendar MCP 服务

许可证:MIT

功能

  • 查看日历事件:列出指定日期范围内的事件、查看事件详情、检查参会者状态
  • 管理日历事件:创建新事件和会议、更新现有事件
  • 日历智能功能:查找可安排日程的空闲时段、确定最佳会议时间
  • 支持多个日历:访问 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:

  1. 打开设置(Windows + I)
  2. 前往应用 → 可选功能
  3. 点击**“添加可选功能”旁边的“查看功能”**
  4. 搜索**“VBScript”**
  5. 选择 VBScript,然后点击安装
  6. 安装完成后重启电脑

VBScript 弃用时间表:

  • 阶段 1(2024 年末起):作为 Windows 11 24H2 的可选功能提供
  • 阶段 2(约 2027 年):默认不再启用
  • 阶段 3(未来):从 Windows 中彻底移除

注意:感谢社区对 VBScript 弃用问题的反馈,我正在考虑改进架构,让项目更适应未来变化。

安装

选项 1:从 npm 安装
npm install -g outlook-calendar-mcp

你也可以使用 npx 直接运行,无需安装:

npx outlook-calendar-mcp
选项 2:从源代码安装
  1. 克隆此仓库或下载源代码
  2. 安装依赖项:
npm install
  1. 运行服务:
npm start

MCP 服务配置

要将此工具与 Claude 配合使用,需要将其添加到 MCP 设置配置文件中。

用于 Claude 桌面应用

将以下内容添加到 Claude 桌面应用配置文件中(位于 %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 点安排一场与 John 讨论项目提案的会议”

查找空闲时段
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)

示例:“我这周什么时候有空参加一小时的会议?”

获取参会者状态
get_attendee_status
- eventId: Event ID
- calendar: Calendar name (optional)

示例:“谁还没有回复我的团队会议邀请?”

重要提示:使用需要事件 ID 的操作(update_event、delete_event、get_attendee_status)时,必须使用 list_events 响应中的 id 字段。这是 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 Calendar MCP Tool 做出贡献!请参阅我们的贡献指南,了解如何开始。

参与此项目即表示你同意遵守我们的行为准则。

许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。