Skip to content

Commit 97c9439

Browse files
committed
[DOCS-ATO] Document App & API Protection WAF MCP tools
Add comprehensive documentation, permissions, and example prompts for the ten new WAF, passlist, denylist, and custom rule tools under the security toolset.
1 parent c0601f8 commit 97c9439

2 files changed

Lines changed: 129 additions & 0 deletions

File tree

content/en/mcp_server/tools.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1336,6 +1336,93 @@ Assigns or unassigns security findings to a user. Assignment cascades to any lin
13361336
- Unassign findings that are no longer relevant.
13371337
- Assign all findings from this rule to me.
13381338

1339+
### `get_datadog_security_passlist`
1340+
*Toolset: **security***\
1341+
*Permissions Required: `AppSec Protection Read`*\
1342+
Returns all WAF exclusion filter (passlist) entries for the organization to review existing suppressions.
1343+
1344+
- List all App & API Protection passlist entries.
1345+
- Show me active WAF exclusion filters.
1346+
- Check existing passlist suppressions before I add a new one.
1347+
1348+
### `upsert_datadog_security_passlist`
1349+
*Toolset: **security***\
1350+
*Permissions Required: `AppSec Protection Write`*\
1351+
Creates or updates a WAF exclusion filter (passlist) entry to suppress noisy rules on a specific service or endpoint.
1352+
1353+
- Add a WAF passlist entry for service "checkout-service" on endpoint "/api/pay" to ignore rule "sqli-detection".
1354+
- Update the exclusion filter to suppress rule "xss-rule" for service "auth-api".
1355+
- Create an AppSec passlist entry that matches rule ID "lfi-attack" on "/v1/users".
1356+
1357+
### `delete_datadog_security_passlist`
1358+
*Toolset: **security***\
1359+
*Permissions Required: `AppSec Protection Write`*\
1360+
Deletes an existing WAF exclusion filter (passlist) entry.
1361+
1362+
- Delete WAF exclusion filter "passlist-abc-123".
1363+
- Remove the passlist entry that matches rule "sqli-detection" on "/api/pay".
1364+
1365+
### `get_datadog_security_denylist`
1366+
*Toolset: **security***\
1367+
*Permissions Required: `AppSec Protection Read`*\
1368+
Lists blocked IPs, users, and user agents (denylist entries) with support for filtering and token-aware truncation.
1369+
1370+
- List all blocked entities on the AppSec denylist.
1371+
- Show me blocked IP addresses from yesterday.
1372+
- Check if IP "198.51.100.42" is on the security denylist.
1373+
1374+
### `upsert_datadog_security_denylist_entry`
1375+
*Toolset: **security***\
1376+
*Permissions Required: `AppSec Protection Write`*\
1377+
Adds or updates a denylist block for an IP, user, or user agent with an expiration.
1378+
1379+
- Block IP "198.51.100.42" on the denylist for 24 hours.
1380+
- Add user "attacker_user_99" to the blocked entities denylist.
1381+
- Create a denylist entry for user-agent "MaliciousScanner/1.0" with an expiration set to next week.
1382+
1383+
### `delete_datadog_security_denylist_entry`
1384+
*Toolset: **security***\
1385+
*Permissions Required: `AppSec Protection Write`*\
1386+
Unblocks a previously denylisted entity by setting its expiration in the past.
1387+
1388+
- Unblock IP "198.51.100.42" on the denylist.
1389+
- Remove user "attacker_user_99" from the blocked entities list.
1390+
1391+
### `get_datadog_security_aap_custom_rules`
1392+
*Toolset: **security***\
1393+
*Permissions Required: `AppSec Protection Read`*\
1394+
Reads App & API Protection (AAP) WAF custom rules, either retrieving a single rule by ID or enumerating all rules.
1395+
1396+
- List all custom WAF rules for my organization.
1397+
- Get the definition of AAP custom rule "rule-xyz-123".
1398+
- Show me custom security response rules.
1399+
1400+
### `upsert_datadog_security_aap_custom_rule`
1401+
*Toolset: **security***\
1402+
*Permissions Required: `AppSec Protection Write`*\
1403+
Creates or updates an AAP WAF custom rule across the attack attempt, business logic, or security response categories. Action can block live traffic.
1404+
1405+
- Create a custom WAF rule to block requests containing path "/admin" under the business logic category.
1406+
- Update AAP custom rule "rule-xyz-123" to monitor traffic instead of block.
1407+
- Upsert a custom rule for attack attempts matching pattern "union select" in the query string.
1408+
1409+
### `delete_datadog_security_aap_custom_rule`
1410+
*Toolset: **security***\
1411+
*Permissions Required: `AppSec Protection Write`*\
1412+
Deletes an AAP custom WAF rule.
1413+
1414+
- Delete custom WAF rule "rule-xyz-123".
1415+
- Remove the AAP custom rule that blocks "/admin" traffic.
1416+
1417+
### `get_datadog_security_aap_blocking_config`
1418+
*Toolset: **security***\
1419+
*Permissions Required: `AppSec Protection Read`*\
1420+
Retrieves the organization's App & API Protection (AAP) blocking status and default blocking behavior.
1421+
1422+
- Get the default WAF blocking behavior for our organization.
1423+
- Is AppSec blocking active in our environment?
1424+
- Show me the AAP blocking configuration.
1425+
13391426
## Software Delivery
13401427

13411428
Tools for interacting with Software Delivery ([CI Visibility][48], [Test Optimization][24], [Code Coverage][65], and [DORA metrics][66]).

content/en/security/mcp_server.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,48 @@ The `security` toolset exposes the following tools to your AI client. Each tool
156156
: Deletes a suppression rule.
157157
: *Permissions required: `Security Monitoring Suppressions Write`*
158158

159+
### App & API Protection
160+
161+
`get_datadog_security_passlist`
162+
: Returns all WAF exclusion filter (passlist) entries for the organization to review existing suppressions.
163+
: *Permissions required: `AppSec Protection Read`*
164+
165+
`upsert_datadog_security_passlist`
166+
: Creates or updates a WAF exclusion filter (passlist) entry to suppress noisy rules on a specific service or endpoint.
167+
: *Permissions required: `AppSec Protection Write`*
168+
169+
`delete_datadog_security_passlist`
170+
: Deletes an existing WAF exclusion filter (passlist) entry.
171+
: *Permissions required: `AppSec Protection Write`*
172+
173+
`get_datadog_security_denylist`
174+
: Lists blocked IPs, users, and user agents (denylist entries) with support for filtering and token-aware truncation.
175+
: *Permissions required: `AppSec Protection Read`*
176+
177+
`upsert_datadog_security_denylist_entry`
178+
: Adds or updates a denylist block for an IP, user, or user agent with an expiration.
179+
: *Permissions required: `AppSec Protection Write`*
180+
181+
`delete_datadog_security_denylist_entry`
182+
: Unblocks a previously denylisted entity by setting its expiration in the past.
183+
: *Permissions required: `AppSec Protection Write`*
184+
185+
`get_datadog_security_aap_custom_rules`
186+
: Reads App & API Protection (AAP) WAF custom rules, either retrieving a single rule by ID or enumerating all rules.
187+
: *Permissions required: `AppSec Protection Read`*
188+
189+
`upsert_datadog_security_aap_custom_rule`
190+
: Creates or updates an AAP WAF custom rule across the attack attempt, business logic, or security response categories. Action can block live traffic.
191+
: *Permissions required: `AppSec Protection Write`*
192+
193+
`delete_datadog_security_aap_custom_rule`
194+
: Deletes an AAP custom WAF rule.
195+
: *Permissions required: `AppSec Protection Write`*
196+
197+
`get_datadog_security_aap_blocking_config`
198+
: Retrieves the organization's App & API Protection (AAP) blocking status and default blocking behavior.
199+
: *Permissions required: `AppSec Protection Read`*
200+
159201
## Further reading
160202

161203
{{< partial name="whats-next/whats-next.html" >}}

0 commit comments

Comments
 (0)