Skip to main content
Glama

get_thinking_summary

Extract a concise summary of the ongoing thinking session to clarify complex problem-solving steps and reasoning paths for structured AI decision-making.

Instructions

Get a summary of the current thinking session

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • MCP tool registration and inline handler implementation for 'get_thinking_summary'. The anonymous async function retrieves the current thinking session state from the global 'thinkingSession' object, formats a detailed summary including all steps, status, progress, timestamps, and optional PDF context, and returns it as MCP content. No input parameters (empty schema). Handles empty session and errors gracefully.
    server.tool( "get_thinking_summary", "Get a complete summary of the current thinking session with all steps and analysis", {}, async () => { try { if (thinkingSession.currentSteps.length === 0) { return { content: [{ type: "text", text: "📝 **No Active Thinking Session**\n\nUse 'sequential_thinking' to start your first thought." }] }; } const targetSteps = thinkingSession.metadata?.target_steps; const progress = targetSteps ? ` (${thinkingSession.currentSteps.length}/${targetSteps})` : ''; let content = `📋 **Thinking Session Summary${progress}**\n\n`; content += `**Status**: ${thinkingSession.isComplete ? 'Complete ✅' : 'In Progress 🔄'}\n`; content += `**Total Steps**: ${thinkingSession.currentSteps.length}\n`; content += `**Started**: ${thinkingSession.currentSteps[0]?.timestamp ? new Date(thinkingSession.currentSteps[0].timestamp).toLocaleString() : 'Unknown'}\n\n`; content += "**Complete Thinking Chain:**\n"; thinkingSession.currentSteps.forEach((step, index) => { const categoryLabel = step.category ? ` [${step.category}]` : ''; content += `**${step.id}.${categoryLabel}** ${step.thought}\n`; if (step.reasoning) { content += ` *Reasoning: ${step.reasoning}*\n`; } content += '\n'; }); if (thinkingSession.summary) { content += `**Session Summary**: ${thinkingSession.summary}\n`; } if (thinkingSession.pdfContext) { content += `**PDF Context**: ${thinkingSession.pdfContext.filename || 'Document loaded'}\n`; } return { content: [{ type: "text", text: content }] }; } catch (error) { return { content: [{ type: "text", text: `❌ **Error getting thinking summary**: ${error instanceof Error ? error.message : String(error)}` }] }; } } );
  • Registration of the 'get_thinking_summary' tool using server.tool(), including name, description, empty schema, and handler function.
    server.tool( "get_thinking_summary", "Get a complete summary of the current thinking session with all steps and analysis", {}, async () => { try { if (thinkingSession.currentSteps.length === 0) { return { content: [{ type: "text", text: "📝 **No Active Thinking Session**\n\nUse 'sequential_thinking' to start your first thought." }] }; } const targetSteps = thinkingSession.metadata?.target_steps; const progress = targetSteps ? ` (${thinkingSession.currentSteps.length}/${targetSteps})` : ''; let content = `📋 **Thinking Session Summary${progress}**\n\n`; content += `**Status**: ${thinkingSession.isComplete ? 'Complete ✅' : 'In Progress 🔄'}\n`; content += `**Total Steps**: ${thinkingSession.currentSteps.length}\n`; content += `**Started**: ${thinkingSession.currentSteps[0]?.timestamp ? new Date(thinkingSession.currentSteps[0].timestamp).toLocaleString() : 'Unknown'}\n\n`; content += "**Complete Thinking Chain:**\n"; thinkingSession.currentSteps.forEach((step, index) => { const categoryLabel = step.category ? ` [${step.category}]` : ''; content += `**${step.id}.${categoryLabel}** ${step.thought}\n`; if (step.reasoning) { content += ` *Reasoning: ${step.reasoning}*\n`; } content += '\n'; }); if (thinkingSession.summary) { content += `**Session Summary**: ${thinkingSession.summary}\n`; } if (thinkingSession.pdfContext) { content += `**PDF Context**: ${thinkingSession.pdfContext.filename || 'Document loaded'}\n`; } return { content: [{ type: "text", text: content }] }; } catch (error) { return { content: [{ type: "text", text: `❌ **Error getting thinking summary**: ${error instanceof Error ? error.message : String(error)}` }] }; } } );

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/multiluca2020/visum-thinker-mcp-server'

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