
Outlook SNDS
io.github.optipub由 GitHub 账号 optipub 发布v1.0.4更新于 Oct 24, 2026
Outlook.com SNDS IP Data and IP Status reports via the OAuth-secured REST API.
概览
一个本地 MCP 服务器,用 Microsoft 账户登录 Outlook.com SNDS,并返回你发信 IP 的逐 IP 邮件信誉报告。
- 可以做什么
- 通过 Microsoft OAuth 流程登录和退出 SNDS,并查询当前是否已登录。按日期获取 IP Data 报告,可进一步筛选单个 IPv4 地址。获取 IP Status 报告,查看被封锁、判定为机器人或垃圾邮件的 IP。报告涵盖 Outlook.com 视角下的发信量、投诉率、垃圾邮件过滤判定、陷阱命中与封锁状态。
- 适用场景
- 当你向 Outlook.com 发信,希望助手直接拉取 SNDS 的 IP 信誉数据、投诉率和封锁状态,而不必手动访问门户时使用。适合与浏览器同机的本地桌面 MCP 客户端。
- 运行要求
- 作为本地 stdio 进程在桌面机器上运行;从源码运行需要 Node.js 18 或更高版本,也可在 Claude Desktop 或 Cowork 中安装打包扩展。需要一个有 SNDS 访问权限的 Microsoft 账户,首次调用工具会打开浏览器登录。需要访问 Microsoft 登录服务和 SNDS API 的网络。可选环境变量可覆盖客户端 ID、授权机构、作用域、API 地址、令牌目录和超时。
安装
在 SourceWeft 中
- 打开 控制台中的 Outlook SNDS,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Outlook SNDS MCP
[License: MIT] [Built with MCPB] [Node] [Dependencies]
An MCP server that brings the Outlook.com Smart Network Data Services (SNDS) REST API into Claude / Cowork / Claude Desktop and any other MCP client.
Sign in once with your Microsoft account — the server handles the full OAuth 2.0
authorization-code + PKCE flow over a loopback (http://localhost) redirect,
caches the tokens, and refreshes them automatically. Then just ask for your IP
reputation data.
SNDS gives senders per-IP insight into how Outlook.com sees their mail: volume, complaint rates, spam-filter verdicts, trap hits, and block/bot status.
Built & maintained by the Postmaster+ team at OptiPub.
Install
From a release (recommended)
- Download
outlook-snds.mcpbfrom the latest release. - In Cowork / Claude Desktop: Settings → Capabilities → install extension, pick the file (or just double-click it).
- No configuration required.
From source — see Build.
Use with other MCP clients (Cursor, VS Code, Windsurf, …)
The .mcpb is just a packaging convenience for Claude Desktop / Cowork.
Underneath, this is a standard stdio MCP server, so any client that runs
local MCP servers can use it directly — no .mcpb required. Just point the
client at server/index.js.
Clone or download the repo first, then add a server entry:
Cursor — edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project):
VS Code (.vscode/mcp.json), Windsurf, Claude Desktop (manual
config), and most other clients use the same command + args shape — only the
config file location differs. Optional environment overrides (see
Configuration) go in an "env": { ... } object.
The first tool call opens your browser for the SNDS sign-in, exactly as in Cowork — the localhost OAuth loopback works on any local desktop client.
Remote-only clients (e.g. Perplexity, ChatGPT connectors): these accept only a remote HTTPS MCP server URL, not a local command, so this stdio build can't be added directly. Using it there would require hosting it as a remote server with a web-based OAuth redirect.
Usage
Run snds_authenticate once (your browser opens for a Microsoft sign-in), then:
get_data_report takes an optional date (yyyy-MM-dd) and an optional ip
(IPv4). A date is required to filter by IP, because the API path is
/api/report/data/{date}/{ip}.
How authentication works
On sign-in the server starts a short-lived HTTP listener on 127.0.0.1, opens
your browser to the Microsoft login, receives the authorization code on the
loopback URL, and exchanges it (with the PKCE code verifier) for tokens.
No secrets ship in this repo. It's a public OAuth client using PKCE — there
is no client secret. Tokens are stored only on your machine at
~/.snds-mcp/tokens.json with 0600 permissions, and are git-ignored.
REST endpoints wrapped
Base URL: https://substrate.office.com/ip-domain-management-snds
GET /api/report/data/{date?}/{ip?}— IP Data reportGET /api/report/status/ip— IP Status report
Configuration (optional)
Everything defaults to the SNDS portal values. Override via environment variables if you need to:
Build
Requires Node 18+.
Pushing a tag like v1.0.0 triggers CI to validate, pack, and attach the
.mcpb to a GitHub Release automatically (see
.github/workflows/release.yml).
Why zero dependencies
The runtime uses only Node.js built-ins (http, https, crypto,
readline). That keeps the bundle tiny (~11 KB), removes supply-chain risk, and
means there's nothing to npm install at runtime.
Contributing
PRs and issues welcome — see CONTRIBUTING.md.
License
MIT © OptiPub
Not affiliated with or endorsed by Microsoft. "Outlook", "Outlook.com", and "SNDS" are trademarks of Microsoft Corporation.
来源:README.md,提交 be596bb
工具
0版本历史
1- v1.0.4最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分