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

            • A
              security
              F
              license
              A
              quality
              Model Context Protocol (MCP) server that integrates Redash with AI assistants like Claude, allowing them to query data, manage visualizations, and interact with dashboards through natural language.
              Last updated -
              10
              104
              21
              JavaScript
              • Apple
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that connects Claude and other MCP clients to Aider, enabling AI assistants to efficiently edit files, create new files, and interact with git repositories through natural language.
              Last updated -
              9
              Python
              The Unlicense
              • Linux
              • Apple
            • -
              security
              A
              license
              -
              quality
              An MCP server implementation that standardizes how AI applications access tools and context, providing a central hub that manages tool discovery, execution, and context management with a simplified configuration system.
              Last updated -
              9
              Python
              MIT License
            • -
              security
              A
              license
              -
              quality
              A Model Context Protocol server that enables AI assistants to search and retrieve information about security exploits and vulnerabilities from the Exploit Database, enhancing cybersecurity research capabilities.
              Last updated -
              4
              TypeScript
              MIT License
              • Linux
              • Apple

            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