Wisdom Layer MCP

by PV-Bhat
Verified
import { parseThinking } from '../utils/context-parser.js'; import { getAdvice } from '../utils/gemini.js'; // Advise tool handler export interface AdviseInput { plan?: string; userRequest?: string; thinkingLog?: string; availableTools?: string[]; focusAreas?: string[]; sessionId?: string; } export interface AdviseOutput { advice: string; toolSuggestions?: string[]; alerts?: string[]; } /** * The wisdom_advise tool gives strategic, metacognitive advice to improve Claude's thinking */ export async function adviseTool(input: AdviseInput): Promise<AdviseOutput> { try { // Parse thinking log if provided let parsedThinking = undefined; if (input.thinkingLog) { parsedThinking = parseThinking(input.thinkingLog); console.log(`Parsed thinking: Found ${parsedThinking.steps.length} steps, ${parsedThinking.decisionPoints.length} decisions, ${parsedThinking.uncertainties.length} uncertainties`); } // Get advice from LearnLM/Gemini const advice = await getAdvice({ plan: input.plan, userRequest: input.userRequest, thinkingLog: input.thinkingLog, availableTools: input.availableTools, focusAreas: input.focusAreas }); return advice; } catch (error) { console.error('Error in wisdom_advise tool:', error); return { advice: `Error processing advice request: ${error instanceof Error ? error.message : String(error)}` }; } }