
Mcp Outlook
io.github.dockndevai由 GitHub 帳號 dockndevai 發布v0.4.1更新於 Oct 24, 2026
Outlook mail and OneDrive files via Microsoft Graph — read, search, send and organize.
概覽
本機 MCP 伺服器,讓助理透過 Microsoft Graph 讀取與操作 Outlook 信箱、OneDrive 檔案和行事曆。
- 可以做什麼
- 讀取郵件:確認所用信箱、列出資料夾和郵件、全文搜尋、讀取內文和附件中繼資料、列出聯絡人,預設唯讀。起草與傳送:建立草稿,在讀寫模式和傳送開關開啟後傳送、回覆和轉寄。整理郵件:標示已讀或未讀、移動郵件,管理員模式下可刪除至「刪除的郵件」。管理 OneDrive:瀏覽、搜尋、下載文字、上傳、建立資料夾、移動或重新命名、刪除項目。處理行事曆:列出行事曆和事件、查詢空閒時間,並在模式允許時建立、更新、回覆、取消或刪除事件。
- 適用情境
- 適合讓助理分類、搜尋或摘要 Outlook 收件匣、準備草稿,或在安排會議前查看空閒時間和事件。也適合在對話中瀏覽或更新 OneDrive 檔案。預設唯讀模式適合在不更動信箱的前提下探索。
- 執行需求
- 透過 npx 以 stdio 本機程序執行,僅限桌面用戶端。需要 Entra(Azure AD)應用程式註冊,設定 OUTLOOK_CLIENT_ID 及供瀏覽器登入的公開用戶端重新導向 URI,並授予委派的郵件權限。僅應用程式自動化需 OUTLOOK_CLIENT_SECRET、OUTLOOK_TENANT_ID 和 OUTLOOK_USER,或改用預先取得的 OUTLOOK_TOKEN。OUTLOOK_MODE 控制能力等級。需要連線至 Microsoft Graph 的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Mcp Outlook,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
mcp-outlook
A safe-by-default Model Context Protocol server for Microsoft Outlook mail, over Microsoft Graph. It lets an agent read and operate a mailbox — list folders and messages, full-text search, read bodies and attachment metadata, list contacts, and (in higher modes) create drafts, send / reply / forward, mark read, move messages, and delete. It also manages OneDrive files — browse, search, download, upload, create folders, move/rename, and delete — and the calendar — list calendars and events, check free/busy, and (gated) create, update, respond to, cancel and delete events.
Browser sign-in: on first run it opens your browser to the Microsoft sign-in page, then caches the token and refreshes it silently — the server never sees your password.
Part of the dockndevai MCP server suite — one governance model across all of them.
What it gives an agent
The server starts read-only (see Safe by default); higher-capability tools are only registered when you raise the mode.
Access is ultimately governed by your Microsoft account's granted scopes. Calendar tools need the
Calendars.ReadWritedelegated scope (included in the defaults). If your token wasn't consented for it, Graph returns 403 — the suite's modes/flags are defence in depth on top of that Microsoft-level control. Downscope withOUTLOOK_SCOPES(e.g. dropCalendars.ReadWrite, or useCalendars.Readfor read-only).
Install
You need an Entra (Azure AD) app registration. For the default browser sign-in, register a public client and add the redirect URI http://localhost (platform: Mobile and desktop applications), then use its Application (client) ID as OUTLOOK_CLIENT_ID. Grant delegated Mail.Read (and Mail.Send / Mail.ReadWrite if you want to send or organize). No client secret is needed for interactive use.
Prefer automation? Use app-only auth instead: set OUTLOOK_CLIENT_SECRET + OUTLOOK_TENANT_ID + OUTLOOK_USER (see Authentication).
Configure
On first use the server opens your browser to sign in and caches the token at ~/.mcp-outlook/token.json (0600); later runs refresh silently.
See docs/CLIENTS.md for Claude Code / Cursor / Codex / VS Code / Windsurf snippets, and .env.example for every supported variable.
Authentication
Auth mode is chosen automatically (override with OUTLOOK_AUTH):
- interactive (default) — only
OUTLOOK_CLIENT_IDset. Authorization-code + PKCE with a loopback redirect: the browser opens, you approve once, and the access + refresh token are cached on disk. Operates on the signed-in user's mailbox (/me). The server never handles your password. - client-credentials (app-only) —
OUTLOOK_CLIENT_SECRETpresent. The server fetches an app token itself; requiresOUTLOOK_TENANT_IDandOUTLOOK_USER(the mailbox to act on, since an app token has no signed-in user). Grant the app application Mail permissions with admin consent. - token —
OUTLOOK_TOKENset to a pre-obtained Graph bearer token. You manage its lifetime.
Safe by default
The access model is enforced by src/security.ts — defence in depth on top of the Graph token's own scopes/roles:
OUTLOOK_MODE—read-only(default) →read-write→admin. A tool is registered only if the mode allows its capability. Read-only exposes the 7 read tools; drafts/moves needread-write; deletes needadmin.OUTLOOK_ALLOW_SEND— sending mail (send / reply / forward) can't be undone, so on top ofread-writeit also requires this flag. Drafting is always allowed in read-write; nothing leaves the mailbox until sent.OUTLOOK_ALLOW_DELETE— deletes require this flag on top ofadminmode.OUTLOOK_FOLDER_ALLOWLIST/OUTLOOK_PROTECTED_FOLDERS— confine which folders can be written to / moved into; mark folders (e.g.sentitems,archive) that may be read but never modified.- Interactive confirmation — when the client supports MCP elicitation, sending mail and deleting a message pause and ask the human to approve before running; clients that can't elicit fall back to the
OUTLOOK_ALLOW_SEND/OUTLOOK_ALLOW_DELETEgates. OUTLOOK_DRY_RUN— validate and log writes without executing them.OUTLOOK_AUDIT_LOG— a JSON audit line per guarded operation, on stderr (default on).- Attachment bytes are never returned —
list_attachmentsreturns metadata only.
See SECURITY.md.
Developing
Licence
MIT
來源:README.md,提交 d196f7e
工具
0版本歷史
5- v0.4.1最新Oct 12, 2026
- v0.4.0Oct 10, 2026
- v0.3.0Sep 29, 2026
- v0.2.0Sep 17, 2026
- v0.1.0Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分
