delete_observations
Remove specific observations from entities in the Knowledge Graph Memory Server, enabling precise data management and memory updates across interactions.
Instructions
Delete specific observations from entities in the knowledge graph
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| deletions | Yes |
Input Schema (JSON Schema)
{
"properties": {
"deletions": {
"items": {
"properties": {
"entityName": {
"description": "The name of the entity containing the observations",
"type": "string"
},
"observations": {
"description": "An array of observations to delete",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"entityName",
"observations"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"deletions"
],
"type": "object"
}
Implementation Reference
- src/memory/index.ts:149-158 (handler)The main handler function that executes the delete_observations logic. It loads the knowledge graph, filters out specified observations from entities, and saves the updated graph.async deleteObservations(deletions: { entityName: string; observations: string[] }[]): Promise<void> { const graph = await this.loadGraph(); deletions.forEach(d => { const entity = graph.entities.find(e => e.name === d.entityName); if (entity) { entity.observations = entity.observations.filter(o => !d.observations.includes(o)); } }); await this.saveGraph(graph); }
- src/memory/index.ts:340-364 (registration)MCP tool registration for delete_observations. Defines the tool metadata, input/output schemas, and handler wrapper that calls the KnowledgeGraphManager method.// Register delete_observations tool server.registerTool( "delete_observations", { title: "Delete Observations", description: "Delete specific observations from entities in the knowledge graph", inputSchema: { deletions: z.array(z.object({ entityName: z.string().describe("The name of the entity containing the observations"), observations: z.array(z.string()).describe("An array of observations to delete") })) }, outputSchema: { success: z.boolean(), message: z.string() } }, async ({ deletions }) => { await knowledgeGraphManager.deleteObservations(deletions); return { content: [{ type: "text" as const, text: "Observations deleted successfully" }], structuredContent: { success: true, message: "Observations deleted successfully" } }; } );
- src/memory/index.ts:346-355 (schema)Input and output schema definitions for the delete_observations tool using Zod validation library.inputSchema: { deletions: z.array(z.object({ entityName: z.string().describe("The name of the entity containing the observations"), observations: z.array(z.string()).describe("An array of observations to delete") })) }, outputSchema: { success: z.boolean(), message: z.string() }