MSFT-Mail+Calendar

Integrations

  • The MCP server is built to run locally on macOS.

OutlookMCP服务器

该项目是一个 MCP 服务器,它允许 Claude Desktop 使用 Microsoft Graph API 访问您的 Microsoft 365 邮件、日历和(即将推出的)文件。


✨ 特点

  • 邮件访问:通过 Claude 或任何兼容 MCP 的代理撰写、回复、排序、搜索、过滤和分析您的收件箱
  • 🔜日历支持:按日期列出、撰写、删除邮件(即将推出:更新邮件、搜索)
  • 🚧 OneDrive 支持:邮件和日历功能强大后的未来可能方向

🧱 技术栈

  • msgraph (现代 Microsoft Graph SDK)
  • 带有DeviceCodeCredentialTokenCachePersistenceOptions``azure.identity
  • FastMCP — 简单的 MCP 兼容服务器接口
  • uv — 快速 Python 依赖和环境管理

⚙️ 要求

目前构建的目的是:

  • macOS上本地运行
  • Claude Desktop一起使用
  • 使用Azure 注册的应用程序进行身份验证

⚠️ 您必须具有Azure 租户的管理员访问权限才能配置此功能 - 应用程序注册需要 Microsoft Graph 范围的同意(例如Mail.ReadCalendars.Read ),而在大多数组织中,默认情况下这是不需要用户同意的


🚀 入门

# Set up the environment uv venv uv pip install -r uv.lock # Run locally using MCP Inspector mcp dev main.py (expect errors)

在尝试在 Claude 中进行调试之前,先在 Inspector 中让事情运行起来要容易得多。


🔐 身份验证设置

在运行应用程序之前,您需要设置以下内容:

  1. 在项目根目录中创建一个 auth_cache 文件夹(参见注释):
mkdir -p auth_cache
  1. 在项目根目录中创建一个 .env 文件
touch .env
  1. 将以下内容添加到 .env:
echo "AZURE_CLIENT_ID=<your-id-from-Azure-portal-here>" > .env echo "AZURE_TENANT_ID=<your-id-from-Azure-portal-here>" >> .env echo "AZURE_GRAPH_SCOPES=User.Read Mail.Read Mail.Send Mail.ReadWrite" >> .env

注意:首次运行时,应用程序将使用 DeviceCodeCredential 流进行身份验证,如果成功,将自动在 auth_cache 文件夹中创建 auth_record.json。

您必须具有 Azure 租户的管理员访问权限才能注册具有这些权限的应用程序。


Claude 用于桌面集成

要与 Claude Desktop 集成,请将其添加到您的 claude_desktop_config.json 中:

{ "mcpServers": { "outlook": { "command": "uv", "args": [ "run", "--with", "azure-identity,mcp[cli],msgraph-core,msgraph-sdk", "mcp", "run", "/absolute/path/to/OutlookMCPServer" ] } } }

在 Claude Desktop 中,您可以通过“设置/开发人员/编辑配置”找到 json 文件。

注意:您可能需要在“命令”中将“uv”替换为绝对引用

每次更改配置或服务器代码时,请重新启动 Claude Desktop。


📦文件夹结构

. ├── README.md ├── main.py ├── settings.py ├── auth_cache/ │ └── auth_record.json ├── mcpserver/ │ └── graph/ │ ├── __init__.py │ ├── calendar_service.py │ ├── controller.py │ ├── mail_service.py │ ├── __init__.py │ ├── auth_wrapper.py │ ├── context_manager.py │ ├── mail_query.py │ ├── message_info.py │ └── server.py ├── tests/ ├── .env ├── __init__.py ├── main.py

📌 路线图

  • 邮件集成(已完成)
  • 在 Claude Desktop 中进行身份验证(已完成)
  • 日历集成(CORE DONE)
  • 可选的 OneDrive 集成
  • Windows 支持

📄 许可证

麻省理工学院

版权所有 (c) 2024 Enthoosa AI

特此授予获得此软件和相关文档文件(“软件”)副本的任何人免费许可,以无限制方式处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再授权和/或销售软件副本的权利,并允许向其提供软件的人员这样做,但须遵守以下条件:

上述版权声明和本许可声明均应包含在软件的所有副本或实质性部分中。

本软件按“原样”提供,不附带任何形式的明示或暗示保证,包括但不限于适销性、适用于特定用途和非侵权性的保证。在任何情况下,作者或版权所有者均不对因本软件或使用或以其他方式处理本软件而引起的或与之相关的任何索赔、损害或其他责任承担责任,无论是合同、侵权或其他诉讼。

Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Provides tools for interacting with Gmail and Calendar APIs. This server enables you to manage your emails and calendar events programmatically through the MCP interface.
    Last updated -
    8
    13
    JavaScript
    MIT License
  • -
    security
    A
    license
    -
    quality
    Enables interaction with Gmail and Google Calendar using the MCP protocol, supporting multiple Google accounts, email management, and calendar operations through natural language.
    Last updated -
    5
    TypeScript
    MIT License
    • Apple
  • A
    security
    A
    license
    A
    quality
    The Outlook Calendar MCP enables Claude to directly manage Microsoft Outlook calendars on Windows systems, offering a privacy-focused solution that keeps all data local. Users can view events, create meetings, find free time slots, and manage multiple calendars without their data leaving their machi
    Last updated -
    7
    39
    10
    MIT License
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server that provides tools for interacting with Gmail and Calendar APIs, enabling programmatic management of emails and calendar events.
    Last updated -
    8
    7
    JavaScript
    MIT License
    • Apple

View all related MCP servers

ID: u2yx4d4dmr