mcpField
S
sophos-central-mcp

sophos-central-mcp

本地服务
github.com/rijul170安全014 周前更新

关于 sophos-central-mcp

sophos-central-mcp 是面向 MSP 和 MSSP 团队的 Sophos Central 安全运营 MCP 服务,可跨客户租户管理安全工作。它整合端点、邮件、防火墙和调查工具,并支持按租户路由及写入和破坏性操作控制。

主要功能

  1. 01覆盖 33 个 API 域的 334 个工具
  2. 02管理多个客户租户
  3. 03端点隔离、扫描与调查
  4. 04Live Discover 和 XDR SQL 查询
  5. 05管理邮件、防火墙和 DNS 防护
  6. 06只读模式及破坏性操作控制

适用场景

  1. 01跨客户租户进行告警分流
  2. 02使用 Live Discover 调查端点
  3. 03在 XDR Data Lake 中搜寻历史威胁
  4. 04管理邮件隔离区和防火墙策略

MCP 相关

通过 stdio、SSE 或 Streamable HTTP 向 MCP 客户端提供 Sophos Central API 操作。服务会自动刷新 OAuth2 令牌,并按租户进行区域路由。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rijul170-sophos-central": {
"command": "npx",
"args": [
"-y",
"@rijul170/sophos-mcp"
]
}
}
}
启动命令npx -y @rijul170/sophos-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@rijul170/sophos-mcp1.1.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Sophos Central MCP 服务

Node.js License MCP Protocol Tools GitHub Stars

Build & Test npm MCP Registry

面向 MSP/MSSP 团队: 通过自然语言管理所有 Sophos 租户的端点安全、电子邮件威胁和防火墙策略。让 Claude 调查警报、隔离主机、运行 Live Discover 查询,并关联 XDR 数据,无需离开 AI 工作流。

概述

适用于 Sophos Central API 的模型上下文协议(MCP)服务,可通过 Claude 和其他兼容 MCP 的客户端实现 AI 驱动的安全运营。该服务面向 MSP/MSSP 环境,使用 Partner Super Admin 凭据,可通过单个服务实例管理所有客户租户,涵盖端点防护、威胁检测、Live Discover 取证、XDR 威胁搜寻、电子邮件安全、防火墙管理等。

功能

  • 334 个工具,涵盖 33 个 API 域 — 全面覆盖 Sophos Central API
  • 支持多租户 MSSP — 使用 Partner Super Admin 凭据枚举和指定任意客户租户
  • 端点隔离与调查 — 隔离端点、检查防篡改保护、触发扫描
  • 警报分类处理 — 跨租户列出、筛选、确认 Sophos 警报并采取相应操作
  • Live Discover SQL 查询 — 直接在受管理的端点上运行实时取证 SQL 查询
  • XDR Data Lake 威胁搜寻 — 使用 SQL 对 Sophos XDR 数据湖进行历史威胁搜寻
  • 威胁检测 — 查询、分组和统计行为检测
  • 案例管理 — 端到端创建和管理调查案例
  • 电子邮件安全 — 隔离管理、邮箱列表、召回已投递邮件
  • 防火墙管理 — CRUD 操作、组管理、固件升级
  • DNS 防护 — 位置策略、自定义域名允许/阻止列表
  • SOC 行动手册 — 内置的 sophos_playbook_* 工具,用于引导式事件响应(IR)和威胁搜寻工作流
  • 三种传输模式 — stdio(Claude Desktop)、SSE 和 Streamable HTTP(Claude Code)
  • 自动 OAuth2 令牌管理 — 自动刷新令牌,无需手动干预
  • 区域路由 — 请求会自动路由至正确的数据区域(US、EU、CA、AU、JP、BR)

先决条件

  • Node.js v18 或更高版本(需要原生 fetch 支持)
  • npm v8 或更高版本
  • Sophos Central Partner Super Admin API 凭据 — 如何创建这些凭据,请参阅配置

安装

git clone https://github.com/rijul170/sophos-central-mcp.git
cd sophos-central-mcp
npm install
npm run build

配置

1. 创建 .env 文件
cp .env.example .env

使用你的凭据编辑 .env:

# Required
SOPHOS_CLIENT_ID=your-client-id-here
SOPHOS_CLIENT_SECRET=your-client-secret-here

# Optional — transport mode: stdio | sse | streamable-http (default: stdio)
MCP_TRANSPORT=stdio

# Optional — host for HTTP transports (default: 127.0.0.1)
MCP_HOST=127.0.0.1

# Optional — port for HTTP transports (default: 3001)
MCP_PORT=3001
2. 在 Sophos Central 中创建 API 凭据
  1. 登录 Sophos Central Partner Dashboard
  2. 前往 Settings & Policies → API Credentials Management
  3. 点击 Add Credential
  4. 将角色设置为 Service Principal Super Admin
  5. 复制 Client ID 和 Client Secret — 密钥仅显示一次
变量必需描述
SOPHOS_CLIENT_ID是Sophos Central 中的 Partner Super Admin Client ID
SOPHOS_CLIENT_SECRET是对应的客户端密钥
MCP_TRANSPORT否传输模式:stdio、sse 或 streamable-http(默认值:stdio)
MCP_HOST否HTTP 传输的绑定主机(默认值:127.0.0.1)
MCP_PORT否HTTP 传输的端口(默认值:3001)
SOPHOS_MCP_READONLY否设置为 true 时,仅注册读取工具 — 不会向 AI 客户端公开写入和破坏性工具
SOPHOS_MCP_ALLOW_DESTRUCTIVE否默认禁用破坏性工具(删除、端点隔离、Live Discover 执行、撤回等)。设置为 true 可启用所有此类工具,或使用逗号分隔的工具名称列表选择性启用

Claude Code 集成(HTTP 模式)

建议 Claude Code 使用 HTTP 模式 — 该模式支持并发会话,且无需在对话之间重启服务。

启动服务:

MCP_TRANSPORT=streamable-http MCP_PORT=3001 node build/index.js

或者在 .env 中设置 MCP_TRANSPORT=streamable-http 并运行:

node build/index.js

将以下内容添加到 Claude Code MCP 配置(.claude/settings.json 或全局设置):

{
  "mcpServers": {
    "sophos-mcp": {
      "type": "http",
      "url": "http://localhost:3001/mcp"
    }
  }
}

可通过 http://localhost:3001/health 访问 /health 端点,以检查服务是否正常运行。

Claude Desktop 集成(stdio 模式)

stdio 模式是 Claude Desktop 的标准传输方式。Claude Desktop 会直接管理服务进程。

将以下内容添加到 Claude Desktop MCP 配置(claude_desktop_config.json):

{
  "mcpServers": {
    "sophos-mcp": {
      "command": "node",
      "args": ["/path/to/sophos-central-mcp/build/index.js"],
      "env": {
        "SOPHOS_CLIENT_ID": "your-client-id",
        "SOPHOS_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

将 /path/to/sophos-central-mcp 替换为克隆仓库的绝对路径。

SSE 模式

SSE(服务器发送事件)模式适用于不支持 Streamable HTTP 的旧版 MCP 客户端。

MCP_TRANSPORT=sse MCP_PORT=3001 node build/index.js

SSE 端点可通过 http://localhost:3001/sse 访问。

工具领域

领域工具数描述
警报5列出、获取、确认和处理 Sophos 警报
端点26隔离、防篡改保护、扫描、迁移、批量操作
检测7基于查询的行为检测搜索、分组和计数
实时发现11对受管端点执行实时取证 SQL 查询
XDR10针对 Sophos XDR Data Lake 的历史 SQL 威胁搜寻
案例9调查案例的创建、读取、更新、关闭和证据管理
合作伙伴23租户枚举、管理员、角色、计费、权限集
组织2列出组织类型账户的租户
策略7对所有 Sophos 策略类型执行完整的 CRUD 操作
组8端点组 CRUD 和成员管理
SIEM2导出事件和警报,以集成 SIEM
防火墙20防火墙 CRUD、组管理、固件升级
DNS 防护15位置、策略、自定义域名允许/阻止列表
电子邮件31隔离区管理、邮箱、投递后的邮件撤回
目录15用户和用户组的完整 CRUD 操作
设置16防篡改保护、排除项、Web 控制、端点标签
允许/阻止12SHA256 哈希、证书和路径允许/阻止列表
漏洞利用缓解8应用级漏洞利用防护排除项
IPS 排除项10网络 IPS 和隔离排除项管理
租户管理员14租户管理员 CRUD、角色分配、自定义角色
账户健康状况4健康检查报告、延后提醒和历史健康评分
账户管理4账户级设置和许可证管理
审计事件2获取审计日志,用于合规与治理
业务自动化3自动化规则和业务逻辑配置
许可2许可证权益和使用情况查询
移动设备38移动设备管理 — 注册、策略、设备操作
云安全6云工作负载防护态势和发现结果
软件9安装程序下载、软件清单、软件包
交换机3网络交换机管理
WiFi3无线网络管理
用户活动2用户活动报告和会话数据
Playbook5SOC 事件响应和威胁搜寻工作流指南
身份验证2OAuth2 身份验证和 WhoAmI 身份发现

MSSP 多租户支持

此服务围绕 Sophos Partner Super Admin 凭据构建,可查看所有受管客户租户。

工作原理:

  1. 启动时,服务使用你的 Partner 凭据向 Sophos Central 进行身份验证,并识别你的组织类型(合作伙伴或组织)。
  2. 使用 sophos_list_tenants(组织账户使用 sophos_list_org_tenants)枚举所有受管租户及其 ID。
  3. 将 tenantId 参数传递给任何按租户范围限定的工具,以指定要操作的客户环境。
  4. 系统会根据租户的数据驻留区域,自动将所有 API 调用路由到正确的区域端点(US、EU、CA、AU、JP、BR)。

工作流示例:

1. sophos_list_tenants          → get all tenant IDs and names
2. sophos_list_alerts           → pass tenantId for a specific customer
3. sophos_isolate_endpoint      → isolate an endpoint in that tenant
4. sophos_live_discover_run_query → run forensic SQL on the isolated host

SOC Playbook

此服务附带五个内置的 playbook 工具,可为常见 SOC 工作流提供结构化的分步指导。这些工具旨在调查开始时调用,以帮助明确响应方向。

工具用途
sophos_playbook_incident_response端到端 IR playbook:分类 → 确定范围 → 遏制 → 修复
sophos_playbook_threat_hunt基于假设和 IOC 的威胁搜寻工作流
sophos_mitre_attack_guideMITRE ATT&CK 技术到 Sophos 工具的映射
sophos_soc_tool_guide按 SOC 使用场景整理的全部 334 个工具参考指南
sophos_playbook_edr_investigation针对端点检测的 EDR 专用调查 playbook

SOC 快速入门

服务器连接到 Claude 后,你就可以使用自然语言来执行安全运营。提示词示例:

警报分类:

"列出租户 <tenant-id> 过去 24 小时内所有处于未关闭状态的严重和高危警报,并按类型分组。"

端点调查:

"隔离租户 <tenant-id> 中的端点 <hostname>,然后运行 Live Discover SQL 查询,列出所有正在运行的进程和活动网络连接。"

XDR 威胁搜寻:

"对租户 <tenant-id> 运行 XDR Data Lake 查询,查找过去 7 天内所有使用编码命令执行的 PowerShell。"

MSSP 概览:

"列出我管理的所有租户,然后显示任何存在未关闭严重警报的租户。"

电子邮件安全:

"显示租户 <tenant-id> 过去 48 小时内所有已隔离的邮件,并释放所有被标记为误报的邮件。"

开发

# Run with hot-reload (no build step required)
npm run dev

# Build TypeScript to JavaScript
npm run build

# Run the built server
npm start

# Inspect tools interactively with MCP Inspector
npx @modelcontextprotocol/inspector node build/index.js

项目结构

src/
├── index.ts                          # Entry point — transport setup, registers all 33 modules
├── config.ts                         # Environment variable validation
├── auth/
│   └── auth-manager.ts               # OAuth2 token management with auto-refresh
├── client/
│   ├── sophos-client.ts              # HTTP client (retry, rate limiting, backoff)
│   └── tenant-router.ts             # Tenant → regional API host mapping
├── tools/                            # 33 tool files, 334 tools total
│   ├── auth-tools.ts                 # 2 tools
│   ├── partner-tools.ts              # 23 tools
│   ├── organization-tools.ts         # 2 tools
│   ├── endpoint-tools.ts             # 26 tools
│   ├── group-tools.ts                # 8 tools
│   ├── policy-tools.ts               # 7 tools
│   ├── alert-tools.ts                # 5 tools
│   ├── detections-tools.ts           # 7 tools
│   ├── siem-tools.ts                 # 2 tools
│   ├── xdr-tools.ts                  # 10 tools
│   ├── live-discover-tools.ts        # 11 tools
│   ├── firewall-tools.ts             # 20 tools
│   ├── dns-protection-tools.ts       # 15 tools
│   ├── email-tools.ts                # 31 tools
│   ├── directory-tools.ts            # 15 tools
│   ├── settings-tools.ts             # 16 tools
│   ├── allowed-blocked-tools.ts      # 12 tools
│   ├── exploit-mitigation-tools.ts   # 8 tools
│   ├── ips-exclusion-tools.ts        # 10 tools
│   ├── tenant-admin-tools.ts         # 14 tools
│   ├── account-health-tools.ts       # 4 tools
│   ├── cases-tools.ts                # 9 tools
│   ├── software-tools.ts             # 9 tools
│   ├── audit-events-tools.ts         # 2 tools
│   ├── business-automation-tools.ts  # 3 tools
│   ├── licensing-tools.ts            # 2 tools
│   ├── mobile-tools.ts               # 38 tools
│   ├── switch-tools.ts               # 3 tools
│   ├── wifi-tools.ts                 # 3 tools
│   ├── cloud-security-tools.ts       # 6 tools
│   ├── user-activity-tools.ts        # 2 tools
│   ├── account-management-tools.ts   # 4 tools
│   └── playbook-tools.ts             # 5 tools
└── types/
    └── sophos-types.ts               # TypeScript interfaces for all Sophos API types

安全注意事项

  • 只读模式 — 设置 SOPHOS_MCP_READONLY=true,以便在启动时仅注册读取工具。无论 AI 客户端提出什么请求,都不会向其公开写入和破坏性工具。XDR Data Lake 和检测查询仍可用(它们属于读取分析);Live Discover 则不可用(它会在受管理的端点上执行 osquery)。

  • 破坏性操作控制 — 即使启用了写入功能,破坏性工具(端点隔离、删除、邮件召回、Live Discover 执行、固件升级等)默认也会被禁用。通过 SOPHOS_MCP_ALLOW_DESTRUCTIVE 明确启用。建议使用以逗号分隔的特定工具名称列表,而不是 true:

    # Enable only endpoint isolation for IR workflows
    SOPHOS_MCP_ALLOW_DESTRUCTIVE=sophos_isolate_endpoint,sophos_deisolate_endpoint
    
  • 工具注释 — 每个工具都带有 MCP readOnlyHint/destructiveHint 注释,以便合规客户端应用自己的确认策略。

  • 凭据处理 — API 凭据在启动时从环境变量中读取,绝不会被记录日志或传输,唯一例外是 Sophos 身份验证端点。不要将 .env 文件提交到源代码管理中——.env 已列入 .gitignore。

  • Partner Super Admin 权限范围 — 这些凭据对所有受管理租户都拥有读写权限。请像保护特权服务账户凭据一样妥善保护它们。如果凭据泄露,请立即轮换。

  • 尽可能采用只读操作 — 如果你的使用场景只需要查看信息(警报分类、威胁搜寻、报告),请考虑创建一个角色权限更受限的独立凭据。只有写入操作(隔离、策略更改、用户管理)才需要 Partner Super Admin。

  • 网络绑定 — HTTP 传输默认绑定到 127.0.0.1。不要将 MCP 服务端口暴露到公共网络。如果需要远程访问,请将其置于经过身份验证的反向代理之后,或使用 VPN。

  • 审计跟踪 — 通过此服务发出的所有 Sophos API 调用都会记录在 Sophos Central 的审计事件中,并可追溯到所用的 API 凭据。

相关 MCP 服务

这三种服务涵盖了安全技术栈中相辅相成的层面——网络/日志(AlertLogic)、端点保护(Sophos)以及 EDR/威胁情报(CrowdStrike)。配合使用,可实现由 AI 驱动的全栈 SOC 运营。

服务平台亮点
falcon-mcpCrowdStrike FalconEDR 遥测、RTR、威胁情报、MSSP Flight Control,1,296 个工具
sophos-central-mcpSophos Central端点隔离、Live Discover SQL、XDR、电子邮件/防火墙/DNS,334 个工具
alertlogic-mcpAlert Logic MDR事件响应、SQL 日志搜索、SOAR、漏洞管理,473 个工具

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。