waroom_create_incident
Create incidents in Waroom MCP by specifying service name, title, severity, and optional details. Manage public or private incidents and experiment with flagged incident types.
Instructions
インシデントを作成します。
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| description | No | インシデントの説明(オプション) | |
| experimental | No | 実験的なインシデントかどうか(デフォルト: false) | |
| is_private | No | プライベートインシデントかどうか(デフォルト: false) | |
| service_name | Yes | サービス名またはサービスID | |
| severity | Yes | 重要度(critical, high, low, info, unknown) | |
| title | Yes | インシデントのタイトル(1-255文字) |
Implementation Reference
- src/tools/incidents.ts:17-41 (handler)The handler function that executes the waroom_create_incident tool logic by calling WaroomClient.createIncident and returning the formatted response or error.async (params) => { try { const response = await waroomClient.createIncident( params.service_name, params.title, params.severity, params.description, params.experimental, params.is_private ); return { content: [{ type: 'text', text: JSON.stringify(response, null, 2) }] }; } catch (error) { return { content: [{ type: 'text', text: `インシデントの作成に失敗しました: ${error}` }] }; } }
- src/tools/incidents.ts:9-16 (schema)Input schema using Zod for validating parameters of the waroom_create_incident tool.{ service_name: z.string().min(1).describe('サービス名またはサービスID'), title: z.string().min(1).max(255).describe('インシデントのタイトル(1-255文字)'), severity: z.enum(['critical', 'high', 'low', 'info', 'unknown']).describe('重要度(critical, high, low, info, unknown)'), description: z.string().min(1).describe('インシデントの説明'), experimental: z.boolean().default(false).describe('実験的なインシデントかどうか(デフォルト: false)'), is_private: z.boolean().default(false).describe('プライベートインシデントかどうか(デフォルト: false)'), },
- src/tools/incidents.ts:6-42 (registration)The server.tool() call that registers the waroom_create_incident tool with its schema and handler.server.tool( 'waroom_create_incident', 'インシデントを作成します。', { service_name: z.string().min(1).describe('サービス名またはサービスID'), title: z.string().min(1).max(255).describe('インシデントのタイトル(1-255文字)'), severity: z.enum(['critical', 'high', 'low', 'info', 'unknown']).describe('重要度(critical, high, low, info, unknown)'), description: z.string().min(1).describe('インシデントの説明'), experimental: z.boolean().default(false).describe('実験的なインシデントかどうか(デフォルト: false)'), is_private: z.boolean().default(false).describe('プライベートインシデントかどうか(デフォルト: false)'), }, async (params) => { try { const response = await waroomClient.createIncident( params.service_name, params.title, params.severity, params.description, params.experimental, params.is_private ); return { content: [{ type: 'text', text: JSON.stringify(response, null, 2) }] }; } catch (error) { return { content: [{ type: 'text', text: `インシデントの作成に失敗しました: ${error}` }] }; } } );
- src/main.ts:26-26 (registration)Invocation of createIncidentsTools in the main MCP server setup, which registers the waroom_create_incident among other incident tools.createIncidentsTools(server, waroomClient);