RAD Security MCP Server
oficialInteraja com a plataforma RAD Security, que oferece insights de segurança baseados em IA para ambientes Kubernetes e em nuvem.
Documentação
Servidor MCP RAD Security
Um servidor Model Context Protocol (MCP) para RAD Security, fornecendo insights de segurança com tecnologia de IA para ambientes Kubernetes e de nuvem.
Instalação
npm install @rad-security/mcp-server
Uso
Pré-requisitos
- Node.js 20.x ou superior
Variáveis de Ambiente
As seguintes variáveis de ambiente são necessárias para usar o servidor MCP com o Rad Security:
RAD_SECURITY_ACCESS_KEY_ID="your_access_key"
RAD_SECURITY_SECRET_KEY="your_secret_key"
RAD_SECURITY_ACCOUNT_ID="your_account_id"
Variáveis de ambiente opcionais:
RAD_SECURITY_TENANT_ID="your_tenant_id" # Optional: If not provided, will be fetched automatically from the account
Opcional: Filtrar Toolkits
Você pode controlar quais toolkits são expostos pelo servidor MCP usando estas variáveis de ambiente:
INCLUDE_TOOLKITS: Lista separada por vírgulas de toolkits a incluir (somente estes serão habilitados)EXCLUDE_TOOLKITS: Lista separada por vírgulas de toolkits a excluir (todos, exceto estes, serão habilitados)
Toolkits disponíveis:
containers- Operações de inventário de contêineresclusters- Operações de cluster Kubernetesidentities- Operações de gerenciamento de identidadeaudit- Operações de log de auditoriaimages- Operações de imagem de contêinerkubeobject- Operações de recursos Kubernetesmisconfigs- Detecção de configuração incorretaruntime- Operações de análise de runtimefindings- Operações de descobertas de segurançacves- Operações de banco de dados CVEinbox- Operações de itens da caixa de entradaworkflows- Operações de execução de fluxo de trabalhoknowledge_base- Operações de busca na base de conhecimentoradql- Interface de consulta para plataforma de dados rad
Exemplos:
# 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"
Nota: Se INCLUDE_TOOLKITS estiver definido, EXCLUDE_TOOLKITS será ignorado.
Operações Sem Autenticação
Você também pode usar algumas operações sem autenticação:
- Listar CVEs
- Obter detalhes de um CVE específico
- Obter os últimos 30 CVEs
- Listar políticas de configuração incorreta de recursos Kubernetes
No IDE Cursor
É bastante problemático definir variáveis de ambiente no IDE Cursor.
Portanto, você pode usar o seguinte script start.sh para iniciar o servidor.
./start.sh
Por favor, defina as variáveis de ambiente no script start.sh primeiro!
No Claude Desktop
Você pode usar a seguinte configuração para iniciar o servidor no 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>"
}
}
}
}
Para filtrar toolkits, adicione INCLUDE_TOOLKITS ou EXCLUDE_TOOLKITS ao env:
{
"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"
}
}
}
Como um Contêiner Docker - com HTTP Transmissível
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
Com filtros de toolkit:
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
Como um Contêiner Docker - com SSE (obsoleto)
Nota: O transporte SSE agora está obsoleto em favor do HTTP Transmissível. Ainda é suportado para compatibilidade com versões anteriores, mas é recomendado usar HTTP Transmissível em vez disso.
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
Funcionalidades
-
Inventário de Conta
- Listar clusters e seus detalhes*
-
Inventário de Contêineres
- Listar contêineres e seus detalhes*
-
Descobertas de Segurança
- Listar e analisar descobertas de segurança*
-
Segurança de Runtime
- Obter árvores de processos de contêineres em execução*
- Obter linhas de base de runtime de contêineres em execução*
- Analisar comportamento de processos de contêineres em execução*
-
Segurança de Rede
- Monitorar requisições HTTP*
- Rastrear conexões de rede*
- Analisar padrões de rede*
-
Identidade e Acesso
- Listar identidades*
- Obter detalhes de identidade*
-
Auditoria
- Listar quem acessou via shell um pod*
-
Segurança na Nuvem
- Listar e monitorar recursos de nuvem*
- Obter detalhes de recursos e status de conformidade*
-
Imagens
- Obter SBOMs*
- Listar imagens e suas vulnerabilidades*
- Obter imagens mais vulneráveis*
-
Objetos Kubernetes
- Obter detalhes de um recurso Kubernetes específico*
- Listar recursos Kubernetes*
- Listar políticas de configuração incorreta de recursos Kubernetes*
-
CVEs
- Listar CVEs
- Obter detalhes de um CVE específico
- Obter os últimos 30 CVEs
-
RadQL (Consultas Avançadas)
- Listar tipos de dados disponíveis para consulta (contêineres, descobertas, kubernetes_resources, etc.)*
- Obter esquema/metadados para tipos de dados específicos*
- Listar valores possíveis para campos de filtro*
- Executar consultas RadQL com filtragem, busca e agregações*
- Construir consultas programaticamente a partir de condições estruturadas*
- Executar múltiplas consultas em paralelo*
* - requer autenticação e conta no Rad Security.
Desenvolvimento
# Install dependencies
npm install
# Run type checking
npm run type-check
# Run linter
npm run lint
# Build
npm run build
Licença
Licença MIT - veja o arquivo LICENSE para detalhes