delete_meeting
Delete a meeting by providing its unique ID to remove it from the system.
Instructions
Delete a meeting.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ID of the meeting to delete |
Implementation Reference
- src/tools/meetings.ts:62-77 (handler)The handler for the delete_meeting tool. It calls apiDelete on /meetings/{id}, logs the response, and formats the result using formatDelete.
server.registerTool( "delete_meeting", { description: "Delete a meeting.", annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true }, inputSchema: { id: z.number().int().positive().describe("ID of the meeting to delete") }, }, async ({ id }) => { try { const record = await apiDelete<EduframeRecord>(`/meetings/${id}`); void logResponse("delete_meeting", { id }, record); return formatDelete(record, "meeting"); } catch (error) { return formatError(error); } }, - src/tools/meetings.ts:64-67 (schema)Input schema for delete_meeting: expects a positive integer 'id' field representing the meeting to delete.
{ description: "Delete a meeting.", annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true }, inputSchema: { id: z.number().int().positive().describe("ID of the meeting to delete") }, - src/tools/meetings.ts:62-79 (registration)Registration of the delete_meeting tool via server.registerTool inside the registerMeetingTools function.
server.registerTool( "delete_meeting", { description: "Delete a meeting.", annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: true }, inputSchema: { id: z.number().int().positive().describe("ID of the meeting to delete") }, }, async ({ id }) => { try { const record = await apiDelete<EduframeRecord>(`/meetings/${id}`); void logResponse("delete_meeting", { id }, record); return formatDelete(record, "meeting"); } catch (error) { return formatError(error); } }, ); } - src/tools/index.ts:128-132 (registration)The registerAllTools function that ultimately calls registerMeetingTools (and thus registers delete_meeting) on the server.
export function registerAllTools(server: McpServer): void { for (const register of tools) { register(server); } } - src/api.ts:219-229 (helper)The apiDelete helper function used by the handler to send an HTTP DELETE request to the Eduframe API.
export async function apiDelete<T>(path: string): Promise<T> { const { token } = getConfig(); const url = buildUrl(path); const response = await fetch(url.toString(), { method: "DELETE", headers: buildHeaders(token), }); return handleResponse<T>(response); }