
Proofpoint Essentials
io.github.WYRE-AI由 GitHub 账号 WYRE-AI 发布v1.0.3更新于 Oct 24, 2026
MCP server for Proofpoint Essentials -- MSP org, domain, user, licensing, and reporting management.
概览
面向 Proofpoint Essentials 的本地 MCP 服务器,让助手管理 MSP 邮件安全的组织、域名、用户、许可和邮件流报表。
- 可以做什么
- 读取和管理组织:获取组织及其域名、启用或停用组织、删除组织(破坏性)。管理域名:列出、批量创建、更新、删除(破坏性)。管理用户:列出、获取、批量创建、更新、删除(破坏性)。读取和修改功能、许可与订阅套餐。获取入站/出站邮件流报表,解析客户域名所在区域,并签发基于 Odin 的 SSO 令牌。
- 适用场景
- 适用于 MSP 或组织管理员希望助手处理 Proofpoint Essentials 租户管理:客户开通、创建域名和用户、调整许可或功能、查看邮件流报表。不适用于 Proofpoint TAP 威胁情报或隔离区操作。
- 运行要求
- 以本地进程运行(npm 包或容器镜像,默认 stdio)。需要组织管理员用户名和密码,放在 PROOFPOINT_ESSENTIALS_USERNAME 和 PROOFPOINT_ESSENTIALS_PASSWORD 中,可选区域放在 PROOFPOINT_ESSENTIALS_REGION(默认 us1)。HTTP 模式还需 CONDUIT_S2S_SECRET 和每次请求的网关请求头。终端用户账号无法通过认证。
安装
在 SourceWeft 中
- 打开 控制台中的 Proofpoint Essentials,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Proofpoint Essentials MCP Server
A Model Context Protocol (MCP) server for the Proofpoint Essentials API. Enables AI assistants to manage MSP-multi-tenant email security: organizations, domains, users, licensing, features, subscription packages, and email flow reporting.
This is a distinct product/API from Proofpoint TAP (see
proofpoint-mcp for TAP threat intelligence,
quarantine, and URL defense) — Essentials is Proofpoint's SMB/MSP email-security product,
with its own base URL, auth model, and org-management surface.
Part of the WYRE AI MCP fleet — a growing suite of AI integrations for the MSP stack.
Installation
Configuration
Copy .env.example and set the variables below.
Only organization-administrator accounts can authenticate against this API; end-user accounts cannot.
/health and /healthz stay unauthenticated and do not read credentials. The stdio transport does not use CONDUIT_S2S_SECRET.
HTTP authentication
With MCP_TRANSPORT=http and CONDUIT_S2S_SECRET set, every /mcp request must include X-Gateway-S2S. A missing or invalid header returns 401 before any vendor credential is read.
The header is an HMAC proof, not a copy of the secret:
<hex hmac-sha256> is HMAC-SHA256 of the ASCII string t=<unix seconds> (the same t= prefix and the same decimal timestamp), keyed with CONDUIT_S2S_SECRET, encoded as lowercase hex. The timestamp must be within 300 seconds of the server clock.
In AUTH_MODE=gateway, /mcp also requires X-Proofpoint-Essentials-Username and X-Proofpoint-Essentials-Password. Those headers are the only credential source for that request.
Usage
Running with Claude Desktop
Add to your Claude Desktop claude_desktop_config.json:
Running with Claude Code (CLI)
Docker
The image listens on 0.0.0.0 inside the container (MCP_HTTP_HOST) and defaults to AUTH_MODE=gateway. Publish the port on loopback and pass the S2S secret. In gateway mode, Proofpoint Essentials credentials arrive on each request as X-Proofpoint-Essentials-* headers; the image does not read them from the environment.
Compose refuses to start when CONDUIT_S2S_SECRET is unset, sets AUTH_MODE=gateway, publishes 127.0.0.1:8080:8080, and passes no PROOFPOINT_ESSENTIALS_* variables:
Single-tenant HTTP (AUTH_MODE=env) still requires the S2S secret, then uses PROOFPOINT_ESSENTIALS_USERNAME and PROOFPOINT_ESSENTIALS_PASSWORD:
Local HTTP without a secret is development-only. It binds 127.0.0.1 and logs a warning. A non-loopback MCP_HTTP_HOST is overridden to 127.0.0.1:
Available Tools
Proofpoint Essentials is an MSP multi-tenant API — every org/domain/user-scoped tool takes the target customer organization's domain as a per-call argument (credentials are not scoped to a single org).
Organizations
proofpoint_essentials_org_get— get org data and its domainsproofpoint_essentials_org_set_active— activate/deactivate an org ⚠ high-impactproofpoint_essentials_org_delete— delete an org ⚠ destructive, irreversible
Domains
proofpoint_essentials_domains_listproofpoint_essentials_domains_create— params:orgDomain, non-emptydomains: string[]. Each name is sent as a Domain object{name}; returns{ summary: { requested, returned, succeeded, failed, unconfirmed }, results }with raw per-item results only when every returned item succeeded and none are unconfirmed, including missing items. Requested is the submitted count (raised to returned only on over-return); missing response items count as unconfirmed. Any failed item setsisError. Any failure or unconfirmed item makesresultsa cleaned per-item list{ index, outcome, status, code, message }with other fields omitted; succeeded items are created and must not be retried.proofpoint_essentials_domains_update⚠ high-impactproofpoint_essentials_domains_delete⚠ destructive, irreversible
Users
proofpoint_essentials_users_listproofpoint_essentials_users_getproofpoint_essentials_users_create— params:orgDomain, non-emptyusers[]with requiredprimary_emailand optionalfirstname,surname,type,is_active,send_welcome_email,alias_emails. Users are sent to Proofpoint as a bare array of User objects; returns{ summary: { requested, returned, succeeded, failed, unconfirmed }, results }with raw per-item results only when every returned item succeeded and none are unconfirmed, including missing items. Requested is the submitted count (raised to returned only on over-return); missing response items count as unconfirmed. Any failed item setsisError. Any failure or unconfirmed item makesresultsa cleaned per-item list{ index, outcome, status, code, message }with other fields omitted; succeeded items are created and must not be retried. Response-only fields (uid, password, creation_date, last_update, last_login) are ignored on create.proofpoint_essentials_users_update⚠ high-impactproofpoint_essentials_users_delete⚠ destructive, irreversible
The create serialization and result normalization fix requires @wyre-ai/node-proofpoint-essentials >= 1.0.2, which this package depends on.
Endpoint discovery
proofpoint_essentials_endpoint_discover— resolve which region hosts a customer domain
Features / Licensing / Package
proofpoint_essentials_features_get/proofpoint_essentials_features_update⚠ high-impactproofpoint_essentials_licensing_get/proofpoint_essentials_licensing_update⚠ high-impactproofpoint_essentials_package_update⚠ high-impact
Reporting
proofpoint_essentials_reporting_get— inbound/outbound email flow metrics
Token
proofpoint_essentials_token_create— mint an Odin-based SSO token
Destructive tools require explicit confirmation. Interactive MCP clients are prompted
via elicitation; non-interactive callers (e.g. the WYRE gateway) must pass
confirm_destructive_action: true and are otherwise blocked.
Development
Contributing
Contributions are welcome! Please see CONTRIBUTING.md, or open an issue to discuss changes.
Error redaction
Error text and cleaned batch-result messages redact email addresses, including supported
encoded @ forms (%40, %2540, @, @, @, literal \u0040,
and full-width @), spaced @ forms, and quoted local parts. Domain-tool errors
and cleaned domain-create messages also redact bare hostnames. Vendor error bodies
are reduced to statusCode and scalar code metadata; other vendor fields are omitted.
Each error text or cleaned per-item message is capped at 300 Unicode code points
after redaction (the aggregate batch JSON is not capped). Confirmed all-success
results retain raw data; this is targeted redaction, not general PII removal.
License
Licensed under the Apache License, Version 2.0. See LICENSE for details.
来源:README.md,提交 2a11da4
工具
0版本历史
4- v1.0.3最新Oct 24, 2026
- v1.0.2Oct 23, 2026
- v1.0.1Oct 14, 2026
- v1.0.0Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分