使用说明
EWS MCP服务器
提供LLM助手的模型上下文协议服务器 真实的, Microsoft Exchange邮箱的键入控件 --邮件、日历, 人员、任务、草稿和(明确门控)发送语音EWS 本地。没有Graph代理,没有Microsoft 365连接器。适用于 Claude Code、Claude Desktop、Open WebUI和任何其他MCP客户端。
此存储库中有两行
| 行 | 位置 | 状态 | 容器图像 |
|---|---|---|---|
| 4.5——电流 | v5/ |
积极发展。 建议用于所有新设置。 | ghcr.io/azizmazrou/ews-mcp:v4.5* |
| 4.0--遗留 | src/ |
仅用于维护。 | ghcr.io/azizmazrou/ews-mcp:latest |
4.5行是绿地重写:合并 28工具 表面,
短别名id模型可以实际复制,标记精简响应(~60个标记
结果卡而不是原始Outlook HTML),缓存优先的本地镜像
阿拉伯语正确的全文搜索,以及在一个地方实施的安全模型。
传统路线保持不变 :latest 在4.5之前,对现有部署稳定
被提升。 如果你是新来的,请使用4.5并阅读
v5/README.md.
快速启动--本地比stdio高4.5(推荐)
不需要Docker。MCP客户端将服务器作为子进程启动; 它继承了您计算机的网络(包括VPN),没有任何东西可以监听 在任何港口。
git clone https://github.com/azizmazrou/ews-mcp && cd ews-mcp
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\Activate.ps1
pip install ./v5
然后用Claude Code注册:
claude mcp add exchange \
-e EWS_SERVER_URL="https://mail.example.com/EWS/Exchange.asmx" \
-e EWS_EMAIL="user@example.com" \
-e EWS_USERNAME="user" -e EWS_PASSWORD="…" \
-- /absolute/path/to/.venv/bin/ewsmcp
Claude Desktop和其他客户端:在配置块中使用相同的命令+env--
看 4.5快速启动.
默认值是安全的: draft 层,发送已禁用。
快速入门——Docker/HTTP(服务器部署)
当服务器在可以直接访问Exchange的主机上运行时:
# 4.5 (pin an exact tag; the 4.5 line never publishes :latest)
docker run -d --name ews-mcp-v5 -p 8000:8000 --env-file .env \
-v ewsmcp-data:/data ghcr.io/azizmazrou/ews-mcp:v4.5.0a1
# legacy 4.0
docker run -d --name ews-mcp --env-file .env --network host \
ghcr.io/azizmazrou/ews-mcp:latest
4.5提供流式HTTP /mcp,简单休息 /api/tools/<name>,
健康 /livez /readyz /health.遗留运输单据:
docs/legacy/CONNECTION_GUIDE.md.
助理能做什么(4.5)
- 阅读速度快 —
get_mailbox_overview(一个电话中的早间简报),search_messages(FTS在当地镜子上,阿拉伯语正确,语义 模式可选),get_message,get_thread,get_attachment. - 日历和人员 —
list_events,get_event,check_availability,find_people,get_contact. - 任务和跟进 —
list_tasks,update_task,waiting_on(发送的帖子无人应答)。 - 安全写作 —
create_draft/update_draft(从不发送), 标签,移动;send_draft仅存在于full层,后面一个 取消开关、收件人分配、每小时上限和两阶段 内容绑定 如果草稿发生变化,确认书就会失效。 - 操作 —
get_server_status(连接、层、缓存水印-- 即使Exchange不可访问,也能正常工作)。
完整的、生成的参考——每个工具及其参数,
信封、错误代码和v3→4.5 重命名映射--is
v5/docs/API.md.
安全模型(4.5)
| 机制 | 它做什么 |
|---|---|
| 能力等级 | read ⊂ draft ⊂ full --上层工具甚至没有注册 |
| 关闭开关 | SEND_ENABLED=false (默认)拒绝每次发送类调用 |
| 收件人保护 | 允许/拒绝参数上的globs 和 已解决收件人草稿 |
| 两阶段确认 | 预览+HMAC令牌绑定到草稿的实际内容;一次性使用 |
| 费率上限 | EWS_MAX_SENDS_PER_HOUR |
| 审计链 | 哈希链日志、验证器脚本在重启后持续存在 |
文档
docs/README.md |
文档地图 --从这里开始 |
v5/README.md |
4.5安装和使用:stdio、HTTP、Docker、配置 |
v5/docs/API.md |
4.5 API参考(从注册表生成) |
v5/DESIGN.md |
4.5架构和基本原理 |
docs/legacy/ |
传统4.0文档(:latest 用户) |
examples/skills/exchange-assistant/ |
刀具表面辅助技能示例 |
发展
pip install -e ./v5[dev]
python -m pytest v5/tests -q # full 4.5 suite — no Exchange needed
python -m ruff check v5
python v5/scripts/boot_smoke.py full # end-to-end boot, dead endpoint
python v5/scripts/dump_tool_table.py --check # docs ↔ registry drift gate
CI: v5-tests (屏蔽流氓+3.11/3.12测试+开机冒烟+Docker
每次触碰都会产生烟雾 v5/; v5-publish 构建
ghcr.io/…:v4.5* 来自标签 v4.5.*,完成了全部的测试工作。这
旧图像发布自 main 推和 v3.*/v4.0.* 只有标签。
存储库布局
v5/ the 4.5 server (package `ews-mcp`, entry point `ewsmcp`)
src/ the legacy 4.0 server (ships as :latest)
docs/ documentation map + legacy 4.0 docs
examples/ example assistant skill
.env.example legacy 4.0 configuration template (4.5: v5/.env.example)