snooze_issue
Temporarily pause an issue and its occurrences on the intruder-mcp server by specifying a reason (e.g., ACCEPT_RISK, FALSE_POSITIVE, MITIGATING_CONTROLS), optional details, and duration.
Instructions
Snooze an issue and all its current and future occurrences.
Args:
issue_id: The ID of the issue to snooze
reason: Reason for snoozing (required, must one of ACCEPT_RISK, FALSE_POSITIVE, MITIGATING_CONTROLS)
details: Optional details for the snooze
duration: Optional duration for the snooze (in seconds)
duration_type: Optional duration type (e.g., 'days', 'hours')
The reasons mean:
- ACCEPT_RISK - Risk accepted for the issue and all of its occurrences
- FALSE_POSITIVE - False positive - issue and all occurrences have been verified as not exploitable
- MITIGATING_CONTROLS - Mitigating controls are in place
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| details | No | ||
| duration | No | ||
| duration_type | No | ||
| issue_id | Yes | ||
| reason | Yes |
Input Schema (JSON Schema)
{
"properties": {
"details": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Details"
},
"duration": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Duration"
},
"duration_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Duration Type"
},
"issue_id": {
"title": "Issue Id",
"type": "integer"
},
"reason": {
"title": "Reason",
"type": "string"
}
},
"required": [
"issue_id",
"reason"
],
"title": "snooze_issueArguments",
"type": "object"
}
Implementation Reference
- intruder_mcp/server.py:262-281 (handler)MCP tool handler and registration for 'snooze_issue'. This async function implements the tool logic by invoking the IntruderAPI's snooze_issue method and returns the result message.@mcp.tool() async def snooze_issue(issue_id: int, reason: str, details: Optional[str] = None, duration: Optional[int] = None, duration_type: Optional[str] = None) -> str: """ Snooze an issue and all its current and future occurrences. Args: issue_id: The ID of the issue to snooze reason: Reason for snoozing (required, must one of ACCEPT_RISK, FALSE_POSITIVE, MITIGATING_CONTROLS) details: Optional details for the snooze duration: Optional duration for the snooze (in seconds) duration_type: Optional duration type (e.g., 'days', 'hours') The reasons mean: - ACCEPT_RISK - Risk accepted for the issue and all of its occurrences - FALSE_POSITIVE - False positive - issue and all occurrences have been verified as not exploitable - MITIGATING_CONTROLS - Mitigating controls are in place """ result = api.snooze_issue(issue_id, reason=reason, details=details, duration=duration, duration_type=duration_type) return result.get("message", str(result))
- intruder_mcp/api_client.py:291-293 (helper)Helper method in the IntruderAPI class that constructs the request using SnoozeIssueRequest and performs the HTTP POST to the Intruder API endpoint to snooze the issue.def snooze_issue(self, issue_id: int, reason: IssueSnoozeReasonEnum, details: Optional[str] = None, duration: Optional[int] = None, duration_type: Optional[str] = None) -> dict: data = SnoozeIssueRequest(details=details, duration=duration, duration_type=duration_type, reason=reason) return self.client.post(f"{self.base_url}/issues/{issue_id}/snooze/", json=data.dict(exclude_none=True)).json()
- intruder_mcp/enums.py:268-273 (schema)Pydantic BaseModel defining the structure for the snooze issue request body sent to the API.class SnoozeIssueRequest(BaseModel): details: Optional[str] = None duration: Optional[int] = None duration_type: Optional[str] = None # Should match DurationTypeEnum if defined reason: IssueSnoozeReasonEnum
- intruder_mcp/enums.py:258-262 (schema)Enum defining the allowed reason values for snoozing an issue, used in SnoozeIssueRequest.class IssueSnoozeReasonEnum(str, Enum): ACCEPT_RISK = "ACCEPT_RISK" FALSE_POSITIVE = "FALSE_POSITIVE" MITIGATING_CONTROLS = "MITIGATING_CONTROLS"
- intruder_mcp/server.py:262-262 (registration)The @mcp.tool() decorator registers the snooze_issue function as an MCP tool.@mcp.tool()