delete-message
Remove a specific message by its unique ID using this tool, enabling efficient message management in Zulip workspaces. Simplifies message deletion for streamlined communication.
Instructions
Delete a message by its ID.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message_id | Yes | Unique ID of the message to delete |
Implementation Reference
- src/server.ts:515-527 (registration)Registration of the 'delete-message' MCP tool, including schema reference and handler function.server.tool( "delete-message", "Delete a message by its ID.", DeleteMessageSchema.shape, async ({ message_id }) => { try { await zulipClient.deleteMessage(message_id); return createSuccessResponse(`Message ${message_id} deleted successfully!`); } catch (error) { return createErrorResponse(`Error deleting message: ${error instanceof Error ? error.message : 'Unknown error'}`); } } );
- src/server.ts:519-526 (handler)Primary handler function for the delete-message tool that invokes the Zulip client and handles responses.async ({ message_id }) => { try { await zulipClient.deleteMessage(message_id); return createSuccessResponse(`Message ${message_id} deleted successfully!`); } catch (error) { return createErrorResponse(`Error deleting message: ${error instanceof Error ? error.message : 'Unknown error'}`); } }
- src/types.ts:201-203 (schema)Zod schema defining the input parameters for the delete-message tool (message_id: number).export const DeleteMessageSchema = z.object({ message_id: z.number().describe("Unique ID of the message to delete") });
- src/zulip/client.ts:195-197 (helper)ZulipClient helper method that performs the actual DELETE API request to Zulip's /messages/{id} endpoint.async deleteMessage(messageId: number): Promise<void> { await this.client.delete(`/messages/${messageId}`); }