misp_delete_object
Delete a MISP object from an event by its object ID, with an option to permanently remove it via hard delete.
Instructions
Delete a MISP object from an event
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| objectId | Yes | Object ID to delete | |
| hard | No | Hard delete (permanent) instead of soft delete |
Implementation Reference
- src/tools/objects.ts:183-208 (handler)The async handler function that executes the 'misp_delete_object' tool logic. It calls client.deleteObject(objectId, hard) and returns the result or an error.
async ({ objectId, hard }) => { try { const result = await client.deleteObject(objectId, hard); return { content: [ { type: "text", text: result.message || `Object ${objectId} deleted successfully.`, }, ], }; } catch (err) { return { content: [ { type: "text", text: `Error deleting object: ${err instanceof Error ? err.message : String(err)}`, }, ], isError: true, }; } } ); - src/tools/objects.ts:176-182 (schema)Input schema defining parameters for the tool: objectId (required string) and hard (optional boolean for permanent deletion).
{ objectId: z.string().describe("Object ID to delete"), hard: z .boolean() .optional() .describe("Hard delete (permanent) instead of soft delete"), }, - src/tools/objects.ts:173-208 (registration)The tool registration using server.tool() with the name 'misp_delete_object' and description 'Delete a MISP object from an event'.
server.tool( "misp_delete_object", "Delete a MISP object from an event", { objectId: z.string().describe("Object ID to delete"), hard: z .boolean() .optional() .describe("Hard delete (permanent) instead of soft delete"), }, async ({ objectId, hard }) => { try { const result = await client.deleteObject(objectId, hard); return { content: [ { type: "text", text: result.message || `Object ${objectId} deleted successfully.`, }, ], }; } catch (err) { return { content: [ { type: "text", text: `Error deleting object: ${err instanceof Error ? err.message : String(err)}`, }, ], isError: true, }; } } ); - src/client.ts:525-535 (helper)The MispClient.deleteObject method that makes the actual HTTP POST request to /objects/delete/{objectId}. Sends hard=1 in body if hard delete is requested.
async deleteObject( objectId: string, hard = false ): Promise<{ message: string }> { const body = hard ? { hard: 1 } : {}; return this.request<{ message: string }>( "POST", `/objects/delete/${encodeId(objectId, "objectId")}`, body ); }