mcpField
O
Outlook MCP (Model Context Protocol) Server

Outlook MCP (Model Context Protocol) Server

本地服务
github.com/kacase通信协作876 周前更新

关于 Outlook MCP (Model Context Protocol) Server

Outlook MCP Server 通过 Microsoft Graph API 将 Outlook 日历、邮件和联系人功能接入 LLM。它提供事件管理、邮件操作和人员查询工具。

主要功能

  1. 01查看及管理日历事件
  2. 02读取、发送和管理邮件
  3. 03创建邮件草稿
  4. 04搜索组织人员和联系人
  5. 05提供日历与收件箱资源

适用场景

  1. 01查看指定时间范围内的日程
  2. 02创建或更新 Outlook 会议
  3. 03整理收件箱并处理邮件
  4. 04查找组织成员或近期联系人

MCP 相关

该 MCP 服务通过 Microsoft Graph API 向 MCP 客户端提供日历、邮件和人员查询工具,并提供日历与收件箱资源。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"outlook": {
"command": "npx",
"args": [
"-y",
"mcp_outlook"
],
"env": {
"AUTHORITY": "<AUTHORITY>",
"CLIENT_ID": "<CLIENT_ID>",
"MCP_SERVER_NAME": "<MCP_SERVER_NAME>",
"MCP_SERVER_VERSION": "<MCP_SERVER_VERSION>"
}
}
}
}
启动命令npx -y mcp_outlook
需要配置的环境变量
AUTHORITY密钥
CLIENT_ID
MCP_SERVER_NAME
MCP_SERVER_VERSION

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

安装包
npmmcp_outlook

工具

17

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

参数类型必填说明
startDateTimestring否
endDateTimestring否
topinteger否
filterstring否
orderBystring否

详细介绍

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 应用注册

设置

  1. 在 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”
  2. 记下 Azure 应用注册中的值(概述),并将其作为环境变量用于 MCP 配置:

  • Client ID(应用程序(客户端)ID)
  • Authority ID(目录(租户)ID)
  1. 注册 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

第一次接触 MCP?

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

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