
Avanan MCP
io.github.Servosity由 GitHub 账号 Servosity 发布v0.1.13更新于 Nov 5, 2026
Every Avanan API operation, plus shift-start triage, campaign grouping, and quarantine evidence.
概览
本地 MCP 服务器与 CLI,开放 Avanan(Check Point Harmony Email)API 操作,并提供值班分诊、钓鱼活动聚类与隔离区处置。
- 可以做什么
- 查询与查看 Avanan 邮件安全数据:事件、实体、例外规则、作用域与 MSP 租户
- 执行值班分诊、钓鱼活动聚类、单封邮件时间线,以及跨七个引擎的例外查找与审计
- 将事件、实体与例外同步到本地 SQLite 镜像,支持离线与跨租户查询
- 执行处置动作:隔离或恢复邮件、对实体或事件执行动作、通知终端用户
- 管理例外、CTP 列表以及 MSP 租户、用户与许可证,并支持从 JSONL 批量导入
- 用 doctor 命令检查认证与连通性
- 适用场景
- 适合使用 Check Point Avanan / Harmony Email 的 MSP 或安全团队,希望让 AI 助手分诊检测结果、归并钓鱼活动、追查有争议的隔离邮件、审计例外规则,或在不反复调用 API 的情况下汇总多个租户的情况。
- 运行要求
- 以本地进程(stdio)在桌面运行,可通过 .mcpb 包或项目安装脚本安装。需要 Avanan 应用凭据:AVANAN_APP_ID、AVANAN_CLIENT_SECRET,以及由 auth login 生成或直接粘贴的 AVANAN_TOKEN。可选 AVANAN_BASE_URL 用于区域或自建主机,AVANAN_MCP_HTTP_TOKEN 仅在 HTTP 传输时需要,另有 AVANAN_USER_AGENT。需能访问 Avanan API 网络;会在用户账户下创建本地 SQLite 镜像。
安装
在 SourceWeft 中
- 打开 控制台中的 Avanan MCP,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Avanan + AI - for Claude, the ChatGPT desktop app, GitHub Copilot, Gemini CLI, and any agent that speaks MCP
Unofficial. Community-built Claude Code Skill and MCP server for the Avanan API. Not affiliated with, endorsed by, or sponsored by Check Point. Avanan and Harmony Email & Collaboration are trademarks of Check Point Software Technologies Ltd.
[Avanan - MCP server and Claude Code Skill]
Full skill page - install, outcomes, safety model.
Every Avanan (Check Point Harmony Email and Collaboration) API operation, plus shift-start triage, phishing campaign clustering, single-message lifecycle timelines, one exception lookup across all seven security engines, and cross-tenant MSP fleet rollups that a stateless API mirror cannot answer in a single call. Works with the AI you already use - ChatGPT (desktop app), Claude Desktop, Codex, Claude Code, Claude Cowork, and GitHub Copilot - plus Gemini CLI. Free, open source, runs on your laptop. Built for MSP owners. No code required.
Works with your agent
The six agents MSP owners actually use (self-serve, works today):
The ChatGPT desktop app runs avanan-mcp locally and shares MCP configuration with Codex (OpenAI). ChatGPT on the web needs a remote server, which msp-skills does not support yet. If your team works there, a hosted gateway is the better pick; check that your AI app is on the gateway's setup list. Setup steps: mcp-install.md.
Also for the Microsoft and Google stacks
Big install base, but an honest heads-up: Gemini CLI runs the local binary you just installed, while Microsoft 365 Copilot and the Gemini app need a remote server, which msp-skills does not support yet.
Install in 60 seconds
Prefer the Claude Code plugin? Add the marketplace once, then install:
Path A - paste one prompt into your AI agent (recommended)
Copy this into Claude Code, Codex CLI, or Claude Cowork:
Install the Avanan Skill and MCP server from Servosity/msp-skills in this agent workspace. If this workspace uses a POSIX shell (macOS, Linux, WSL, or Bash), run
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/avanan/install.sh). If it uses Windows PowerShell, runiwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/avanan/install.ps1 | iex. Then authenticate per the README and runavanan-cli --helpto explore.
The same prompt works in any agent that can run shell.
Path B - run the installer yourself
Windows (PowerShell):
macOS / Linux:
The installer drops both avanan-cli (the CLI) and avanan-mcp (the MCP server) into your user bin path. Claude Code, Codex, and Cowork discover the Skill via SKILL.md in this directory.
Verify:
Upgrade to the latest version
The installer always fetches the current release - re-run it to upgrade:
macOS / Linux:
Windows (PowerShell):
Claude Code plugin users: /plugin update avanan@msp-skills.
Add to Claude Desktop, the ChatGPT desktop app, GitHub Copilot, Gemini CLI, or another MCP client
After the installer runs, see mcp-install.md and docs/which-agent.md for the per-agent wire-up - one section per agent, including the GitHub Copilot servers key and the ChatGPT desktop app. Claude Desktop's Settings > Extensions panel is the simplest path; the MCP config block (for users who prefer editing JSON) is documented in mcp-install.md.
Install for Hermes
From the Hermes CLI:
Inside a Hermes chat session:
Hermes speaks MCP natively, so it can also use the avanan-mcp server directly - same install path, same env vars.
Install for OpenClaw
Tell your OpenClaw agent (copy this):
Install the avanan skill from https://github.com/servosity/msp-skills/tree/main/skills/avanan. The skill defines how its required CLI (
avanan-cli) can be installed via theopenclaw:frontmatter block.
OpenClaw isn't generally available yet; the frontmatter wiring is pre-shipped and will activate the moment OpenClaw launches.
Authenticate
Set the application credential the CLI needs (Avanan portal > Settings > API Keys), then mint a session token for your region:
doctor confirms the credentials work and prints the regional host it resolved, before you run anything that touches data; auth login names the auth scheme it used. It exits 0 even when the credential is rejected, so scripts should add --fail-on error.
Two properties of Avanan credentials are worth knowing up front:
--sincefilters on Avanan's ingest time, not the message date. The API'sstartDate/endDatematchentityCreated- when Avanan scanned the message - which normally tracks the received header within seconds but can lag it by well over an hour. A window can therefore miss mail that arrived inside it and was scanned after it. Widen the window rather than assuming message age.- Actions need the SaaS entity type, not a generic one. Quarantine and
restore take
office365_emails_emailorgoogle_mail_email;remediateresolves this from the entity itself, and--entity-typeoverrides it. - Regions are hard-isolated. Credentials are issued per region and cross-region reads are refused by design, so a USA key returning nothing for an EU tenant is not a broken key. Valid regions:
us,eu,ca,ap,uk,uae,in, plusinfinityandinfinity-usfor the Infinity Portal gateways. On any other Infinity Portal gateway there is no region code - point the CLI at it with--base-urlorAVANAN_BASE_URL. - One application credential can reach many tenants. Run
avanan-cli scopesto see exactly which{farm}:{tenant}scopes yours covers. That is also your best control - a credential bound to one tenant puts the whole fleet out of reach. See governance.md.
Sync before you ask
Most of the cross-tenant answers come from a local mirror. Populate it once:
mirror and sync are read-only against the Avanan API and write to a SQLite file under your own user account. Re-run them whenever you want fresher data. The offline commands (triage, campaign, timeline, exceptions find, exceptions audit, msp fleet) read the mirror only and will report empty results against an unpopulated store rather than silently falling back to a live fan-out.
What this skill does
Full command reference: guide.md. For the AI-agent operating contract (--agent, --dry-run, when to confirm before mutating), see AGENTS.md.
What makes this different
Avanan already has integrations for Cortex XSOAR, Microsoft Sentinel, n8n, and two community MCP servers. Every one of them is a plugin that lives inside another product, and every one of them is stateless: one question, one API call, no history. There is no terminal-native tool, and nothing that can answer a question spanning two tenants or two days without paying for N more calls against an API that returns HTTP 429 and publishes no quota.
This skill syncs events, entities, exceptions, and MSP objects into a local SQLite mirror, so those questions become one local join. That is what turns "here are 400 detections" into "here are three campaigns, one of which is still 40% un-remediated."
It also covers more of the API than the published spec does. The SwaggerHub spec omits the auth endpoint, the entire per-sectool exception surface, and the SOAR and download helpers - about 15 operations that are documented on the vendor reference site and proven in shipping XSOAR and Sentinel code. Those are all here.
And it implements the request signature correctly. The legacy handshake signs reqId + appId + date + requestString + secret, and that requestString term is present on every non-auth call and absent from the published docs - so a client that builds the query string differently from the string it signed gets a 401 that looks exactly like a bad credential. This CLI signs and sends through one code path.
The pain this closes
- The event endpoint hands back detections but never buckets them, so a shift starts by re-scrolling the query you already ran an hour ago.
avanan-cli triagereturns a digest by threat type, severity, and state with the sender domains driving the volume. - Nothing groups detections, so telling one phishing run from forty unrelated problems means sorting an export by sender and subject.
avanan-cli campaignclusters them and shows recipient spread and remediation state. - A disputed quarantine spans five lookups across three endpoints, and the task record ages out.
avanan-cli timelinereconstructs one message's history in order from what the mirror holds and what this CLI submitted, after the fact. - Exceptions live in seven engines and ten tables with different path shapes, ID schemes, and delete semantics, and nothing answers "is this already excepted."
avanan-cli exceptions findasks all of them at once;avanan-cli exceptions auditfinds the contradictions, duplicates, and entries that have not matched traffic in the mirrored window. - Actions are asynchronous and single-scope: the endpoint returns a task ID and rejects a multi-tenant credential with a bare HTTP 400.
avanan-cli remediatewaits for the task, reports the real per-item outcome, and turns that 400 into an error naming the scopes you can actually target.
See pain-point.md for the longer narrative.
Frequently asked questions
Does this work with ChatGPT?
Yes, in the ChatGPT desktop app. It runs MCP servers locally (STDIO), the way avanan-mcp runs, and shares MCP configuration with Codex (OpenAI): add avanan-mcp under Settings > MCP servers as a STDIO server, or add it once to Codex's ~/.codex/config.toml. ChatGPT on the web is not supported by msp-skills yet: it needs a remote server. If your team works there, a hosted gateway is the better pick; check that your AI app is on the gateway's setup list. Setup steps: mcp-install.md.
Does this work with Codex, Cursor, Windsurf, Cline, Copilot, or Gemini?
Yes - all of them speak MCP. Cross-tool install commands are in the matrix above and the deep-dive in docs/which-agent.md.
Do I need to know how to code?
No. The recommended install is to paste one sentence into Claude Code or Codex - your agent reads SKILL.md and does the install. The fallback is a one-line installer per OS (bash or PowerShell). Neither path requires writing code. You'll enter your Avanan application ID and client secret once.
Is my Avanan data safe?
Your data stays on your machine. The CLI and MCP server are local binaries, and the MCP server uses stdio by default - it opens no network listener unless you start its token-protected HTTP mode. The SQLite mirror sits in a directory under your user account. The AI agent only sees what the CLI returns - typically a query result, not raw bulk data. Message bodies and raw .eml files are only fetched when you explicitly ask for a named message. Credentials are read from your environment or your agent's config; never bundled into this repo or transmitted anywhere by MSP Skills.
Will this hit my Avanan API rate limits?
Mostly no. The skill mirrors once into local SQLite, then answers from local data, so the offline commands answer without spending API quota. Avanan publishes no quota numbers but does return HTTP 429, so the client backs off on its own, and the six offline commands cost nothing after the mirror is populated.
Do I need an MSP account, or does this work on a single tenant?
Both. The msp commands and the fleet rollup need an application credential bound to multiple tenants, but triage, campaign, timeline, exception lookup, search, and remediation all work fine against a single-tenant credential.
Why does my Avanan credential fail against a different region?
Avanan regions are hard-isolated and credentials are issued per region, so a USA key cannot read EU data by design. Set the region once with avanan-cli auth login --region <us|eu|ca|ap|uk|uae|in|infinity|infinity-us> --save. An Infinity Portal tenant on any other gateway has no region code and sets avanan-cli auth login --base-url https://<your-infinity-gateway> --save instead. avanan-cli doctor prints the host it resolved.
Why do quarantine and restore ask for a scope?
Avanan's action endpoints accept exactly one scope and reject a multi-tenant credential with a bare HTTP 400 that reads like a bad key - the most common integration footgun on this API. remediate turns that into an error naming the scopes your credential actually covers, so a mailbox-affecting write cannot land on a tenant you did not name.
Does it cover Check Point firewall or endpoint products?
No. This covers Avanan / Harmony Email and Collaboration only: email and SaaS collaboration security. Check Point system and audit logs live on the separate Infinity Portal API and are not part of this one.
Will this replace the Avanan portal?
No, it complements it. Security policy rules and engine configuration are portal-only - the API exposes exceptions, not policy. This skill answers the questions and does the batch work the portal makes slow.
What does it cost?
Free. Apache-2.0 licensed. You pay only for whichever AI agent you use (Claude, ChatGPT, Codex, etc.), and that's billed by your AI provider, not by us.
Safety model
Two rows reach outside a dashboard. remediate and the action commands quarantine and restore live mail in a customer's Microsoft 365 or Google Workspace, and soar post-notify emails real people on your behalf. Treat both with the approval you already require for touching a user's mailbox. msp delete-tenants deletes an entire customer tenant and has no peer here for blast radius.
The strongest control is the scope of the application credential - it is bound to one region and to a specific set of tenants, and the CLI can only reach what it covers. Full details, including how to lock it down, are in governance.md.
Status
Live-verified. Confirmed by @geekbrownbear (Bearium Networks, MSP) against their own production tenant (receipt). More MSPs run it live in our weekly Build Sessions. RSVP at compoundingteams.com/build-sessions.
Standards. Conforms to the open Agent Skills spec (Anthropic, Dec 2025; 40+ agents). MCP-compatible - works with any MCP-capable agent including Hermes. OpenClaw-ready (frontmatter pre-wired, awaiting OpenClaw launch).
Maintained by Servosity. Apache-2.0 licensed. Built with CLI Printing Press. Last updated: 2026-08-15.
来源:skills/avanan/README.md,提交 a719b42
工具
0版本历史
10- v0.1.13最新Nov 5, 2026
- v0.1.12Nov 5, 2026
- v0.1.11Oct 23, 2026
- v0.1.10Oct 23, 2026
- v0.1.9Oct 22, 2026
- v0.1.8Oct 16, 2026
- v0.1.7Oct 14, 2026
- v0.1.6Oct 2, 2026
- v0.1.5Sep 29, 2026
- v0.1.4Sep 16, 2026
评分
已满足适用检查项的 40%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
请在仓库或注册中心条目中声明许可证。