delete_recording_file
Remove Zoom meeting recordings by specifying the meeting ID and recording ID. Choose to move the file to trash or delete it permanently using the specified action.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | Delete action (trash: move to trash, delete: delete permanently) | |
| meeting_id | Yes | The meeting ID | |
| recording_id | Yes | The recording ID |
Implementation Reference
- src/tools/recordings.js:77-92 (handler)The handler function that executes the logic for deleting a specific recording file using the Zoom API DELETE request to /meetings/{meeting_id}/recordings/{recording_id}.handler: async ({ meeting_id, recording_id, action }) => { try { const params = {}; if (action) params.action = action; const response = await zoomApi.delete(`/meetings/${meeting_id}/recordings/${recording_id}`, { params }); return { content: [{ type: "text", text: "Recording file deleted successfully" }] }; } catch (error) { return handleApiError(error); } }
- src/tools/recordings.js:72-76 (schema)Zod schema for input validation of the delete_recording_file tool parameters: meeting_id, recording_id, and optional action.schema: { meeting_id: z.string().describe("The meeting ID"), recording_id: z.string().describe("The recording ID"), action: z.enum(["trash", "delete"]).optional().describe("Delete action (trash: move to trash, delete: delete permanently)") },
- src/tools/recordings.js:69-93 (registration)The tool definition object for delete_recording_file, including name, description, schema, and handler, which is part of the recordingsTools array exported and later registered in the MCP server.{ name: "delete_recording_file", description: "Delete a specific recording file", schema: { meeting_id: z.string().describe("The meeting ID"), recording_id: z.string().describe("The recording ID"), action: z.enum(["trash", "delete"]).optional().describe("Delete action (trash: move to trash, delete: delete permanently)") }, handler: async ({ meeting_id, recording_id, action }) => { try { const params = {}; if (action) params.action = action; const response = await zoomApi.delete(`/meetings/${meeting_id}/recordings/${recording_id}`, { params }); return { content: [{ type: "text", text: "Recording file deleted successfully" }] }; } catch (error) { return handleApiError(error); } } }
- src/server.js:53-53 (registration)The call to registerTools(recordingsTools) which registers all tools in the array, including delete_recording_file, by calling server.tool for each.registerTools(recordingsTools);