RAD Security MCP Server

官方

与RAD Security平台交互,该平台为Kubernetes和云环境提供AI驱动的安全洞察。

文档

RAD Security MCP 服务器

npm version

一个用于 RAD Security 的模型上下文协议 (MCP) 服务器,为 Kubernetes 和云环境提供 AI 驱动的安全洞察。

RAD Security MCP server

安装

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_TOOLKITSEXCLUDE_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 文件