cancel-tasks
Cancel queued or processing tasks in Meilisearch by filtering by status, type, index, or task ID to manage task execution.
Instructions
Cancel tasks based on provided filters
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| statuses | No | Statuses of tasks to cancel | |
| types | No | Types of tasks to cancel | |
| indexUids | No | UIDs of the indexes on which tasks to cancel were performed | |
| uids | No | UIDs of the tasks to cancel |
Implementation Reference
- src/tools/task-tools.ts:107-122 (handler)Handler function that constructs a request body from input parameters and sends a POST request to '/tasks/cancel' using apiClient, returning the response or error.async ({ statuses, types, indexUids, uids }: CancelTasksParams) => { try { const body: Record<string, any> = {}; if (statuses && statuses.length > 0) body.statuses = statuses; if (types && types.length > 0) body.types = types; if (indexUids && indexUids.length > 0) body.indexUids = indexUids; if (uids && uids.length > 0) body.uids = uids; const response = await apiClient.post('/tasks/cancel', body); return { content: [{ type: "text", text: JSON.stringify(response.data, null, 2) }], }; } catch (error) { return createErrorResponse(error); } }
- src/tools/task-tools.ts:101-106 (schema)Zod input schema defining optional parameters for filtering tasks to cancel: statuses, types, indexUids, uids.{ statuses: z.array(z.enum(["enqueued", "processing"])).optional().describe("Statuses of tasks to cancel"), types: z.array(z.enum(["indexCreation", "indexUpdate", "indexDeletion", "documentAddition", "documentUpdate", "documentDeletion", "settingsUpdate", "dumpCreation", "taskCancelation"])).optional().describe("Types of tasks to cancel"), indexUids: z.array(z.string()).optional().describe("UIDs of the indexes on which tasks to cancel were performed"), uids: z.array(z.number()).optional().describe("UIDs of the tasks to cancel"), },
- src/tools/task-tools.ts:98-123 (registration)Registration of the 'cancel-tasks' tool on the MCP server, including name, description, input schema, and handler function.server.tool( "cancel-tasks", "Cancel tasks based on provided filters", { statuses: z.array(z.enum(["enqueued", "processing"])).optional().describe("Statuses of tasks to cancel"), types: z.array(z.enum(["indexCreation", "indexUpdate", "indexDeletion", "documentAddition", "documentUpdate", "documentDeletion", "settingsUpdate", "dumpCreation", "taskCancelation"])).optional().describe("Types of tasks to cancel"), indexUids: z.array(z.string()).optional().describe("UIDs of the indexes on which tasks to cancel were performed"), uids: z.array(z.number()).optional().describe("UIDs of the tasks to cancel"), }, async ({ statuses, types, indexUids, uids }: CancelTasksParams) => { try { const body: Record<string, any> = {}; if (statuses && statuses.length > 0) body.statuses = statuses; if (types && types.length > 0) body.types = types; if (indexUids && indexUids.length > 0) body.indexUids = indexUids; if (uids && uids.length > 0) body.uids = uids; const response = await apiClient.post('/tasks/cancel', body); return { content: [{ type: "text", text: JSON.stringify(response.data, null, 2) }], }; } catch (error) { return createErrorResponse(error); } } );
- src/tools/task-tools.ts:27-32 (schema)TypeScript interface defining the parameters for the cancel-tasks tool.interface CancelTasksParams { statuses?: string[]; types?: string[]; indexUids?: string[]; uids?: number[]; }