Outlook MCP Server
使用说明(Markdown 格式)
一、项目简介
- 本项目实现了一个基于 MCP(Model Context Protocol)的服务器端,聚合了对 Outlook(邮件、日历、联系人等)的访问能力,并将能力以工具的形式暴露给对话式 AI 客户端(如 Claude、LLM)使用。通过 JSON-RPC 的请求-响应模式,AI 客户端可以查询资源、执行工具、获取提示等。
二、主要功能点
- MCP 核心能力
- initialize:服务器初始化,声明服务器信息与能力
- tools/list:列出服务器提供的工具
- tools/call:根据名称调用具体工具
- 通过上述接口实现资源、工具、提示的标准化访问
- 资源与数据访问
- 提供对 Outlook/Microsoft Graph 的访问能力,包括邮件、日历、联系人、文件夹等数据的读取与管理
- Delta 同步、批量导出、附件处理等实用功能
- 工具集(示例,涵盖 20+ 工具的精简版本)
- 邮件相关:读取邮件、搜索、发送、标记已读等
- 日历相关:列出事件、创建、取消、拒绝等
- 联系人相关:搜索、创建、更新、删除等
- 文件夹与规则:文件夹列表、创建、移动邮件、邮件规则等
- 设置与高级:共享邮箱读取、会议室搜索、自动回复、工作时间等
- 安全与合规
- 针对破坏性操作提供安全标注(如 destructiveHint、readOnlyHint、idempotentHint)
- 发送邮件时提供 dry-run 预览、接收人白名单等保护机制
- 针对大语言模型的工具调用设计了可控的参数与输出格式
- 传输与扩展
- 采用 StdioServerTransport 进行本地/开发环境的直接通信
- 设计易于扩展的新模块、新工具目录
- 支持测试模式,提供 mock 数据与快速迭代
三、安装与运行
- 依赖与前提
- Node.js 18.0.0 及以上
- 需要的 OAuth/Graph 访问配置(Azure App Registration、Graph API 权限等)
- 快速启动
- 全局安装并运行(快速体验)
- npm install -g @littlebearapps/outlook-mcp
- npx @littlebearapps/outlook-mcp
- 也可从源码运行(本地开发)
- git clone https://github.com/littlebearapps/outlook-mcp.git
- cd outlook-mcp
- npm install
- 全局安装并运行(快速体验)
- 关键环境变量
- OUTLOOK_CLIENT_ID:Azure 应用客户端 ID
- OUTLOOK_CLIENT_SECRET:Azure 应用客户端密钥
- USE_TEST_MODE:测试模式开关,true 启用测试数据
- 其他与 Azure/Graph 相关的变量请参照 docs/guides/azure-setup.md 进行配置
四、服务器配置(MCP 客户端的启动参数示例,说明性描述,不包含代码)
- 服务器名称(serverName):outlook-assistant
- 启动命令(command):npx
- 启动参数(args):["@littlebearapps/outlook-mcp"]
- 环境变量(env)示例:
- OUTLOOK_CLIENT_ID: your-application-client-id
- OUTLOOK_CLIENT_SECRET: your-client-secret-VALUE
说明:
- MCP 客户端不需要嵌入式代码,直接通过上述配置让 Claude Desktop 等客户端知道如何启动并连接 MCP 服务器。
- 在 Claude Desktop 的配置中,你需要将上述服务以 MCP 服务器的形式注册,使用命令和环境变量启动服务器实例。
五、基本使用方法
- 启动与认证
- 运行 MCP 服务器后,使用 auth 工具进行认证(通过指定的 OAuth 授权地址完成授权),获取并缓存令牌以便后续 Tool 调用
- 使用工具
- 启动后,使用 MCP 客户端(如 Claude)发起 initialize 请求,获取服务器能力
- 使用 tools/list 查看可用工具
- 使用 tools/call 调用具体工具,例如对 Outlook 的读取、搜索、导出等操作
- 常用场景
- 在对话中请 AI 使用“读取邮箱”、“搜索日历”等工具获取信息并展示给用户
- 通过 delta 同步实现增量数据的更新,降低上下文窗口的成本
- 使用 dry-run 进行发送邮件的安全预览,避免误发送
六、注意事项
- 安全性:处理包含个人数据的邮箱/日历等信息时,请确保仅授权给信任的 AI 客户端,严格遵守令牌和权限管理
- 依赖配置:Azure Graph 权限需要管理员同意,确保应用具备必要的权限(Mail.Read、Mail.ReadWrite、Mail.Send、Calendars.Read/Write、Contacts.Read/Write、MailboxSettings.ReadWrite 等)
七、进一步信息与文档
- 文档总览、指南与工具参考等,可以在仓库的 docs 目录下查看所有指南与 API 参考
关键词 Outlook, Graph API, 邮件工具, 日历管理, AI 集成
分类ID 6