DefectDojo MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DefectDojo MCP Serverlist all open critical findings"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Related MCP server: MCP Vulnerability Checker Server
Installation
From GitHub (recommended for Kiro/Claude)
uvx --from git+https://github.com/dcianciulli/defectdojo-mcp-server defectdojo-mcp-serverFrom source
git clone https://github.com/dcianciulli/defectdojo-mcp-server.git
cd defectdojo-mcp-server
pip install -e .Configuration
Environment Variables
Variable | Required | Description |
| Yes | Base URL of your DefectDojo instance (e.g., |
| 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
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/dcianciulli/defectdojo-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server