MCP Server (Pro)
Nota: os recursos de IA são exclusivos do DefectDojo Pro.
O Servidor DefectDojo Model Context Protocol (MCP) permite que Large Language Models (LLMs) interajam de forma inteligente com os dados de gerenciamento de vulnerabilidades do DefectDojo. Diferente das integrações de API tradicionais, que apenas transferem dados, o servidor MCP fornece contexto estruturado e significado semântico que permite aos assistentes de IA realizar análises de segurança sofisticadas e gerar insights acionáveis.
- Contexto Estruturado: o MCP fornece significado semântico aos dados do DefectDojo, não apenas a transferência bruta de dados
- Dados Pré-Processados: os dados normalizados e deduplicados do DefectDojo eliminam o ônus de pré-processamento do LLM
- Integração com Inteligência de Negócios: combina dados técnicos de vulnerabilidades com contexto de negócio
- Análise Pronta para Executivos: gera relatórios adequados desde equipes técnicas até a liderança executiva
- Valor Composto 10X: a análise aprimorada por IA fornece exponencialmente mais valor do que consultas manuais
🔑 Importante: o endpoint do servidor MCP está em
/mcp, mas todas as chamadas de função usam a URL base do DefectDojo. Essa separação garante acesso seguro e estruturado aos dados de vulnerabilidades.
Conectar ao MCP
Pré-requisitos
- Instância do DefectDojo com o Servidor MCP habilitado (v2.51.2 ou posterior)
- Token de API válido do DefectDojo com as permissões apropriadas
- Provedor de IA: Claude, ChatGPT, Gemini ou cliente MCP personalizado compatível
⚠️ Aviso de Segurança: seu token de API é uma informação altamente sensível usada para autenticação e autorização. NÃO EXIBA O TOKEN EM NENHUMA SOLICITAÇÃO OU RESPOSTA ao compartilhar configurações ou capturas de tela.
Métodos de Conexão
Existem duas formas diferentes de se conectar ao servidor MCP do DefectDojo, dependendo de qual interface de IA você está usando:
Método 1: Método do Arquivo de Configuração
Usado por: Claude Desktop, MCP Inspector e outros clientes MCP de desktop
Como funciona:
- O token e os detalhes de conexão são armazenados em um arquivo de configuração
- A conexão é automática quando você inicia a aplicação
- Não é necessário colar instruções nas conversas
- O servidor MCP está sempre disponível em todas as conversas
Vantagens: configure uma vez, funciona em todo lugar. Mais seguro (o token não fica no histórico de chat).
Método 2: Método de Prompt Manual
Usado por: interface web do Claude.ai, interface web do ChatGPT (com plugins), interface web do Gemini
Como funciona:
- Você copia/cola as instruções de conexão no início de cada conversa
- Ou adiciona as instruções a um Claude Project para inclusão automática
- A IA lê as instruções e se conecta ao servidor MCP
- Cada nova conversa exige as instruções
Vantagens: funciona em navegadores web sem instalar software.
💡 Qual método devo usar? Use o Método 1 (Arquivo de Configuração) se você tiver um aplicativo de desktop que o suporte. Use o Método 2 (Prompt Manual) se estiver usando uma interface de navegador web.
Detalhes de Conexão do Servidor MCP
Todos os métodos usam estes parâmetros principais:
| Parâmetro | Valor | Notas |
|---|---|---|
| Tipo de Transporte | Streamable HTTP | ⚠️ SSE (Server-Sent Events) está descontinuado |
| URL do Endpoint MCP | https://[YOUR-INSTANCE].defectdojo.com/mcp | Usado para estabelecer a conexão MCP |
| URL Base para Funções | https://[YOUR-INSTANCE].defectdojo.com/ | Usado em todas as chamadas de função de ferramenta |
| Autenticação | Authorization: Token [YOUR_API_TOKEN] | ⚠️ Use o prefixo “Token”, não “Bearer” |
Guias de Início Rápido por Provedor de IA
🖥️ Claude Desktop (Método 1: Arquivo de Configuração)
Passo 1: Localize seu arquivo de configuração
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Passo 2: Edite o arquivo de configuração
Adicione ou atualize a seção mcpServers com os detalhes da sua instância do DefectDojo:
{
"mcpServers": {
"DefectDojo-MCP": {
"command": "npx",
"args": [
"mcp-remote",
"https://your-instance.defectdojo.com/mcp",
"--header",
"Authorization: Token YOUR_API_TOKEN"
]
}
}
}⚠️ Crítico: a flag
--headercom a autenticação é obrigatória. SubstituaYOUR_API_TOKENpelo seu token de API real do DefectDojo.
Passo 3: Reinicie o Claude Desktop
Feche e reabra o Claude Desktop para que as alterações entrem em vigor.
Passo 4: Verifique a Conexão
Inicie uma nova conversa e pergunte: "Você consegue se conectar ao DefectDojo?"
Se for bem-sucedido, o Claude confirmará que tem acesso às ferramentas do servidor MCP do DefectDojo.
✅ Pronto! O servidor MCP do DefectDojo agora está disponível em todas as conversas. Não é necessário colar instruções.
🌐 Interface Web do Claude.ai (Método 2: Prompt Manual)
A interface web do Claude.ai não suporta arquivos de configuração. Você precisará fornecer as instruções de conexão em cada conversa ou usar um Claude Project.
Opção A: Colar Instruções a Cada Conversa
Passo 1: Copie as instruções abaixo
For this project, use the DefectDojo MCP server with these parameters in ALL function calls:
- **URL:** https://your-instance.defectdojo.com/ (base URL, NOT the /mcp endpoint)
- **Token:** YOUR_API_TOKEN
- **IMPORTANT:** DO NOT SHOW THE TOKEN IN ANY REQUESTS OR RESPONSES
The MCP server connects to https://your-instance.defectdojo.com/mcp but function calls must use the base URL.
**Do not show any of the API requests or responses.**Passo 2: Inicie uma nova conversa
Cole as instruções no início da sua conversa e, em seguida, faça suas perguntas de segurança.
Passo 3: Repita para cada nova conversa
Essas instruções devem ser incluídas no início de cada nova conversa.
Opção B: Usar um Claude Project (Recomendado)
Passo 1: Crie um Claude Project
- No Claude.ai, clique em “Projects” na barra lateral esquerda
- Clique em “Create Project”
- Nomeie-o como “DefectDojo Security Analysis”
Passo 2: Adicione Instruções Personalizadas ao Projeto
Em Project Settings → Custom Instructions, cole:
For this project, use the DefectDojo MCP server with these parameters in ALL function calls:
- **URL:** https://your-instance.defectdojo.com/
- **Token:** YOUR_API_TOKEN
- **IMPORTANT:** DO NOT SHOW THE TOKEN IN ANY REQUESTS OR RESPONSES
The MCP server connects to https://your-instance.defectdojo.com/mcp but function calls must use the base URL.
Do not show any of the API requests or responses.Passo 3: Use o Projeto para todas as conversas sobre o DefectDojo
Todas as conversas dentro deste projeto terão automaticamente acesso ao servidor MCP do DefectDojo.
✅ Pronto! Ao trabalhar neste Projeto, o Claude tem automaticamente acesso ao MCP do DefectDojo.
💬 ChatGPT (Método 2: Prompt Manual)
⚠️ Nota: o suporte a MCP do ChatGPT é limitado em comparação ao Claude. A integração nativa com MCP pode exigir ChatGPT Plus ou Enterprise e configurações específicas de plugin.
Passo 1: Verifique a Disponibilidade do Plugin MCP
No ChatGPT, verifique se plugins de MCP ou de conector de API estão disponíveis na sua loja de plugins. O suporte a MCP varia de acordo com o nível de assinatura.
Passo 2: Copie as instruções de conexão
I need you to connect to a DefectDojo MCP server with these details:
MCP Endpoint: https://your-instance.defectdojo.com/mcp
Base URL for API calls: https://your-instance.defectdojo.com/
Authentication: Authorization header with value "Token YOUR_API_TOKEN"
Use this connection to access DefectDojo vulnerability data. The server provides tools for:
- Getting findings with severity, status, and date filters
- Accessing products, engagements, tests
- User and group management
- Analyzing security trends
Do not show the API token in responses.Passo 3: Cole no início de cada conversa
Inclua essas instruções ao iniciar uma nova conversa sobre análise de segurança do DefectDojo.
Alternativa: Use um Custom GPT
Se você tiver o ChatGPT Plus, crie um Custom GPT com os detalhes de conexão do DefectDojo em suas instruções para acesso reutilizável.
💎 Google Gemini (Método 2: Prompt Manual)
⚠️ Nota: o suporte a MCP do Gemini está em evolução. A integração nativa pode ser limitada. Considere usar a API do Gemini com bibliotecas de cliente MCP para funcionalidade completa.
Passo 1: Copie as instruções de conexão
Connect to DefectDojo vulnerability management system via MCP server:
MCP Server: https://your-instance.defectdojo.com/mcp
API Base URL: https://your-instance.defectdojo.com/
Authentication: Token YOUR_API_TOKEN (use Authorization header with "Token" prefix)
Available capabilities:
- Query findings by severity (Critical, High, Medium, Low, Info)
- Filter by status (Active, Verified, False Positive, etc.)
- Filter by date ranges (Today, Past 7/30/90 days, etc.)
- Access products, engagements, tests, users, groups
- Generate security analysis and reports
Important: Do not display the authentication token in responses.Passo 2: Inicie a conversa com as instruções
Comece cada nova conversa no Gemini com essas instruções ao trabalhar com dados do DefectDojo.
Para Usuários Avançados:
Considere usar a API do Gemini com bibliotecas de cliente MCP (Python, JavaScript) para acesso programático com suporte completo ao protocolo MCP.
🔍 MCP Inspector (Teste e Validação)
Caso de Uso: teste sua conexão MCP com o DefectDojo, explore as ferramentas disponíveis e valide a configuração antes de usar com assistentes de IA.
Passo 1: Instale o MCP Inspector
# macOS (using Homebrew)
brew install mcp-inspector
# Or using npm (all platforms)
npm install -g @modelcontextprotocol/inspectorPasso 2: Execute o MCP Inspector
mcp-inspectorIsso iniciará um servidor web local (geralmente em http://localhost:6274)
Passo 3: Configure a conexão na interface web
- Tipo de Transporte:
Streamable HTTP - URL:
https://your-instance.defectdojo.com/mcp - Tipo de Conexão:
Via Proxy - Cabeçalhos Personalizados:
- Nome:
Authorization - Valor:
Token YOUR_API_TOKEN - Importante: ative o alternador ao lado do cabeçalho
- Nome:
Passo 4: Clique em “Connect”
Uma vez conectado, você pode explorar:
- Aba Tools: veja todas as 12 ferramentas disponíveis e seus parâmetros
- Aba Prompts: veja modelos de prompt pré-configurados
- Aba Resources: verifique os recursos de dados disponíveis
✅ Perfeito para: verificar se sua configuração funciona antes de configurar assistentes de IA, explorar as capacidades das ferramentas e solucionar problemas de conexão.
✅ Conexão bem-sucedida? Uma vez conectado por qualquer método, teste perguntando ao seu assistente de IA:
"Quantos achados ativos temos no DefectDojo?"
Referência de Ferramentas Disponíveis
O Servidor MCP do DefectDojo fornece 12 ferramentas para acessar e analisar dados de vulnerabilidades. Cada ferramenta inclui tratamento inteligente de parâmetros e retorna dados estruturados otimizados para análise por LLM.
💡 Nota sobre Parâmetro: todas as ferramentas aceitam um parâmetro
tokenopcional. Se não for fornecido em chamadas individuais, o LLM usará o token da configuração de conexão.
🔍 Ferramentas de Análise de Achados
get_findings
Descrição: recupera achados do DefectDojo com recursos sofisticados de filtragem. Esta é a ferramenta mais poderosa e frequentemente usada para análise de vulnerabilidades.
Parâmetros:
severity (Opcional)
- Tipo: Array de strings
- Valores:
Critical,High,Medium,Low,Info - Exemplo:
["Critical", "High"] - Uso: filtra achados por nível de severidade. Múltiplos valores podem ser fornecidos para consultas compostas.
status (Opcional)
- Tipo: Array de strings
- Valores:
Any,Active,Open,Verified,Out of Scope,False Positive,Inactive,Risk Accepted,Closed,Under Review - Exemplo:
["Active", "Verified"] - Uso: filtra achados pelo status atual. Use
Activepara avaliação de risco atual.
date (Opcional)
- Tipo: Array com um único valor string
- Valores:
0 - Any date,1 - Today,2 - Past 7 days,3 - Past 30 days,4 - Past 90 days,5 - Current month,6 - Current year,7 - Past year - Exemplo:
["3 - Past 30 days"] - Uso: filtra achados pela data de descoberta. Apenas um valor é permitido.
limit (Opcional)
- Tipo: Número
- Padrão: 100
- Intervalo: 1-100
- Uso: número de achados a retornar. Para apenas contagens, defina como 1 e use a propriedade count na resposta.
offset (Opcional)
- Tipo: Número
- Padrão: 0
- Uso: deslocamento de paginação para recuperar resultados adicionais.
💡 Boa Prática: para consultas de avaliação de risco, sempre use
status: ["Active"]para focar em vulnerabilidades atuais e não resolvidas, em vez de dados históricos.
Exemplo de Consulta:
O usuário pergunta: “Mostre todos os achados ativos de severidade Crítica e Alta dos últimos 30 dias”
O LLM chama:
get_findings({
severity: ["Critical", "High"],
status: ["Active"],
date: ["3 - Past 30 days"],
limit: 100
})get_finding_by_id
Descrição: recupera informações detalhadas sobre um achado específico usando seu identificador único.
Parâmetros:
finding_id (Obrigatório)
- Tipo: Número
- Mínimo: 1
- Uso: o ID único do achado a recuperar.
Exemplo de Consulta:
O usuário pergunta: “Obtenha os detalhes do achado #1234”
O LLM chama: get_finding_by_id({ finding_id: 1234 })
📦 Ferramentas de Produto e Engajamento
get_products
Descrição: recupera todos os produtos do DefectDojo. Produtos representam aplicações, serviços ou sistemas em teste.
Parâmetros:
limit (Opcional)
- Padrão: 100
- Uso: número máximo de produtos a retornar.
offset (Opcional)
- Padrão: 0
- Uso: deslocamento de paginação.
get_product_types
Descrição: recupera categorias de tipo de produto do DefectDojo. Os tipos de produto ajudam a organizar produtos em agrupamentos lógicos.
Parâmetros: iguais a get_products
get_engagements
Descrição: recupera engajamentos de teste de segurança. Engajamentos representam atividades de teste específicas ou períodos de tempo para um produto.
Parâmetros: iguais a get_products
get_tests
Descrição: recupera testes de segurança do DefectDojo. Testes contêm resultados de varredura de ferramentas de segurança específicas ou testes manuais.
Parâmetros: iguais a get_products
👥 Ferramentas de Gerenciamento de Usuários e Acesso
get_users
Descrição: recupera todos os usuários do DefectDojo para análise de stakeholders e mapeamento de responsabilidades.
Parâmetros:
limit (Opcional)
- Padrão: 100
offset (Opcional)
- Padrão: 0
get_user_by_id
Descrição: recupera informações detalhadas sobre um usuário específico.
Parâmetros:
user_id (Obrigatório)
- Tipo: Número
- Mínimo: 1
get_groups
Descrição: recupera grupos de usuários para análise de estrutura organizacional e mapeamento de permissões.
Parâmetros: iguais a get_users
get_group_by_id
Descrição: recupera informações detalhadas sobre um grupo específico.
Parâmetros:
group_id (Obrigatório)
- Tipo: Número
- Mínimo: 1
get_dojo_group_members
Descrição: recupera todos os membros de um grupo específico para análise de equipe.
Parâmetros:
group_id (Obrigatório)
- Tipo: Número
- Mínimo: 1
limit (Opcional)
- Padrão: 100
offset (Opcional)
- Padrão: 0
get_roles
Descrição: recupera definições de papéis do DefectDojo para entender as estruturas de permissão.
Parâmetros: iguais a get_users
Prompts Pré-Configurados
O Servidor MCP do DefectDojo inclui prompts pré-configurados que demonstram boas práticas para cenários comuns de análise. Esses prompts podem ser invocados diretamente pelo seu assistente de IA.
🛡️ Relatório de Revisão SAST
Propósito: criar um relatório abrangente avaliando a eficácia das ferramentas de SAST (Static Application Security Testing) com base nos dados do DefectDojo.
A Análise Gerada Inclui:
- Taxas de falso positivo por ferramenta e tipo de vulnerabilidade
- Tempo médio até a remediação por nível de severidade
- Vulnerabilidades críticas que aparecem múltiplas vezes (lacunas de deduplicação)
- Comparação de desempenho entre equipes de desenvolvimento
- Recomendações para melhorias na configuração das ferramentas
- Lacunas de treinamento identificadas a partir de padrões recorrentes de vulnerabilidade
- Análise de custo da abordagem de ferramentas atual vs. recomendada
Formato de Saída: relatório de avaliação técnica em HTML, adequado para justificar solicitações de orçamento de ferramentas de segurança.
📊 Relatório de Panorama de Segurança
Propósito: criar um relatório em estilo painel fornecendo uma visão geral do panorama de segurança com base nos dados do DefectDojo, adequado para reuniões trimestrais do conselho.
A Análise Gerada Inclui:
- Tendências de vulnerabilidade nos últimos 90 dias
- Equipes de desenvolvimento com os achados de severidade crítica/alta mais elevados
- Exposição a risco por produto e tipo de produto
- Top 5 categorias de CWE que exigem atenção imediata
- Ações de remediação específicas com análise de custo-benefício
- Roteiro de 6 meses para melhorar a postura de segurança
Formato de Saída: relatório em HTML de nível executivo com elementos visuais, cartões de estatísticas e foco em risco de negócio.
💡 Usando Prompts: para invocar um prompt, basta perguntar ao seu assistente de IA: “Create a SAST Review Report” ou “Generate a Security Landscape Report using DefectDojo data”
Exemplos de Casos de Uso
Caso de Uso 1: Painel Executivo de Segurança
Cenário: o CISO precisa de métricas trimestrais de segurança para uma apresentação ao conselho
Prompt do Usuário:
"Create an executive security dashboard for our Q4 board meeting showing:
- Total vulnerability counts by severity
- Trends over the past 90 days
- Which products have the highest risk exposure
- Top 5 vulnerability categories needing attention
- Specific remediation recommendations with ROI
- A 6-month roadmap for improving our security posture"O que acontece nos bastidores:
get_findings- obtém as contagens totais de achados ativosget_findings- análise de severidade Crítica e Altaget_findings- dados de tendência dos últimos 90 diasget_products- distribuição de vulnerabilidades por produtoget_engagements- atividades de teste recentes
Saída Gerada: relatório em HTML de nível executivo com tendências de vulnerabilidade, exposição a risco por produto, principais categorias de CWE, ações de remediação específicas com ROI e roteiro de segurança de 6 meses.
Caso de Uso 2: Análise de Desempenho das Equipes de Desenvolvimento
Cenário: um gerente de engenharia quer entender quais equipes precisam de treinamento adicional em segurança
Prompt do Usuário:
"Which development teams have the most security findings? What types of vulnerabilities
are they creating repeatedly? Based on this analysis, recommend specific security
training programs for each team."O que acontece nos bastidores:
get_findings- todos os achados ativosget_products- vincula achados a produtos/equipesget_groups- estrutura organizacional das equipesget_users- responsabilidade individual dos desenvolvedores
Análise Entregue: achados agrupados por equipe, análise de padrões de CWE mostrando erros repetidos, identificação de lacunas de treinamento e recomendações de programas de treinamento de segurança direcionados.
Caso de Uso 3: Avaliação da Eficácia das Ferramentas
Cenário: a equipe de segurança está avaliando o ROI das ferramentas de SAST atuais
Prompt do Usuário:
"Analyze the effectiveness of our SAST tools. Show me false positive rates,
mean time to remediation, which tools find the most valuable vulnerabilities,
and recommend configuration improvements or alternative tools."O que acontece nos bastidores:
get_tests- todos os testes de segurança por ferramentaget_findings- análise de falsos positivosget_findings- achados ativos por ferramentaget_findings- achados fechados para padrões de remediação
Análise Entregue: taxas de falso positivo por ferramenta, tempo médio até a remediação por severidade, análise de achados duplicados, recomendações de configuração de ferramentas, lacunas de treinamento e análise de custo-benefício de abordagens alternativas de ferramentas.
Caso de Uso 4: Relatório de Conformidade
Cenário: preparação para uma auditoria SOC 2 que exige evidências de gerenciamento de vulnerabilidades
Prompt do Usuário:
"Generate a SOC 2 compliance report showing our vulnerability management processes,
including discovery and remediation procedures, SLA compliance, continuous monitoring
evidence, and accountability documentation."O que acontece nos bastidores:
get_findings- achados ativos Críticos/Altosget_findings- tendências de descoberta desde o início do anoget_engagements- frequência e cobertura de testesget_users- responsabilidade pela remediação
Análise Entregue: processos de descoberta e remediação de vulnerabilidades, rastreamento de conformidade com SLA, evidências de monitoramento contínuo, documentação de responsabilidade e lacunas que exigem remediação antes da auditoria.
Caso de Uso 5: Priorização de Risco
Cenário: a equipe de segurança tem recursos limitados e precisa priorizar os esforços de remediação
Prompt do Usuário:
"What are the highest priority vulnerabilities we should fix first? Consider severity,
how long they've been open, exploitability, and business impact. Give me a prioritized
remediation roadmap with effort estimates."O que acontece nos bastidores:
get_findings- achados ativos Críticos/Altosget_products- contexto de criticidade de negócio- Análise de métricas de idade (dias desde a descoberta)
- Referência cruzada com pontuações EPSS (previsão de exploração)
Análise Entregue: lista de vulnerabilidades classificadas por risco combinando severidade, idade, explorabilidade e impacto de negócio. Roteiro de remediação específico com estimativas de esforço e redução de risco esperada.
Boas Práticas e Padrões de Consulta
Estratégia de Carregamento Progressivo de Dados
Seu assistente de IA otimiza o desempenho seguindo automaticamente estes padrões de carregamento de dados:
1. Comece com Dados Resumidos
Peça contagens antes de solicitar análises detalhadas:
"How many critical and high severity findings do we have?"Seu assistente de IA usará a ferramenta get_findings com limit: 1 para recuperar de forma eficiente apenas a contagem.
2. Use Paginação Estratégica
Para grandes conjuntos de dados, seu assistente de IA percorre os resultados automaticamente por páginas:
"Analyze all our active vulnerabilities"A IA fará múltiplas chamadas se necessário, começando com limites razoáveis e aumentando conforme exigido.
3. Reaproveitamento Eficiente de Dados
Faça perguntas relacionadas em sequência para evitar consultas redundantes:
"Show me all critical findings, then tell me which CWE categories they fall into"A IA reaproveitará os dados de achados da primeira consulta para a análise de CWE.
Estratégias de Filtragem Inteligente
Elabore seus prompts para aproveitar os poderosos recursos de filtragem do DefectDojo:
Consultas Baseadas em Severidade
Prompt do Usuário:
"Show me all Critical and High severity issues that need immediate attention"Nos bastidores: a IA usa get_findings com filtros de severidade e status
Consultas Baseadas em Tempo
Prompt do Usuário:
"What new vulnerabilities have been discovered in the past 30 days?"Nos bastidores: a IA aplica o filtro de data “Past 30 days” com status ativo
Filtragem Combinada
Prompt do Usuário:
"Give me a risk assessment of all critical and high active findings from the past 90 days"Nos bastidores: a IA combina filtros de severidade, status e data para uma análise abrangente
Análise de Referência Cruzada
Seu assistente de IA vincula automaticamente os achados ao contexto organizacional. Basta fazer perguntas abrangentes:
Prompt do Usuário:
"Which products have the most critical vulnerabilities and who is responsible for fixing them?"Nos bastidores: a IA vincula achados → testes → engajamentos → produtos → usuários/grupos para um contexto completo
Análise de Inteligência de Vulnerabilidades
Análise de Padrões de CWE
Prompt do Usuário:
"What are the most common vulnerability types in our codebase and which teams are creating them?"A IA agrupará os achados por CWE para identificar padrões recorrentes, necessidades de treinamento e problemas arquiteturais.
Métricas de Idade
Prompt do Usuário:
"How long have our critical vulnerabilities been open? Which ones are overdue for remediation?"A IA calcula o tempo desde a descoberta e sinaliza achados que excedem os limites de SLA.
Densidade de Vulnerabilidades
Prompt do Usuário:
"Which products have the highest vulnerability density and represent the greatest risk?"A IA calcula achados por produto e gera pontuações de risco combinando severidade e volume.
Padrões de Aprimoramento de Relatórios
Sempre Inclua
- Métricas específicas: contagens reais por severidade, não generalizações
- Análise de CWE: principais tipos de vulnerabilidade com descrições
- Dados de idade: há quanto tempo as vulnerabilidades estão abertas
- Recomendações acionáveis: o que fazer a seguir, com prazos
- Cálculos de ROI: custo esperado vs. benefício das ações
- Métricas de sucesso: como medir a melhoria
Integração de Contexto do Setor
Compare os achados do DefectDojo com frameworks do setor:
- OWASP Top 10: riscos de segurança de aplicações web
- SANS Top 25: fraquezas de software mais perigosas
- CWE Top 25: fraquezas mais comuns e impactantes
- Frameworks de conformidade: SOC 2, ISO 27001, NIST CSF
Solução de Problemas do MCP
Lista de Verificação de Diagnóstico
Verifique estes itens ao enfrentar problemas de conexão:
- ✅ o Tipo de Transporte é Streamable HTTP (não SSE)
- ✅ a URL do endpoint MCP está correta:
https://[instance].defectdojo.com/mcp - ✅ o cabeçalho Authorization está habilitado (o alternador está ON)
- ✅ o formato do token inclui o prefixo
Token - ✅ o token é válido e possui as permissões apropriadas
- ✅ a instância do DefectDojo está acessível (é possível fazer login pela interface web)
- ✅ a conectividade de rede permite conexões HTTPS
Problemas de Conexão Comuns
❌ “Connection Error - Check if your MCP server is running”
Causa: uso do tipo de transporte SSE (Server-Sent Events), que está descontinuado
Solução: altere o Tipo de Transporte para Streamable HTTP
Por quê: o Servidor MCP do DefectDojo usa o protocolo moderno Streamable HTTP. O SSE está descontinuado e não é suportado.
❌ “Authentication Failed” ou “401 Unauthorized”
Causa: formato incorreto do cabeçalho de autenticação ou token inválido
Soluções:
Verifique se o valor do cabeçalho usa o prefixo
Token(nãoBearer)✅ Correct: Token 7c6cc2xxxxxxxxxxxxxxxxxxxx87fcf72ec2b3fb ❌ Wrong: Bearer 7c6cc2xxxxxxxxxxxxxxxxxxxx87fcf72ec2b3fbCertifique-se de que o alternador do cabeçalho Authorization esteja HABILITADO (ligado)
Verifique se o token ainda é válido no DefectDojo (Admin → API Tokens)
Verifique se o token tem as permissões apropriadas para acesso de leitura
❌ A Ferramenta Retorna Resultados Vazios
Possíveis Causas:
- Os filtros são restritivos demais (nenhum dado corresponde aos critérios)
- A instância do DefectDojo não tem dados na categoria solicitada
- Permissões insuficientes do token
Soluções:
- Tente primeiro uma consulta mais ampla:
get_findings({ limit: 10 }) - Remova os filtros um de cada vez para identificar o filtro restritivo
- Verifique as permissões do token no DefectDojo
- Verifique se os dados existem diretamente na interface do DefectDojo
⚠️ Tempos de Resposta Lentos
Causa: solicitação de dados em excesso de uma só vez
Soluções:
- Reduza o parâmetro
limit(comece com 50-100) - Use filtros mais específicos para reduzir o tamanho do conjunto de resultados
- Use carregamento progressivo: obtenha as contagens primeiro, depois os detalhes
- Implemente paginação para grandes conjuntos de dados