loading…
Search for a command to run...
loading…
Comprehensive MITRE ATT\&CK MCP server with SOC integration for technique lookup, alert mapping, and coverage analysis.
Comprehensive MITRE ATT&CK MCP server with SOC integration for technique lookup, alert mapping, and coverage analysis.
An MCP server providing comprehensive access to the MITRE ATT&CK knowledge base with full SOC stack integration. Enables LLMs to look up techniques, map alerts to ATT&CK, analyze detection coverage, profile campaigns, generate Navigator layers, and correlate across Wazuh, TheHive, Cortex, and MISP.
git clone https://github.com/solomonneas/mitre-mcp.git
cd mitre-mcp
npm install
npm run build
| Variable | Default | Description |
|---|---|---|
MITRE_DATA_DIR |
~/.mitre-mcp/data |
Local cache directory for STIX bundles |
MITRE_MATRICES |
enterprise |
Comma-separated matrices: enterprise, mobile, ics |
MITRE_UPDATE_INTERVAL |
86400 |
Auto-update check interval in seconds (default 24h) |
| Variable | Description |
|---|---|
WAZUH_URL |
Wazuh API URL (e.g., https://wazuh.example.internal:55000) |
WAZUH_USERNAME |
Wazuh API username (default: wazuh-wui) |
WAZUH_PASSWORD |
Wazuh API password |
WAZUH_VERIFY_SSL |
Verify SSL certs (default: true, set false for self-signed) |
THEHIVE_URL |
TheHive URL (e.g., http://thehive.example.internal:9000) |
THEHIVE_API_KEY |
TheHive API key |
CORTEX_URL |
Cortex URL (e.g., http://cortex.example.internal:9001) |
CORTEX_API_KEY |
Cortex API key |
MISP_URL |
MISP URL (e.g., https://misp.example.internal) |
MISP_API_KEY |
MISP API key (authkey) |
MISP_VERIFY_SSL |
Verify SSL certs (default: true, set false for self-signed) |
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"mitre-attack": {
"command": "mitre-mcp",
"env": {
"MITRE_MATRICES": "enterprise",
"WAZUH_URL": "https://wazuh.example.internal:55000",
"WAZUH_USERNAME": "wazuh-wui",
"WAZUH_PASSWORD": "your-password",
"WAZUH_VERIFY_SSL": "false",
"THEHIVE_URL": "http://thehive.example.internal:9000",
"THEHIVE_API_KEY": "your-api-key",
"CORTEX_URL": "http://cortex.example.internal:9001",
"CORTEX_API_KEY": "your-api-key",
"MISP_URL": "https://misp.example.internal",
"MISP_API_KEY": "your-api-key",
"MISP_VERIFY_SSL": "false"
}
}
}
}
claude mcp add mitre-attack \
--env MITRE_MATRICES=enterprise \
-- mitre-mcp
Add --scope user to make it available from any directory instead of only the current project. Add --env flags for any SOC integrations (Wazuh, TheHive, Cortex, MISP) you want to enable.
If you're running from a source checkout instead of the npm-installed binary, point command/args at the built dist/index.js:
openclaw mcp set mitre-attack '{
"command": "node",
"args": ["/absolute/path/to/mitre-mcp/dist/index.js"],
"env": {
"MITRE_MATRICES": "enterprise"
}
}'
Or, with the global npm install:
openclaw mcp set mitre-attack '{
"command": "mitre-mcp",
"env": {
"MITRE_MATRICES": "enterprise"
}
}'
Then restart the OpenClaw gateway so the new server is picked up:
systemctl --user restart openclaw-gateway
openclaw mcp list # confirm "mitre-attack" is registered
Hermes Agent reads MCP config from ~/.hermes/config.yaml under the mcp_servers key. Add an entry:
mcp_servers:
mitre-attack:
command: "mitre-mcp"
env:
MITRE_MATRICES: "enterprise"
Or, when running from a source checkout instead of the global npm install:
mcp_servers:
mitre-attack:
command: "node"
args: ["/absolute/path/to/mitre-mcp/dist/index.js"]
env:
MITRE_MATRICES: "enterprise"
Then reload MCP from inside a Hermes session:
/reload-mcp
Codex CLI registers MCP servers via codex mcp add:
codex mcp add mitre-attack \
--env MITRE_MATRICES=enterprise \
-- mitre-mcp
Or, when running from a source checkout:
codex mcp add mitre-attack \
--env MITRE_MATRICES=enterprise \
-- node /absolute/path/to/mitre-mcp/dist/index.js
Codex writes the entry to ~/.codex/config.toml under [mcp_servers.mitre-attack]. Verify with:
codex mcp list
npm run start
npm run dev
| Tool | Description |
|---|---|
mitre_get_technique |
Get full details of a technique by ID (T1059, T1059.001) |
mitre_search_techniques |
Search techniques by keyword, tactic, platform, data source |
| Tool | Description |
|---|---|
mitre_list_tactics |
List all tactics in kill-chain order |
mitre_get_tactic |
Get tactic details with all associated techniques |
| Tool | Description |
|---|---|
mitre_get_group |
Get group details including techniques and software used |
mitre_search_groups |
Search groups by keyword or technique usage |
mitre_list_groups |
List all known threat groups |
| Tool | Description |
|---|---|
mitre_get_software |
Get software details with techniques and associated groups |
mitre_search_software |
Search software by name, technique, or type (malware/tool) |
| Tool | Description |
|---|---|
mitre_get_mitigation |
Get mitigation details with addressed techniques |
mitre_mitigations_for_technique |
Get all mitigations for a specific technique |
mitre_search_mitigations |
Search mitigations by keyword |
| Tool | Description |
|---|---|
mitre_get_datasource |
Get data source details with detectable techniques |
mitre_detection_coverage |
Analyze detection coverage based on available data sources |
| Tool | Description |
|---|---|
mitre_map_alert_to_technique |
Map security alerts to likely ATT&CK techniques |
mitre_technique_overlap |
Find technique overlap between groups for attribution |
mitre_attack_path |
Generate possible attack paths through the kill chain |
| Tool | Description |
|---|---|
mitre_update_data |
Force update of the local ATT&CK data cache |
mitre_data_version |
Get current data version and object counts |
| Tool | Description |
|---|---|
mitre_campaign_profile |
Build a technique profile with group/software/campaign matching |
mitre_get_campaign |
Get campaign details with techniques, software, and groups |
mitre_list_campaigns |
List all known ATT&CK campaigns |
mitre_search_campaigns |
Search campaigns by keyword or technique |
| Tool | Description |
|---|---|
mitre_navigator_layer |
Generate ATT&CK Navigator JSON layers (coverage, group, campaign, diff) |
| Tool | Description |
|---|---|
mitre_wazuh_status |
Wazuh manager status, agents, and rule stats |
mitre_map_wazuh_alert |
Map Wazuh alerts to ATT&CK techniques by rule ID/description/groups |
mitre_wazuh_rule_coverage |
Analyze Wazuh rules mapped to ATT&CK techniques |
mitre_wazuh_alerts |
Fetch recent alerts enriched with ATT&CK context |
| Tool | Description |
|---|---|
mitre_thehive_enrich |
Enrich a TheHive case with ATT&CK techniques and mitigations |
mitre_thehive_create_case |
Create a case pre-populated with ATT&CK context |
mitre_thehive_list_cases |
List cases with ATT&CK technique filtering |
| Tool | Description |
|---|---|
mitre_cortex_analyzer_coverage |
Map Cortex analyzers to ATT&CK data sources |
mitre_cortex_run_analyzers |
Run analyzers on observables with ATT&CK context |
| Tool | Description |
|---|---|
mitre_misp_event_to_attack |
Map MISP event attributes/galaxies to ATT&CK |
mitre_misp_search_indicators |
Search MISP IOCs by technique or group |
mitre_misp_create_event |
Create events pre-tagged with ATT&CK techniques |
mitre_misp_list_events |
List events with ATT&CK enrichment |
| Tool | Description |
|---|---|
mitre_soc_status |
Connection status for all SOC integrations |
mitre_cross_correlate |
Search for techniques across Wazuh, TheHive, and MISP simultaneously |
| URI | Description |
|---|---|
mitre://matrix/enterprise |
Full Enterprise ATT&CK matrix (tactics x techniques) |
mitre://version |
Current data version and statistics |
mitre://tactics |
All tactics in kill-chain order |
| Prompt | Description |
|---|---|
map-incident-to-attack |
Map incident observables to ATT&CK techniques |
threat-hunt-plan |
Generate a threat hunting plan |
gap-analysis |
Perform detection gap analysis |
attribution-analysis |
Assist with threat attribution |
Use mitre_soc_status to check which SOC platforms are connected.
Use mitre_map_wazuh_alert with ruleId 5710 and ruleGroups ["sshd", "authentication_failed"]
to find matching ATT&CK techniques.
Use mitre_thehive_create_case with title "Suspected APT28 Activity",
techniques ["T1059.001", "T1566.001", "T1078"] and severity 3
to create a case with ATT&CK context, mitigations, and investigation tasks.
Use mitre_navigator_layer with mode "coverage" and
dataSources ["Process", "Network Traffic", "File"]
to generate a heatmap of detection coverage.
Use mitre_cross_correlate with techniques ["T1059.001", "T1566.001"]
to search for related alerts in Wazuh, cases in TheHive, and events in MISP.
Use mitre_misp_event_to_attack with eventId "1"
to extract ATT&CK techniques from MISP galaxies and attributes.
Use mitre_navigator_layer with mode "diff" and
compareGroupIds ["G0007", "G0016"]
to generate a visual comparison of APT28 vs APT29 techniques.
npm test # Run all tests
npm run test:watch # Watch mode
npm run lint # Type check
mitre-mcp/
src/
index.ts # MCP server entry point
config.ts # Environment config (core + SOC)
types.ts # STIX/ATT&CK type definitions
resources.ts # MCP resources
prompts.ts # MCP prompts
data/
loader.ts # STIX bundle downloader and cache manager
parser.ts # STIX 2.1 JSON parser (incl. campaigns)
index.ts # Indexed, queryable ATT&CK data store
tools/
techniques.ts # Technique lookup and search
tactics.ts # Tactic navigation
groups.ts # Threat group intelligence
software.ts # Software/malware lookup
mitigations.ts # Mitigation mapping
datasources.ts # Data source and detection coverage
mapping.ts # Alert-to-technique mapping and correlation
campaigns.ts # Campaign analysis and attribution
navigator.ts # ATT&CK Navigator layer generation
management.ts # Data update management
soc/
client.ts # HTTP clients for Wazuh, TheHive, Cortex, MISP
wazuh.ts # Wazuh alert mapping and rule coverage
thehive.ts # TheHive case enrichment and creation
cortex.ts # Cortex analyzer coverage mapping
misp.ts # MISP event/IOC management
correlation.ts # Cross-stack ATT&CK correlation
index.ts # SOC module barrel export
tests/
parser.test.ts # STIX parser tests
tools.test.ts # Data store query tests
mapping.test.ts # Mapping and correlation tests
package.json
tsconfig.json
tsup.config.ts
vitest.config.ts
README.md
ATT&CK data is sourced from the official MITRE STIX 2.1 bundles:
Data is downloaded on first run and cached locally. Set MITRE_UPDATE_INTERVAL to control how often the server checks for updates.
MIT
Выполни в терминале:
claude mcp add mitre-mcp -- npx Безопасность
Низкий рискАвтоматическая эвристика по публичным данным — не гарантия безопасности.