Skip to main content
Glama

DefectDojo MCP Server

by jamiesonio

Servidor MCP de DefectDojo

Este proyecto proporciona una implementación de servidor del Protocolo de Contexto de Modelo (MCP) para DefectDojo , una popular herramienta de gestión de vulnerabilidades de código abierto. Permite que los agentes de IA y otros clientes MCP interactúen con la API de DefectDojo mediante programación.

Características

Este servidor MCP expone herramientas para administrar entidades clave de DefectDojo:

  • Resultados: obtener, buscar, crear, actualizar el estado y agregar notas.
  • Productos: Listado de productos disponibles.
  • Compromisos: enumerar, recuperar detalles, crear, actualizar y cerrar compromisos.

Instalación y funcionamiento

Hay un par de formas de ejecutar este servidor:

Uso de uvx (recomendado)

uvx ejecuta aplicaciones Python en entornos virtuales temporales, instalando dependencias automáticamente.

uvx defectdojo-mcp

Usando pip

Puede instalar el paquete en su entorno Python usando pip .

# Install directly from the cloned source code directory pip install . # Or, if the package is published on PyPI pip install defectdojo-mcp

Una vez instalado a través de pip, ejecute el servidor usando:

defectdojo-mcp

Configuración

El servidor requiere las siguientes variables de entorno para conectarse a su instancia de DefectDojo:

  • DEFECTDOJO_API_TOKEN ( obligatorio ): su token de API de DefectDojo para autenticación.
  • DEFECTDOJO_API_BASE ( obligatorio ): la URL base de su instancia de DefectDojo (por ejemplo, https://your-defectdojo-instance.com ).

Puede configurarlos en el archivo de configuración de su cliente MCP. A continuación, se muestra un ejemplo con el comando uvx :

{ "mcpServers": { "defectdojo": { "command": "uvx", "args": ["defectdojo-mcp"], "env": { "DEFECTDOJO_API_TOKEN": "YOUR_API_TOKEN_HERE", "DEFECTDOJO_API_BASE": "https://your-defectdojo-instance.com" } } } }

Si instaló el paquete usando pip , la configuración se vería así:

{ "mcpServers": { "defectdojo": { "command": "defectdojo-mcp", "args": [], "env": { "DEFECTDOJO_API_TOKEN": "YOUR_API_TOKEN_HERE", "DEFECTDOJO_API_BASE": "https://your-defectdojo-instance.com" } } } }

Herramientas disponibles

Las siguientes herramientas están disponibles a través de la interfaz MCP:

  • get_findings : recupera hallazgos con filtrado (nombre del producto, estado, gravedad) y paginación (límite, desplazamiento).
  • search_findings : Busque resultados mediante una consulta de texto, con filtrado y paginación.
  • update_finding_status : cambia el estado de un hallazgo específico (por ejemplo, Activo, Verificado, Falso positivo).
  • add_finding_note : agrega una nota textual a un hallazgo.
  • create_finding : crea un nuevo hallazgo asociado con una prueba.
  • list_products : Lista de productos con filtrado (nombre, tipo_de_producto) y paginación.
  • list_engagements : lista de interacciones con filtrado (product_id, estado, nombre) y paginación.
  • get_engagement : obtiene detalles de un compromiso específico por su ID.
  • create_engagement : crea un nuevo compromiso para un producto.
  • update_engagement : Modificar los detalles de un compromiso existente.
  • close_engagement : Marcar un compromiso como completado.

(Consulte el contenido README original a continuación para ver ejemplos de uso detallados de cada herramienta)

Ejemplos de uso

(Nota: Estos ejemplos suponen un entorno de cliente MCP capaz de llamar use_mcp_tool )

Obtener resultados

# Get active, high-severity findings (limit 10) result = await use_mcp_tool("defectdojo", "get_findings", { "status": "Active", "severity": "High", "limit": 10 })

Resultados de la búsqueda

# Search for findings containing 'SQL Injection' result = await use_mcp_tool("defectdojo", "search_findings", { "query": "SQL Injection" })

Actualizar el estado del hallazgo

# Mark finding 123 as Verified result = await use_mcp_tool("defectdojo", "update_finding_status", { "finding_id": 123, "status": "Verified" })

Agregar nota al hallazgo

result = await use_mcp_tool("defectdojo", "add_finding_note", { "finding_id": 123, "note": "Confirmed vulnerability on staging server." })

Crear hallazgo

result = await use_mcp_tool("defectdojo", "create_finding", { "title": "Reflected XSS in Search Results", "test_id": 55, # ID of the associated test "severity": "Medium", "description": "User input in search is not properly sanitized, leading to XSS.", "cwe": 79 })

Lista de productos

# List products containing 'Web App' in their name result = await use_mcp_tool("defectdojo", "list_products", { "name": "Web App", "limit": 10 })

Lista de compromisos

# List 'In Progress' engagements for product ID 42 result = await use_mcp_tool("defectdojo", "list_engagements", { "product_id": 42, "status": "In Progress" })

Conseguir compromiso

result = await use_mcp_tool("defectdojo", "get_engagement", { "engagement_id": 101 })

Crear compromiso

result = await use_mcp_tool("defectdojo", "create_engagement", { "product_id": 42, "name": "Q2 Security Scan", "target_start": "2025-04-01", "target_end": "2025-04-15", "status": "Not Started" })

Actualizar el compromiso

result = await use_mcp_tool("defectdojo", "update_engagement", { "engagement_id": 101, "status": "In Progress", "description": "Scan initiated." })

Compromiso cercano

result = await use_mcp_tool("defectdojo", "close_engagement", { "engagement_id": 101 })

Desarrollo

Configuración

  1. Clonar el repositorio.
  2. Se recomienda utilizar un entorno virtual:
    python -m venv .venv source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
  3. Instalar dependencias, incluidas las dependencias de desarrollo:
    pip install -e ".[dev]"

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en abrir un problema para solucionar errores, solicitar funciones o hacer preguntas. Si desea contribuir con código, primero abra un problema para discutir los cambios propuestos.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Proporciona una implementación de servidor de Protocolo de contexto de modelo que permite a los agentes de IA y otros clientes de MCP interactuar programáticamente con DefectDojo, una herramienta de gestión de vulnerabilidades, para administrar hallazgos, productos y compromisos.

  1. Características
    1. Instalación y funcionamiento
      1. Uso de uvx (recomendado)
      2. Usando pip
    2. Configuración
      1. Herramientas disponibles
        1. Ejemplos de uso
          1. Obtener resultados
          2. Resultados de la búsqueda
          3. Actualizar el estado del hallazgo
          4. Agregar nota al hallazgo
          5. Crear hallazgo
          6. Lista de productos
          7. Lista de compromisos
          8. Conseguir compromiso
          9. Crear compromiso
          10. Actualizar el compromiso
          11. Compromiso cercano
        2. Desarrollo
          1. Configuración
        3. Licencia
          1. Contribuyendo

            Related MCP Servers

            • -
              security
              F
              license
              -
              quality
              A comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.
              Last updated -
              3
              1
              TypeScript
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol server that integrates with DeepSource to provide AI assistants with access to code quality metrics, issues, and analysis results.
              Last updated -
              9
              675
              2
              TypeScript
              MIT License
              • Linux
              • Apple
            • -
              security
              F
              license
              -
              quality
              A Model Context Protocol server that provides AI models with structured access to external data and services, acting as a bridge between AI assistants and applications, databases, and APIs in a standardized, secure way.
              Last updated -
              1
              Python
            • A
              security
              A
              license
              A
              quality
              A Model Context Protocol (MCP) server that provides AI-powered security analysis and safety instruction tools. This server helps protect AI agents by providing security guidelines, content analysis, and cautionary instructions when interacting with various MCPs and external services.
              Last updated -
              3
              7
              4
              JavaScript
              ISC License

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/jamiesonio/defectdojo-mcp'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server