Skip to main content
Glama

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
NameRequiredDescriptionDefault
formatNojson

Implementation Reference

  • 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 }; }
  • 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; }
  • 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' } } } },
  • 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; }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/saralegui-solutions/mcp-self-learning-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server