MITRE ATT&CK
list_mitre_tactics
Returns all 14 ATT&CK Enterprise tactics with per-tactic statistics, including technique counts. Costs 1 credit.
POST
tools/callCost: 1 credit per successful call · Response shape: tactics-row
Parameters
This tool takes no arguments.
Example invocation
Ask your agent: "List all MITRE ATT&CK Enterprise tactics and show me how many techniques each one covers."
curl -s https://mcp.precursorintelligence.com \
-H "Authorization: Bearer $PRECURSOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_mitre_tactics","arguments":{}}}'Response
The tactics-row shape differs from the standard array-rows envelope. The payload has three top-level fields: tactics_data (array of tactic records), statistics (aggregate counts), and generated_at. See Response Format for the full MCP envelope.
{
"tactics_data": [
{
"ID": "TA0001",
"Name": "Initial Access",
"Description": "The adversary is trying to get into your network.",
"Type": "x-mitre-tactic",
"XMitreShortname": "initial-access",
"XMitreDomains": ["enterprise-attack"],
"XMitreVersion": "1.0",
"Created": "2018-10-17T00:14:20.652Z",
"Modified": "2019-07-19T17:44:53.176Z",
"techniqueCount": 9
},
{
"ID": "TA0002",
"Name": "Execution",
"Description": "The adversary is trying to run malicious code.",
"Type": "x-mitre-tactic",
"XMitreShortname": "execution",
"XMitreDomains": ["enterprise-attack"],
"XMitreVersion": "1.0",
"Created": "2018-10-17T00:14:20.652Z",
"Modified": "2019-07-19T17:44:53.176Z",
"techniqueCount": 14
},
{
"ID": "TA0003",
"Name": "Persistence",
"Description": "The adversary is trying to maintain their foothold.",
"Type": "x-mitre-tactic",
"XMitreShortname": "persistence",
"XMitreDomains": ["enterprise-attack"],
"XMitreVersion": "1.0",
"Created": "2018-10-17T00:14:20.652Z",
"Modified": "2019-07-19T17:44:53.176Z",
"techniqueCount": 19
}
],
"statistics": {
"totalTactics": 14,
"totalTechniques": 213
},
"generated_at": "2026-05-18T10:24:31.118Z"
}Errors
| Code | Message | When |
|---|---|---|
-32001 | unauthorized | Invalid or revoked API key, or key IP not allowed. |
-32002 | insufficient_credits | Credit balance is zero. Top up from the dashboard. |
-32603 | internal | Unexpected server error. The credit is refunded automatically. |