DefectDojo MCP Server
A Model Context Protocol (MCP) server that provides comprehensive access to DefectDojo vulnerability management platform.
README
DefectDojo MCP Server
A Model Context Protocol (MCP) server that provides comprehensive access to DefectDojo vulnerability management platform.
Features
- Findings: List, create, update, close, verify, manage duplicates, notes, metadata
- Products/Assets: CRUD operations with filtering by org, lifecycle, tags
- Engagements: Create, update, close engagements with full lifecycle support
- Tests: Manage tests, test types, and associated notes
- Scan Import/Reimport: Import scan results from 180+ scanners with auto-create context
- Organizations: Manage product types (organizations)
- Users: User management and current user profile
- Endpoints: List and inspect endpoints and their statuses
- JIRA Integration: Manage JIRA instances, projects, and finding mappings
- System Administration: System settings, Celery status/queue management, risk acceptance, SLA, notifications
Installation
From GitHub (recommended for Kiro/Claude)
uvx --from git+https://github.com/dcianciulli/defectdojo-mcp-server defectdojo-mcp-server
From source
git clone https://github.com/dcianciulli/defectdojo-mcp-server.git
cd defectdojo-mcp-server
pip install -e .
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
DEFECTDOJO_URL |
Yes | Base URL of your DefectDojo instance (e.g., https://dojo.example.com) |
DEFECTDOJO_API_KEY |
Yes | API token for authentication (from user profile in DefectDojo) |
MCP Configuration (Kiro / Claude Desktop)
Add to your mcp.json (or ~/.kiro/settings/mcp.json):
{
"mcpServers": {
"defectdojo": {
"command": "uvx",
"args": ["--from", "git+https://github.com/dcianciulli/defectdojo-mcp-server", "defectdojo-mcp-server"],
"env": {
"DEFECTDOJO_URL": "https://dojo.example.com",
"DEFECTDOJO_API_KEY": "your-api-key-here"
},
"autoApprove": [
"list_findings",
"get_finding",
"list_products",
"get_product",
"list_engagements",
"get_engagement",
"list_tests",
"get_test",
"list_test_types",
"list_organizations",
"get_organization",
"list_users",
"get_user",
"get_current_user",
"list_endpoints",
"get_endpoint",
"list_endpoint_status",
"list_jira_instances",
"list_jira_projects",
"list_jira_finding_mappings",
"get_celery_status",
"get_system_settings",
"list_risk_acceptances",
"list_notifications",
"list_sla_configurations"
]
}
}
}
Getting Your API Key
- Log into DefectDojo
- Go to your user profile (top-right menu → API v2 Key)
- Copy the token value
Available Tools
Findings (14 tools)
list_findings- List/search findings with extensive filtersget_finding- Get finding detailscreate_finding- Create new findingupdate_finding- Partial updateclose_finding- Close (mitigate) a findingverify_finding- Mark as verifieddelete_finding- Delete a findingget_finding_duplicates- Get duplicatesreset_finding_duplicate_status- Reset duplicate statuslist_finding_notes/add_finding_note- Manage noteslist_finding_metadata/add_finding_metadata- Manage metadataaccept_risks- Accept risk for findings
Products/Assets (5 tools)
list_products/get_product/create_product/update_product/delete_product
Engagements (8 tools)
list_engagements/get_engagement/create_engagement/update_engagementclose_engagement/delete_engagementlist_engagement_notes/add_engagement_note
Tests (8 tools)
list_tests/get_test/create_test/update_test/delete_testlist_test_typeslist_test_notes/add_test_note
Scan Import (2 tools)
import_scan- Import new scan resultsreimport_scan- Reimport (update existing test)
Organizations (5 tools)
list_organizations/get_organization/create_organization/update_organization/delete_organization
Users (6 tools)
list_users/get_user/get_current_user/create_user/update_user/delete_user
Endpoints (3 tools)
list_endpoints/get_endpoint/list_endpoint_status
JIRA (4 tools)
list_jira_instances/get_jira_instance/create_jira_instancelist_jira_projects/list_jira_finding_mappings
System (10 tools)
get_system_settings/update_system_settingsget_celery_status/get_celery_queue_details/purge_celery_queue/purge_celery_tasklist_risk_acceptances/get_risk_acceptance/create_risk_acceptance/delete_risk_acceptancelist_notifications/list_sla_configurations
Authentication
The server authenticates using the DefectDojo API token mechanism. All API calls include the header:
Authorization: Token <DEFECTDOJO_API_KEY>
The token inherits the permissions of the user who generated it. Actions are performed on behalf of that user.
Supported Scan Types
DefectDojo supports 180+ scan types. Common ones include:
ZAP Scan,Burp XML,Burp APINessus Scan,Qualys ScanSARIF(generic static analysis)Trivy Scan,GrypeSonarQube Scan,Semgrep JSON ReportDependency Check Scan,Snyk Code ScanAWS Security Hub,AWS ProwlerGitLab SAST Report,GitLab DAST ReportCheckmarx Scan,Veracode Scan
Use list_test_types to get the full list from your instance.
Development
git clone https://github.com/dcianciulli/defectdojo-mcp-server.git
cd defectdojo-mcp-server
pip install -e ".[dev]"
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.