memory_get_stats
Retrieve memory usage statistics from the persistent memory system to monitor knowledge retention and learning across LLM sessions.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- The main handler function that retrieves memory statistics from factStore.getStats() and formats them into a structured text response including total facts, average quality, breakdown by type and domain.async handleGetStats(args) { try { const stats = await this.factStore.getStats(); let response = `📊 **Memory System Statistics**\n\n`; response += `**Total Facts:** ${stats.totalFacts}\n`; response += `**Average Quality:** ${stats.averageQualityScore}/100\n\n`; if (Object.keys(stats.factsByType).length > 0) { response += `**Facts by Type:**\n`; for (const [type, count] of Object.entries(stats.factsByType)) { response += `- ${type.replace('_', ' ')}: ${count}\n`; } response += `\n`; } if (Object.keys(stats.factsByDomain).length > 0) { response += `**Facts by Domain:**\n`; for (const [domain, count] of Object.entries(stats.factsByDomain)) { response += `- ${domain}: ${count}\n`; } } return { content: [ { type: 'text', text: response.trim(), }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Error getting stats: ${error.message}`, }, ], isError: true, }; }
- src/tools/modules/MemoryOperations.js:109-121 (registration)Registers the memory_get_stats tool with the MCP server, providing name, description, empty input schema (no parameters required), and links to the handleGetStats handler.registerGetStatsTool(server) { server.registerTool( 'memory_get_stats', 'Get statistics about the memory system', { type: 'object', properties: {}, }, async (args) => { return await this.handleGetStats(args); } ); }
- src/tools/MemoryTools.js:23-29 (registration)Higher-level registration in MemoryTools that calls registerTools on MemoryOperations instance, which in turn registers the memory_get_stats tool.async registerTools(server) { // Register tools from modular components this.operations.registerTools(server); this.queryHandler.registerTools(server); this.streamingTools.registerTools(server); this.management.registerTools(server); }
- src/tools/modules/MemoryOperations.js:7-13 (registration)MemoryOperations.registerTools method that explicitly calls registerGetStatsTool(server), integrating the tool into the modular registration flow.registerTools(server) { this.registerStoreInsightTool(server); this.registerUpdateFactTool(server); this.registerDeleteFactTool(server); this.registerGetStatsTool(server); this.registerGetRelatedTool(server); }