delete_character
Remove D&D 5e characters permanently using ID or name. Supports batch deletion to manage multiple characters at once.
Instructions
Permanently delete a D&D 5e character by ID or name. Supports batch deletion.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| characterId | No | ||
| characterName | No | ||
| batch | No |
Implementation Reference
- src/registry.ts:515-538 (registration)The 'delete_character' tool is registered here in toolRegistry with its name, description, JSON schema converted from Zod schema deleteCharacterSchema, and an async handler that validates input using deleteCharacterSchema, executes deleteCharacter function with validated args, and returns formatted success/error response with markdown content.delete_character: { name: 'delete_character', description: 'Permanently delete a D&D 5e character by ID or name. Supports batch deletion.', inputSchema: toJsonSchema(deleteCharacterSchema), handler: async (args) => { try { const validated = deleteCharacterSchema.parse(args); const result = deleteCharacter(validated); if (!result.success) { return error(result.error || 'Failed to delete character'); } return success(result.markdown); } catch (err) { if (err instanceof z.ZodError) { const messages = err.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', '); return error(`Validation failed: ${messages}`); } const message = err instanceof Error ? err.message : String(err); return error(message); } }, },
- src/registry.ts:515-538 (handler)Handler function for 'delete_character' tool that performs Zod validation on input arguments, calls the core deleteCharacter helper function, checks for success, and formats the MCP response using success() or error() helpers.delete_character: { name: 'delete_character', description: 'Permanently delete a D&D 5e character by ID or name. Supports batch deletion.', inputSchema: toJsonSchema(deleteCharacterSchema), handler: async (args) => { try { const validated = deleteCharacterSchema.parse(args); const result = deleteCharacter(validated); if (!result.success) { return error(result.error || 'Failed to delete character'); } return success(result.markdown); } catch (err) { if (err instanceof z.ZodError) { const messages = err.errors.map(e => `${e.path.join('.')}: ${e.message}`).join(', '); return error(`Validation failed: ${messages}`); } const message = err instanceof Error ? err.message : String(err); return error(message); } }, },