article
README
🚀 Outlook MCP 服务器
Outlook MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器,它为大语言模型 (LLMs) 和其他 MCP 客户端提供了标准化接口,使其能够方便地读取、搜索和管理 Microsoft Outlook 中的电子邮件。
✨ 主要特性
- 文件夹管理:可列出 Outlook 客户端中的所有可用邮件文件夹,让您清晰掌握邮件存储结构。
- 电子邮件列表:能从指定时间段内精准检索电子邮件,便于您快速获取所需邮件。
- 电子邮件搜索:支持按联系人姓名、关键字或短语(使用 OR 运算符)搜索电子邮件,提高查找效率。
- 电子邮件详细信息:可查看完整的电子邮件内容,包括附件,让您不错过任何重要信息。
- 电子邮件撰写:能够创建并发送新的电子邮件,满足日常沟通需求。
- 电子邮件回复:可以直接回复现有的电子邮件,方便及时沟通。
📦 安装指南
先决条件
- 需使用 Windows 操作系统。
- Python 版本需为 3.10 或更高。
- 要安装并配置好 Microsoft Outlook 及其活动帐户。
- 需准备 Claude Desktop 或其他与 MCP 兼容的客户端。
安装步骤
- 克隆或下载此仓库。
- 安装所需的依赖项,在命令行中执行以下命令:
pip install mcp>=1.2.0 pywin32>=305
- 配置 Claude Desktop(或其他首选 MCP 客户端)以使用此服务器。
📚 详细文档
配置
Claude Desktop 配置
将以下内容添加到您的 MCP_client_config.json 文件中:
{
"mcpServers": {
"outlook": {
"command": "python",
"args": ["Your path\\outlook_mcp_server.py"],
"env": {}
}
}
}
使用
启动服务器
您可以直接启动服务器,在命令行中执行:
python outlook_mcp_server.py
也可以允许 MCP 客户端(如 Claude Desktop)通过配置启动它。
可用工具
该服务器提供以下实用工具:
list_folders:列出 Outlook 中的所有可用邮件文件夹。list_recent_emails:列出指定天数内的电子邮件标题。search_emails:按联系人姓名或关键字搜索电子邮件。get_email_by_number:获取特定电子邮件的详细内容。reply_to_email_by_number:回复特定电子邮件。compose_email:创建并发送新的电子邮件。
示例工作流程
- 使用
list_folders查看所有可用邮件文件夹,了解邮件存储情况。 - 使用
list_recent_emails查看最近的电子邮件(例如,过去 7 天),掌握近期邮件动态。 - 使用
search_emails搜索特定关键字的电子邮件,快速定位所需邮件。 - 使用
get_email_by_number查看完整的电子邮件,获取详细信息。 - 使用
reply_to_email_by_number回复电子邮件,及时进行沟通。
💻 使用示例
列出 recent emails
能否显示我最近三天未读的邮件?
搜索电子邮件
搜索过去一周关于 "项目更新 或 会议记录" 的电子邮件
阅读电子邮件详细信息
显示列表中第 2 封电子邮件的详细信息
回复电子邮件
回复第 3 封邮件,内容为:"感谢您提供的信息。我会仔细审阅并尽快给您答复。"
撰写新电子邮件
发送一封主题为 "会议议程"、收件人为 john.doe@example.com 的邮件,正文内容为 "这是即将召开的会议的议程......"
🔧 技术细节
故障排除
- 连接问题:确保 Outlook 正在运行并正确配置,以保证服务器与 Outlook 正常连接。
- 权限错误:确保脚本有权访问 Outlook,避免因权限不足导致的问题。
- 搜索问题:对于复杂搜索,尝试在术语之间使用 OR 运算符,提高搜索准确性。
- 电子邮件访问错误:检查电子邮件 ID 是否有效且可访问,确保能正常获取邮件。
- 服务器崩溃:检查 Outlook 的连接和稳定性,排查服务器崩溃原因。
安全注意事项
此服务器可以访问您的 Outlook 电子邮件帐户,并能够读取、发送和管理电子邮件。为保障您的信息安全,仅在受信任的 MCP 客户端和安全环境中使用。
局限性
- 当前仅支持纯文本电子邮件(不支持 HTML)。
- 最大邮件历史记录限制为 30 天。
- 搜索功能依赖于 Outlook 的内置搜索功能。
- 只支持基本的电子邮件功能(无日历、联系人等)。
Scan to contact