export_knowledge
Export the current knowledge base in JSON or Markdown format to save learned patterns and insights from autonomous learning interactions.
Instructions
Export current knowledge base
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | json |
Implementation Reference
- mcp-self-learning-server.js:1197-1220 (handler)Main handler for the 'export_knowledge' MCP tool. Extracts format parameter, calls KnowledgeSynchronizer.exportKnowledge(), handles JSON or Markdown output by writing files and returning metadata.async handleExportKnowledge(args) { const { format = 'json' } = args; const knowledge = await this.knowledgeSync.exportKnowledge(); if (format === 'markdown') { const markdown = this.convertToMarkdown(knowledge); const mdPath = path.join(process.cwd(), 'knowledge_export.md'); await fs.writeFile(mdPath, markdown); return { success: true, format: 'markdown', path: mdPath, size: markdown.length }; } return { success: true, format: 'json', path: path.join(process.cwd(), 'knowledge_export.json'), items: knowledge.patterns.length }; }
- mcp-self-learning-server.js:844-857 (helper)KnowledgeSynchronizer method that gathers patterns and insights from the learning engine, serializes and saves to 'knowledge_export.json', returns the knowledge object.async exportKnowledge() { const knowledge = { timestamp: new Date().toISOString(), patterns: Array.from(this.learningEngine.patterns.entries()), insights: this.learningEngine.getInsights(), version: '1.0.0' }; // Save to file const exportPath = path.join(process.cwd(), 'knowledge_export.json'); await fs.writeFile(exportPath, JSON.stringify(knowledge, null, 2)); return knowledge; }
- mcp-self-learning-server.js:992-1004 (schema)Input schema definition for the export_knowledge tool, specifying optional 'format' parameter with 'json' or 'markdown' options.name: 'export_knowledge', description: 'Export current knowledge base', inputSchema: { type: 'object', properties: { format: { type: 'string', enum: ['json', 'markdown'], default: 'json' } } } },
- mcp-self-learning-server.js:1082-1084 (registration)Tool dispatch in CallToolRequestSchema handler switch statement, routing 'export_knowledge' calls to the handler method.case 'export_knowledge': result = await this.handleExportKnowledge(args); break;
- Helper method to convert exported knowledge to Markdown format, used when format='markdown'.convertToMarkdown(knowledge) { let markdown = '# Knowledge Export\n\n'; markdown += `Generated: ${knowledge.timestamp}\n\n`; markdown += '## Insights\n\n'; const insights = knowledge.insights; markdown += `- Total Interactions: ${insights.metrics.totalInteractions}\n`; markdown += `- Success Rate: ${(insights.metrics.successRate * 100).toFixed(2)}%\n`; markdown += `- Average Response Time: ${insights.metrics.averageResponseTime}ms\n\n`; markdown += '## Top Patterns\n\n'; insights.topPatterns.forEach(pattern => { markdown += `- **${pattern.key}**: Confidence ${(pattern.confidence * 100).toFixed(2)}% (${pattern.count} occurrences)\n`; }); markdown += '\n## Top Tools\n\n'; insights.topTools.forEach(tool => { markdown += `- **${tool.tool}**: ${tool.count} uses\n`; }); markdown += '\n## Recommendations\n\n'; insights.recommendations.forEach(rec => { markdown += `- ${rec}\n`; }); return markdown; }