memory_restore
Restore previously saved memory states to enable continuous learning and knowledge retention across LLM sessions.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- Executes the 'memory_restore' tool: parses arguments, calls restoreFromBackup, formats success/error response.async handleRestore(args) { try { const { backupName, replaceExisting = false } = args; const restoreResult = await this.restoreFromBackup(backupName, replaceExisting); return { content: [ { type: 'text', text: `π₯ **Restore Complete**\n\n**Backup:** ${backupName}\n**Facts Restored:** ${restoreResult.factsRestored}\n**Mode:** ${replaceExisting ? 'Replace' : 'Merge'}\n**Total Facts:** ${restoreResult.totalFacts}`, }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Error restoring backup: ${error.message}`, }, ], isError: true, }; } }
- src/tools/modules/MemoryManagement.js:73-96 (registration)Registers the 'memory_restore' tool on the MCP server with description, input schema, and handler.registerRestoreTool(server) { server.registerTool( 'memory_restore', 'Restore the memory system from a backup', { type: 'object', properties: { backupName: { type: 'string', description: 'Name of the backup to restore', }, replaceExisting: { type: 'boolean', description: 'Replace existing facts or merge with backup', default: false, }, }, required: ['backupName'], }, async (args) => { return await this.handleRestore(args); } ); }
- Core helper method called by the handler to perform backup restoration (currently a stub implementation).async restoreFromBackup(backupName, replaceExisting = false) { try { return { factsRestored: 0, totalFacts: 0, mode: replaceExisting ? 'replace' : 'merge', }; } catch (error) { throw new Error(`Failed to restore from backup: ${error.message}`); } }
- src/tools/MemoryTools.js:28-28 (registration)In MemoryTools.registerTools, calls MemoryManagement.registerTools which triggers memory_restore registration.this.management.registerTools(server);
- src/tools/MemoryTools.js:17-17 (registration)Instantiates MemoryManagement class in MemoryTools constructor, enabling tool registration.this.management = new MemoryManagement(factStore);