增强型 Outlook MCP 服务器
这是 Outlook MCP(模型上下文协议)服务器的增强型模块化实现,它通过 Microsoft Graph API 将 Claude 与 Microsoft Outlook 连接起来。该服务器提供了一套强大的工具,用于电子邮件、日历、文件夹管理和规则创建。
特征
完整的身份验证系统:使用 Microsoft Graph API 进行 OAuth 2.0 身份验证,具有令牌刷新和多用户支持
电子邮件管理:列出、搜索、阅读、发送和组织带有附件支持的电子邮件
日历集成:创建、修改和管理日历事件并跟踪与会者
文件夹组织:创建、管理和浏览电子邮件文件夹
规则引擎:创建和管理复杂的邮件处理规则
模块化架构:清晰地分离关注点,以实现更好的可维护性和可扩展性
增强的错误处理:详细的错误消息和日志记录
测试模式:无需真实 API 调用即可进行测试的模拟响应
速率限制:通过内置速率限制防止 API 节流
多环境配置:支持开发、测试和生产环境
Related MCP server: Gmail MCP Server
目录结构
/enhanced-outlook-mcp/
├── index.js # Main entry point
├── config.js # Configuration settings
├── .env.example # Example environment variables
├── auth/ # Authentication modules
│ ├── index.js # Authentication exports
│ ├── token-manager.js # Token storage and refresh
│ ├── multi-user-support.js # Multiple user support
│ └── tools.js # Auth-related tools
├── email/ # Email functionality
│ ├── index.js # Email exports
│ ├── list.js # List emails
│ ├── search.js # Search emails
│ ├── read.js # Read email
│ ├── send.js # Send email
│ └── attachments.js # Handle email attachments
├── calendar/ # Calendar functionality
│ ├── index.js # Calendar exports
│ ├── create-event.js # Create calendar events
│ ├── list-events.js # List calendar events
│ ├── update-event.js # Update calendar events
│ └── delete-event.js # Delete calendar events
├── folder/ # Folder management
│ ├── index.js # Folder exports
│ ├── list.js # List folders
│ ├── create.js # Create folders
│ └── move.js # Move items between folders
├── rules/ # Mail rules functionality
│ ├── index.js # Rules exports
│ ├── create.js # Create mail rules
│ ├── list.js # List mail rules
│ └── delete.js # Delete mail rules
└── utils/ # Utility functions
├── graph-api.js # Microsoft Graph API helper
├── odata-helpers.js # OData query building
├── logger.js # Logging utility
├── rate-limiter.js # API rate limiting
└── mock-data/ # Test mode mock data
├── emails.js # Mock email data
├── folders.js # Mock folder data
├── calendar.js # Mock calendar data
└── rules.js # Mock rules data安装
克隆存储库:
git clone https://github.com/your-username/enhanced-outlook-mcp.git cd enhanced-outlook-mcp安装依赖项:
npm install使用您的 Microsoft App Registration 详细信息,根据
.env.example创建.env文件:MS_CLIENT_ID=your_client_id MS_CLIENT_SECRET=your_client_secret # Additional configuration options
与 Claude 一起使用
通过将以下内容添加到 Claude 配置中,配置 Claude 以使用 MCP 服务器:
{ "tools": [ { "name": "enhanced-outlook-mcp", "url": "http://localhost:3000", "auth": { "type": "none" } } ] }启动 MCP 服务器:
npm start在单独的终端中,启动身份验证服务器:
npm run auth-server使用 Claude 中的身份验证工具启动身份验证流程。
身份验证流程
在配置的端口上启动认证服务器(默认值:3333)
使用
authenticate工具获取身份验证 URL在浏览器中完成身份验证
令牌安全地存储在配置的位置
发展
要以自动重新加载的方式在开发模式下运行服务器:
npm run dev运行测试:
npm test执照
MIT 许可证
贡献
欢迎贡献代码!欢迎提交 Pull 请求。