acknowledge_incident
Acknowledge an open incident by providing its ID to update its status and indicate it is being addressed.
Instructions
Acknowledge an open incident
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| incident_id | Yes | The ID of the incident to acknowledge |
Implementation Reference
- src/tools/alert.ts:48-63 (schema)Schema definition for acknowledge_incident tool with required incident_id parameter
getAcknowledgeTool(): Tool { return { name: 'acknowledge_incident', description: 'Acknowledge an open incident', inputSchema: { type: 'object', properties: { incident_id: { type: 'string', description: 'The ID of the incident to acknowledge', }, }, required: ['incident_id'], }, }; } - src/tools/alert.ts:166-204 (handler)Handler that builds a GraphQL mutation to acknowledge an incident via aiIssuesAcknowledge and returns the acknowledged issue
async acknowledgeIncident(input: { incident_id: string; comment?: string; }): Promise<Record<string, unknown> | null> { const mutation = ` mutation { aiIssuesAcknowledge( issueIds: ["${input.incident_id}"] ${input.comment ? `, comment: "${input.comment}"` : ''} ) { issues { issueId state acknowledgedAt acknowledgedBy ${input.comment ? 'comment' : ''} } errors { type description } } } `; const response = await this.client.executeNerdGraphQuery<{ aiIssuesAcknowledge?: { issues?: Record<string, unknown>[]; errors?: Array<{ description?: string }>; }; }>(mutation); const result = response.data?.aiIssuesAcknowledge; if (result?.errors && result.errors.length > 0) { throw new Error(result.errors[0].description); } return result?.issues?.[0] || null; } - src/server.ts:76-77 (registration)Tool registration in the server's registerTools method via alertTool.getAcknowledgeTool()
alertTool.getAcknowledgeTool(), syntheticsTool.getListMonitorsTool(), - src/server.ts:215-227 (registration)Execution dispatch in server.ts that validates input and delegates to AlertTool.acknowledgeIncident
case 'acknowledge_incident': { const { incident_id, comment } = args as Record<string, unknown>; if (typeof incident_id !== 'string' || incident_id.trim() === '') { throw new Error('acknowledge_incident: "incident_id" (non-empty string) is required'); } if (comment !== undefined && typeof comment !== 'string') { throw new Error('acknowledge_incident: "comment" must be a string when provided'); } return await new AlertTool(this.client).acknowledgeIncident({ incident_id, comment: comment as string | undefined, }); }