一个实现了模型上下文协议(MCP)服务器的功能,使AI助手能够与Microsoft Outlook进行日历管理、邮件操作和搜索功能的交互。
📅 日历管理
📧 邮件操作
🔍 邮件搜索
git clone https://github.com/wmoto-ai/mcp-outlook-tools.git
cd mcp-outlook-tools
uv pip install -e .
或者使用pip:
pip install -e .
在你的Claude Desktop配置文件中添加以下内容:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"outlook-tools": {
"command": "uv",
"args": [
"--directory",
"C:/path/to/mcp-outlook-tools",
"run",
"--with-editable",
".",
"-m",
"outlook_tools.server"
],
"cwd": "C:/path/to/mcp-outlook-tools",
"env": {
"PYTHONIOENCODING": "utf-8"
}
}
}
}
配置完成后,以下工具将在你的AI助手中可用:
add_appointment向Outlook日历添加新的预约
参数:
- subject: 预约标题
- start_time: 开始时间(YYYY-MM-DD HH:MM)
- end_time: 结束时间(YYYY-MM-DD HH:MM)
- location: 会议地点(可选)
- description: 详细描述(可选)
- categories: 逗号分隔的类别(可选)
- busy_status: 0=空闲, 1=暂定, 2=忙碌, 3=外出(默认:1)
get_calendar获取指定日期范围的日历项目
参数:
- start_date: 开始日期(YYYY-MM-DD)
- end_date: 结束日期(YYYY-MM-DD)
send_email通过Outlook发送电子邮件
参数:
- to: 收件人电子邮件地址(分号分隔)
- cc: 抄送人(分号分隔)
- subject: 邮件主题
- body: 邮件正文文本
mcp-outlook-tools/
├── src/
│ └── outlook_tools/
│ ├── __init__.py
│ ├── server.py # MCP服务器实现
│ ├── calendar_service.py # 日历操作
│ └── search_service.py # 邮件搜索操作
├── test/ # 测试文件
├── pyproject.toml # 项目配置
└── README.md # 本文件
pytest test/
pyright src/
ruff check src/
欢迎贡献!请随时提交Pull Request。
此项目采用MIT许可证 - 详情见LICENSE文件。