RAD Security MCP Server
官方与RAD Security平台交互,该平台为Kubernetes和云环境提供AI驱动的安全洞察。
文档
RAD Security MCP 服务器
一个用于 RAD Security 的模型上下文协议 (MCP) 服务器,为 Kubernetes 和云环境提供 AI 驱动的安全洞察。
安装
npm install @rad-security/mcp-server
使用方法
前提条件
- Node.js 20.x 或更高版本
环境变量
使用 Rad Security 的 MCP 服务器需要以下环境变量:
RAD_SECURITY_ACCESS_KEY_ID="your_access_key"
RAD_SECURITY_SECRET_KEY="your_secret_key"
RAD_SECURITY_ACCOUNT_ID="your_account_id"
可选环境变量:
RAD_SECURITY_TENANT_ID="your_tenant_id" # Optional: If not provided, will be fetched automatically from the account
可选:筛选工具包
您可以使用以下环境变量控制 MCP 服务器公开哪些工具包:
INCLUDE_TOOLKITS:要包含的工具包的逗号分隔列表(仅启用这些)EXCLUDE_TOOLKITS:要排除的工具包的逗号分隔列表(除这些之外的所有工具包都将启用)
可用工具包:
containers- 容器清单操作clusters- Kubernetes 集群操作identities- 身份管理操作audit- 审计日志操作images- 容器镜像操作kubeobject- Kubernetes 资源操作misconfigs- 错误配置检测runtime- 运行时分析操作findings- 安全发现操作cves- CVE 数据库操作inbox- 收件箱项目操作workflows- 工作流执行操作knowledge_base- 知识库搜索操作radql- rad 数据平台查询接口
示例:
# Only enable workflow toolkit
INCLUDE_TOOLKITS="workflows"
# Enable only containers and images toolkits
INCLUDE_TOOLKITS="containers,images"
# Exclude workflow toolkit (enable all others)
EXCLUDE_TOOLKITS="workflows"
# Exclude runtime toolkit
EXCLUDE_TOOLKITS="runtime"
注意:如果设置了 INCLUDE_TOOLKITS,则 EXCLUDE_TOOLKITS 将被忽略。
无需身份验证的操作
您也可以在不进行身份验证的情况下使用少数操作:
- 列出 CVE
- 获取特定 CVE 的详细信息
- 获取最新的 30 个 CVE
- 列出 Kubernetes 资源错误配置策略
在 Cursor IDE 中
在 Cursor IDE 中设置环境变量相当麻烦。
因此,您可以使用以下 start.sh 脚本来启动服务器。
./start.sh
请先在 start.sh 脚本中设置环境变量!
在 Claude Desktop 中
您可以使用以下配置在 Claude Desktop 中启动服务器。
{
"mcpServers": {
"rad-security": {
"command": "npx",
"args": ["-y", "@rad-security/mcp-server"],
"env": {
"RAD_SECURITY_ACCESS_KEY_ID": "<your-access-key-id>",
"RAD_SECURITY_SECRET_KEY": "<your-secret-key>",
"RAD_SECURITY_ACCOUNT_ID": "<your-account-id>"
}
}
}
}
要筛选工具包,请将 INCLUDE_TOOLKITS 或 EXCLUDE_TOOLKITS 添加到环境变量中:
{
"mcpServers": {
"rad-security": {
"command": "npx",
"args": ["-y", "@rad-security/mcp-server"],
"env": {
"RAD_SECURITY_ACCESS_KEY_ID": "<your-access-key-id>",
"RAD_SECURITY_SECRET_KEY": "<your-secret-key>",
"RAD_SECURITY_ACCOUNT_ID": "<your-account-id>",
"EXCLUDE_TOOLKITS": "workflows"
}
}
}
作为 Docker 容器 - 使用可流式 HTTP
docker build -t rad-security/mcp-server .
docker run \
-e TRANSPORT_TYPE=streamable \
-e RAD_SECURITY_ACCESS_KEY_ID=your_access_key \
-e RAD_SECURITY_SECRET_KEY=your_secret_key \
-e RAD_SECURITY_ACCOUNT_ID=your_account_id \
-p 3000:3000 \
rad-security/mcp-server
使用工具包筛选器:
docker run \
-e TRANSPORT_TYPE=streamable \
-e RAD_SECURITY_ACCESS_KEY_ID=your_access_key \
-e RAD_SECURITY_SECRET_KEY=your_secret_key \
-e RAD_SECURITY_ACCOUNT_ID=your_account_id \
-e INCLUDE_TOOLKITS=workflows,containers \
-p 3000:3000 \
rad-security/mcp-server
作为 Docker 容器 - 使用 SSE(已弃用)
注意: SSE 传输方式现已弃用,推荐使用可流式 HTTP。为了向后兼容,它仍然受支持,但建议改用可流式 HTTP。
docker build -t rad-security/mcp-server .
docker run \
-e TRANSPORT_TYPE=sse \
-e RAD_SECURITY_ACCESS_KEY_ID=your_access_key \
-e RAD_SECURITY_SECRET_KEY=your_secret_key \
-e RAD_SECURITY_ACCOUNT_ID=your_account_id \
-p 3000:3000 \
rad-security/mcp-server
功能
-
账户清单
- 列出集群及其详细信息*
-
容器清单
- 列出容器及其详细信息*
-
安全发现
- 列出并分析安全发现*
-
运行时安全
- 获取正在运行的容器的进程树*
- 获取正在运行的容器的运行时基线*
- 分析正在运行的容器的进程行为*
-
网络安全
- 监控 HTTP 请求*
- 跟踪网络连接*
- 分析网络模式*
-
身份与访问
- 列出身份*
- 获取身份详细信息*
-
审计
- 列出谁通过 shell 进入了 Pod*
-
云安全
- 列出并监控云资源*
- 获取资源详细信息和合规状态*
-
镜像
- 获取 SBOM*
- 列出镜像及其漏洞*
- 获取漏洞最多的镜像*
-
Kubernetes 对象
- 获取特定 Kubernetes 资源的详细信息*
- 列出 Kubernetes 资源*
- 列出 Kubernetes 资源错误配置策略*
-
CVE
- 列出 CVE
- 获取特定 CVE 的详细信息
- 获取最新的 30 个 CVE
-
RadQL(高级查询)
- 列出可查询的可用数据类型(容器、发现、kubernetes_resources 等)*
- 获取特定数据类型的架构/元数据*
- 列出筛选字段的可能值*
- 执行带有筛选、搜索和聚合的 RadQL 查询*
- 根据结构化条件以编程方式构建查询*
- 并行执行多个查询*
* - 需要身份验证和 Rad Security 账户。
开发
# Install dependencies
npm install
# Run type checking
npm run type-check
# Run linter
npm run lint
# Build
npm run build
许可证
MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件