SentinelOne MCP服务器
A. 模型上下文协议 将AI助手连接到SentinelOne租户的服务器。管理威胁、调查端点、使用深度可见性进行搜索和分类警报——所有这些都来自自然语言。
零依赖。 Stdlib只支持二进制。无运行时要求。只需复制并运行。
快速开始
1.建造
复制 git clone https://github.com/c0tton-fluff/sentinelone-mcp-server.git
cd sentinelone-mcp-server
go build -o sentinelone-mcp-server .
2.获取您的API代币
S1控制台>配置文件(右上)> 我的资料 >行动> API令牌操作 > 重新生成API令牌
3.配置您的MCP客户端
添加 ~/.mcp.json:
复制 {
"mcpServers": {
"sentinelone": {
"command": "/path/to/sentinelone-mcp-server",
"env": {
"SENTINELONE_API_KEY": "your_api_token_here",
"SENTINELONE_API_BASE": "https://your-tenant.sentinelone.net"
}
}
}
}
4.去吧
复制 "List all unmitigated threats"
"Investigate threat 1234567890"
"Show infected agents"
"Hunt for PowerShell processes in the last 24 hours"
"What's the reputation of this SHA256?"
"Create an exclusion for /opt/myapp on Linux"
"What applications are installed on Benedict's laptop?"
工具(21)
威胁
工具
它做什么
s1_list_threats
列出具有分类、状态和端点筛选器的威胁
s1_get_threat
完整的威胁细节——哈希值、文件路径、故事情节
s1_mitigate_threat
杀死、隔离、解除隔离、修复或回滚
s1_investigate_threat
一次通话调查:威胁+相关警报+时间线
s1_set_analyst_verdict
设置判断:true_positive、false_ppositive、可疑、未定义
s1_set_incident_status
设置状态(在同一通话中可选择判断)
代理
工具
它做什么
s1_list_agents
列出带有操作系统、状态、感染过滤器的代理,并按分组计数
s1_get_agent
代理详细信息——版本、站点、网络信息、帐户ID
s1_isolate_agent
网络隔离端点(维护S1通信)
s1_reconnect_agent
删除网络隔离
警报
工具
它做什么
s1_list_alerts
通过GraphQL查询具有严重性、判断和状态过滤器的统一警报
s1_set_alert_verdict
批量设置分析师对匹配警报的判断
s1_set_alert_status
批量设置事件状态(可选判决)
深度可见性
工具
它做什么
s1_dv_query
使用自动轮询运行威胁搜索查询
s1_dv_get_events
从已完成的查询中检索事件
智能
工具
它做什么
s1_hash_reputation
哈希判决+通过深度可见性进行舰队范围内的狩猎
除外条款
工具
它做什么
s1_list_exclusions
列出排除项(路径、哈希、证书、浏览器、文件类型)
s1_create_exclusion
创建排除以抑制假阳性检测
s1_delete_exclusion
按ID删除排除项
STAR规则
工具
它做什么
s1_create_star_rule
从深度可见性查询创建自定义检测规则
应用程序
工具
它做什么
s1_list_applications
按名称或计算机列出端点上安装的软件
Full parameter reference
s1_list_threats
参数
类型
说明
computerName
string
按端点名称搜索(部分匹配)
threatName
string
按威胁名称搜索(部分匹配)
limit
number
最大结果(默认50,最大200)
mitigationStatuses
string[]
未缓解、缓解、标记为as_benign
classifications
string[]
恶意软件、PUA、可疑
s1_get_威胁
参数
类型
说明
threatId
字符串
必修的。 威胁ID
s1_动议_三
参数
类型
说明
threatId
字符串
必修的。 威胁ID
action
字符串
必修的。 杀死、隔离、取消隔离、修复、回滚修复
s1_调查_三
参数
类型
说明
threatId
字符串
必修的。 威胁ID
s1_set_analyst判定
参数
类型
说明
threatId
字符串
必修的。 威胁ID
verdict
字符串
必修的。 真阳性、假阳性、可疑、未定义
s1_set_incident_status
参数
类型
说明
threatId
字符串
必修的。 威胁ID
status
字符串
必修的。 未解决,正在进行中,已解决
verdict
string
可选:在同一调用中设置分析师判断
s1_list_agents
参数
类型
说明
computerName
string
按计算机名搜索(部分匹配)
limit
number
最大结果(默认50,最大200)
osTypes
string[]
windows、macos、linux
isActive
boolean
按活动状态筛选
isInfected
boolean
按感染状态筛选
networkStatuses
string[]
已连接、已断开连接、正在连接、断开连接
countBy
string
组计数依据:用户、操作系统、站点、组
s1_get_agent
参数
类型
说明
agentId
字符串
必修的。 代理ID
s1_isolate_agent/s1_connect_agent
参数
类型
说明
agentId
字符串
必修的。 代理ID
s1_list_alerts
参数
类型
说明
limit
number
最大结果(默认50,最大200)
severity
string
低、中、高、临界
analystVerdict
string
TRUE_POSITIVE,FALSE_POSITIVE,SUSPICIOUS,underfined
incidentStatus
string
新,IN_PROGRESS,已解析(别名:未解析,打开)
siteIds
string[]
按站点ID筛选
storylineId
string
按故事情节ID与威胁相关
s1_set_alert_verdict
参数
类型
说明
verdict
字符串
必修的。 真阳性、假阳性、可疑、未定义
alertIds
string[]
特定于目标的警报ID
query
string
自由文本搜索(用于用户名匹配)
ruleName
string[]
按规则名称筛选(部分匹配)
agentName
string[]
按端点名称而非用户名筛选(部分匹配)
incidentStatus
string[]
按当前状态筛选
siteIds
string[]
按站点ID筛选
s1_set_alert_status
参数
类型
说明
status
字符串
必修的。 未解决,正在进行中,已解决
verdict
string
可选:在同一调用中设置分析师判断
alertIds
string[]
特定于目标的警报ID
query
string
自由文本搜索(用于用户名匹配)
ruleName
string[]
按规则名称筛选(部分匹配)
agentName
string[]
按端点名称而非用户名筛选(部分匹配)
incidentStatus
string[]
按当前状态筛选
siteIds
string[]
按站点ID筛选
s1_hash_推定
参数
类型
说明
hash
字符串
必修的。 SHA1(40个字符)或SHA256(64个字符)
s1_dvquery
参数
类型
说明
query
字符串
必修的。 深度可见性查询(S1QL)
fromDate
字符串
必修的。 ISO格式开始日期
toDate
字符串
必修的。 ISO格式结束日期
siteIds
string[]
按站点ID筛选
accountIds
string[]
按帐户ID筛选
s1_dv_get_events
参数
类型
说明
queryId
字符串
必修的。 来自s1_dv_Query的查询ID
limit
number
最大结果数(默认值100,最大值100)
s1_list_排除
参数
类型
说明
type
string
路径、white_hash、证书、浏览器、file_type
value
string
按排除值搜索(部分匹配)
osTypes
string
windows、macos、linux(逗号分隔)
siteIds
string[]
按站点ID筛选
limit
number
最大结果(默认50,最大100)
s1_create_排除
参数
类型
说明
type
字符串
必修的。 路径、white_hash、证书、浏览器、file_type
value
字符串
必修的。 要排除的值
osType
字符串
必修的。 windows、macos、linux
siteIds
string[]
特定站点的作用域(使用s1_get_agent查找siteId)
description
string
排除原因
mode
string
抑制、仅抑制动态、禁用进程监视器、禁用所有监视器
pathExclusionType
string
子文件夹(默认)或文件
s1_delete_exclusion
参数
类型
说明
ids
string[]
必修的。 要删除的排除ID
s1_create_star_rule
参数
类型
说明
name
字符串
必修的。 规则名称
s1ql
字符串
必修的。 触发规则的深度可见性查询
severity
字符串
必修的。 低、中、高、临界
siteIds
string[]
作用域到站点
accountIds
string[]
范围到帐户
tenant
boolean
租户范围
description
string
规则检测到什么
treatAsThreat
string
未确定(仅警报)、可疑、恶意
networkQuarantine
boolean
触发器自动隔离端点
expirationMode
string
永久(默认)或临时
expiration
string
ISO日期(如果是临时的,则需要)
status
string
活动(默认)、草稿、禁用
s1_list_应用程序
参数
类型
说明
name
string
按应用程序名称筛选(部分匹配)
agentName
string
按端点名称筛选(部分匹配)
limit
number
最大结果数(默认值50,最大值1000)
至少其中之一 name 或 agentName 是必需的。
故障排除
错误
修复
配置错误
确保 SENTINELONE_API_KEY 和 SENTINELONE_API_BASE 已设置
API_BASE必须为HTTPS
使用 https:// 不 http:// 为您的租户URL
HTTP 401
API令牌过期或无效--在S1控制台中重新生成
HTTP 403
令牌缺少此终结点的权限
HTTP 429
速率受限——服务器自动重试并回退
请求超时
S1 API耗时>30秒--缩小查询过滤器
工具未出现
请验证中的二进制路径 ~/.mcp.json,重新启动MCP客户端
MCP日志: ~/.cache/claude-cli-nodejs/*/mcp-logs-sentinelone/
许可证
麻省理工学院