Sophos中央MCP服务器
 ](https://nodejs.org/)   
A. 模型上下文协议(MCP) 为AI助手提供访问权限的服务器 Sophos Central,统一的云安全管理平台。管理端点、调查警报、分析EDR/XDR检测、运行实时发现查询和审核安全策略。
特性
端点
- 按主机名、IP、操作系统、运行状况列出、搜索和检查端点
- 事件响应的网络隔离和非隔离
- 按需扫描触发
- 软件清单检索
警报
- 按严重性、类别、产品、日期范围列出和过滤警报
- 确认并解决警报,并采取相应措施
- 查看每个警报的可用响应操作
EDR/XDR检测
- 使用MITRE ATT&CK技术映射列出检测结果
- 威胁案例管理(分组相关检测)
- 检测与病例相关性
安全事件
- 按类型、严重性、端点、日期范围搜索事件
- 事件类型目录(恶意软件、PUA、网络过滤器等)
- 管理员审核日志访问
政策
- 列出端点、服务器和防火墙策略
- 检查单个策略配置
- 审查全球和特定政策的除外责任
租户管理
- 多租户列表(MSP/合作伙伴视图)
- 租户详细信息和许可证信息
- 总体租户安全健康评分
实时发现(osquery)
- 在端点上执行实时发现查询
- 保存查询库管理
- 查询结果检索
- 查询类别浏览
建筑
┌────────────────────────────────────────┐
│ MCP Client (LLM) │
└──────────────┬─────────────────────────┘
│ MCP Protocol (stdio)
┌──────────────▼─────────────────────────┐
│ sophos-mcp server │
│ │
│ ┌──────────┐ ┌────────────────────┐ │
│ │ Prompts │ │ Resources │ │
│ │ 4 guides │ │ queries, policies, │ │
│ │ │ │ MITRE mappings │ │
│ └──────────┘ └────────────────────┘ │
│ │
│ ┌──────────────────────────────────┐ │
│ │ Tools │ │
│ │ endpoints │ alerts │ detections │ │
│ │ events │ policies │ tenants │ │
│ │ live-discover │ │
│ └──────────────┬───────────────────┘ │
│ │ │
│ ┌──────────────▼───────────────────┐ │
│ │ Sophos Central API Client │ │
│ │ (OAuth2 + REST) │ │
│ └──────────────┬───────────────────┘ │
└──────────────────┼─────────────────────┘
│ HTTPS
┌──────────────────▼─────────────────────┐
│ Sophos Central Platform API │
│ https://api.central.sophos.com │
└────────────────────────────────────────┘安装
git clone https://github.com/solomonneas/sophos-mcp.git
cd sophos-mcp
npm install
npm run build配置
Sophos Central使用带有客户端凭据的OAuth2。设置环境变量:
export SOPHOS_CLIENT_ID="your-client-id"
export SOPHOS_CLIENT_SECRET="your-client-secret"
export SOPHOS_TENANT_ID="your-tenant-id" # optional for single-tenant或者使用 .env 文件:
SOPHOS_CLIENT_ID=your-client-id
SOPHOS_CLIENT_SECRET=your-client-secret
SOPHOS_TENANT_ID=your-tenant-id正在获取API凭据
- 登录到 Sophos Central
- 首选 全局设置>API凭据管理
- 点击 添加凭据 并分配角色
- 复制客户端ID和客户端密码
MCP客户端配置
克劳德桌面版
{
"mcpServers": {
"sophos": {
"command": "node",
"args": ["path/to/sophos-mcp/dist/index.js"],
"env": {
"SOPHOS_CLIENT_ID": "your-client-id",
"SOPHOS_CLIENT_SECRET": "your-client-secret"
}
}
}
}龙虾
添加到您的 openclaw.json:
{
"mcp": {
"servers": {
"sophos": {
"type": "stdio",
"command": "node",
"args": ["/path/to/sophos-mcp/dist/index.js"],
"env": {
"SOPHOS_CLIENT_ID": "your-client-id",
"SOPHOS_CLIENT_SECRET": "your-client-secret"
}
}
}
}
}工具参考
| 工具 | 说明 |
|---|---|
list_endpoints | 按主机名、IP、运行状况、操作系统、组搜索端点 |
get_endpoint | 包含代理信息和产品的完整端点详细信息 |
isolate_endpoint | 网络隔离端点(事件响应) |
unisolate_endpoint | 删除网络隔离 |
scan_endpoint | 触发按需扫描 |
get_endpoint_software | 列出端点上安装的软件 |
list_alerts | 获取具有严重性/类别/产品筛选器的警报 |
get_alert | 带有描述的完整警报详细信息 |
acknowledge_alert | 将警报标记为已确认 |
resolve_alert | 解决/关闭警报并采取行动 |
get_alert_actions | 列出可用的响应操作 |
list_detections | 带过滤器的EDR/XDR检测 |
get_detection | 通过MITRE ATT&CK映射进行全面检测 |
get_threat_cases | 分组相关检测 |
get_case_detections | 威胁案例中的所有检测 |
update_case_status | 更新威胁案例状态 |
search_events | 按类型/严重性/日期搜索安全事件 |
get_event | 完整活动详情 |
list_event_types | 可用事件类型目录 |
get_audit_logs | 管理员审计跟踪 |
list_policies | 列出端点/服务器/防火墙策略 |
get_policy | 完整策略配置 |
get_policy_settings | 策略中的特定设置 |
list_exclusions | 全球和特定政策除外责任 |
list_tenants | 列出受管理租户(MSP视图) |
get_tenant | 租户详细信息和许可证信息 |
get_tenant_health | 总体租户安全健康评分 |
run_query | 在端点上执行实时发现查询 |
list_saved_queries | 列出已保存的实时发现查询 |
get_query_results | 检索已完成的查询结果 |
list_query_categories | 可用查询类别 |
实时发现查询示例
-- Running processes
SELECT pid, name, path, cmdline, start_time FROM processes WHERE name = 'suspicious.exe';
-- Listening ports (non-standard)
SELECT pid, port, address, protocol FROM listening_ports WHERE port NOT IN (80, 443, 22);
-- Scheduled tasks
SELECT name, action, path, enabled FROM scheduled_tasks WHERE enabled = 1;
-- Installed software from unknown publishers
SELECT name, version, publisher FROM programs WHERE publisher LIKE '%unknown%';
-- Active network connections to suspicious port
SELECT pid, remote_address, remote_port, state FROM socket_events WHERE remote_port = 4444;
-- File hash lookup
SELECT path, sha256 FROM hash WHERE path = '/usr/bin/suspicious';
-- Recently modified executables
SELECT path, filename, size, mtime FROM file WHERE path LIKE '/tmp/%' AND filename LIKE '%.exe';提示
| 提示 | 描述 |
|---|---|
investigate-endpoint | 指导性终点调查工作流程 |
threat-hunt | 通过Live Discover跨端点搜索IOC |
incident-response | 逐步IR:遏制、调查、补救 |
health-audit | 审查租户/端点安全状况 |
资源
| URI | 描述 |
|---|---|
sophos://live-discover-queries | 内置Live Discover查询库 |
sophos://policy-reference | 策略设置参考 |
sophos://mitre-mappings | MITRE ATT&CK技术映射 |
发展
npm run build # Compile TypeScript
npm run dev # Watch mode
npm run test # Run tests
npm run lint # Lint check许可证
麻省理工学院
