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 - ID 관리 작업
  • 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 세부 정보 조회
  • 최신 CVE 30개 조회
  • 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>"
      }
    }
  }
}

툴킷을 필터링하려면 env에 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 컨테이너로 - Streamable 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 전송은 이제 Streamable HTTP를 위해 지원이 중단되었습니다. 이전 버전과의 호환성을 위해 여전히 지원되지만, Streamable 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 요청 모니터링*
    • 네트워크 연결 추적*
    • 네트워크 패턴 분석*
  • ID 및 액세스

    • ID 목록 조회*
    • ID 세부 정보 조회*
  • 감사

    • Pod에 셸로 접속한 사용자 목록 조회*
  • 클라우드 보안

    • 클라우드 리소스 목록 조회 및 모니터링*
    • 리소스 세부 정보 및 규정 준수 상태 조회*
  • 이미지

    • SBOM 조회*
    • 이미지 및 취약점 목록 조회*
    • 취약점이 가장 많은 이미지 조회*
  • Kubernetes 객체

    • 특정 Kubernetes 리소스의 세부 정보 조회*
    • Kubernetes 리소스 목록 조회*
    • Kubernetes 리소스 잘못된 구성 정책 목록 조회*
  • CVE

    • CVE 목록 조회
    • 특정 CVE 세부 정보 조회
    • 최신 CVE 30개 조회
  • 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 파일을 참조하세요.