delete-message
Remove messages from Zulip workspaces by specifying their unique ID to manage content and maintain organized communication channels.
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:519-526 (handler)The MCP tool handler function for 'delete-message'. It takes message_id parameter and calls zulipClient.deleteMessage to perform the deletion, handling success/error 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/server.ts:516-527 (registration)Registration of the 'delete-message' MCP tool with server.tool(), specifying name, description, input schema, and handler function."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/types.ts:201-203 (schema)Zod schema defining the input parameters for the delete-message tool: requires a numeric message_id.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 HTTP DELETE request to Zulip API endpoint /messages/{messageId} to delete the message.async deleteMessage(messageId: number): Promise<void> { await this.client.delete(`/messages/${messageId}`); }