UNPKG

smart-thinking-mcp

Version:

Un serveur MCP avancé pour le raisonnement multi-dimensionnel, adaptatif et collaboratif

213 lines (212 loc) 6.59 kB
/** * Types communs pour le projet Smart-Thinking * Avec ajout du système de vérification et de fiabilité */ export type ThoughtType = 'regular' | 'revision' | 'meta' | 'hypothesis' | 'conclusion'; export type VerificationStatus = 'unverified' | 'partially_verified' | 'verified' | 'contradicted' | 'inconclusive' | 'absence_of_information' | 'uncertain' | 'contradictory'; export type VerificationDetailedStatus = 'unverified' | 'verification_pending' | // En attente de vérification 'verification_in_progress' | // Vérification en cours 'partially_verified' | 'verified' | 'contradicted' | 'inconclusive' | 'absence_of_information' | // Aucune information trouvée 'uncertain' | // Information incertaine 'contradictory'; export type ConnectionType = 'supports' | 'contradicts' | 'refines' | 'branches' | 'derives' | 'associates' | 'exemplifies' | 'generalizes' | 'compares' | 'contrasts' | 'questions' | 'extends' | 'analyzes' | 'synthesizes' | 'applies' | 'evaluates' | 'cites' | 'extended-by' | 'analyzed-by' | 'component-of' | 'applied-by' | 'evaluated-by' | 'cited-by'; export interface ConnectionAttributes { temporality?: 'before' | 'after' | 'during' | 'concurrent'; certainty?: 'definite' | 'high' | 'moderate' | 'low' | 'speculative'; directionality?: 'unidirectional' | 'bidirectional' | 'multidirectional'; scope?: 'broad' | 'specific' | 'partial' | 'complete'; nature?: 'causal' | 'correlational' | 'sequential' | 'hierarchical' | 'associative'; customAttributes?: Record<string, any>; } export interface ThoughtNode { id: string; content: string; type: ThoughtType; timestamp: Date; connections: Connection[]; metrics: ThoughtMetrics; metadata: Record<string, any>; } export interface Connection { targetId: string; type: ConnectionType; strength: number; description?: string; attributes?: ConnectionAttributes; inferred?: boolean; inferenceConfidence?: number; bidirectional?: boolean; } export interface Hyperlink { id: string; nodeIds: string[]; type: ConnectionType; label?: string; attributes?: ConnectionAttributes; strength: number; inferred: boolean; confidence: number; metadata: Record<string, any>; } export interface ThoughtMetrics { confidence: number; relevance: number; quality: number; } export interface CalculationVerificationResult { original: string; verified: string; isCorrect: boolean; confidence: number; } export interface VerificationResult { status: VerificationStatus; confidence: number; sources: string[]; verificationSteps: string[]; contradictions?: string[]; notes?: string; verifiedCalculations?: CalculationVerificationResult[]; } export interface SuggestedTool { name: string; confidence: number; reason: string; priority?: number; } export interface VisualizationCluster { id: string; label: string; nodeIds: string[]; color?: string; expanded?: boolean; level: number; parentClusterId?: string; } export interface InteractivityOptions { zoomable: boolean; draggable: boolean; selectable: boolean; tooltips: boolean; expandableNodes: boolean; initialZoom?: number; zoomRange?: [number, number]; highlightOnHover?: boolean; } export interface FilterOptions { nodeTypes?: ThoughtType[]; connectionTypes?: ConnectionType[]; metricThresholds?: { confidence?: [number, number]; relevance?: [number, number]; quality?: [number, number]; }; textSearch?: string; dateRange?: [Date, Date]; customFilters?: Record<string, any>; } export interface LayoutOptions { type: 'force' | 'hierarchical' | 'radial' | 'chronological' | 'thematic'; direction?: 'LR' | 'RL' | 'TB' | 'BT'; forceStrength?: number; spacing?: number; centerNode?: string; levelSeparation?: number; } export interface Visualization { nodes: VisualizationNode[]; links: VisualizationLink[]; clusters?: VisualizationCluster[]; interactivity?: InteractivityOptions; filters?: FilterOptions; layout?: LayoutOptions; metadata?: Record<string, any>; } export interface VisualizationNode { id: string; label: string; type: ThoughtType; metrics: ThoughtMetrics; size?: number; color?: string; clusterId?: string; collapsed?: boolean; level?: number; icon?: string; tooltip?: string; hoverContent?: string; expandedContent?: string; position?: { x: number; y: number; }; highlighted?: boolean; selected?: boolean; metadata?: Record<string, any>; } export interface VisualizationLink { source: string; target: string; type: ConnectionType; strength: number; width?: number; color?: string; dashed?: boolean; bidirectional?: boolean; animated?: boolean; weight?: number; highlighted?: boolean; tooltip?: string; hidden?: boolean; } export interface MemoryItem { id: string; content: string; tags: string[]; timestamp: Date; relevanceScore?: number; metadata?: Record<string, any>; } export interface NextStepSuggestion { description: string; type: ThoughtType; confidence: number; reasoning: string; } export interface SmartThinkingParams { thought: string; thoughtType?: ThoughtType; connections?: Connection[]; requestSuggestions?: boolean; generateVisualization?: boolean; suggestTools?: boolean; sessionId?: string; userId?: string; visualizationType?: 'graph' | 'chronological' | 'thematic' | 'hierarchical' | 'force' | 'radial'; help?: boolean; requestVerification?: boolean; containsCalculations?: boolean; visualizationOptions?: { clusterBy?: 'type' | 'theme' | 'metric' | 'connectivity'; direction?: 'LR' | 'RL' | 'TB' | 'BT'; centerNode?: string; maxDepth?: number; filters?: FilterOptions; interactivity?: Partial<InteractivityOptions>; }; } export interface SmartThinkingResponse { thoughtId: string; thought: string; thoughtType: ThoughtType; qualityMetrics: ThoughtMetrics; suggestedTools?: SuggestedTool[]; visualization?: Visualization; relevantMemories?: MemoryItem[]; suggestedNextSteps?: NextStepSuggestion[]; verification?: VerificationResult; isVerified: boolean; verificationStatus?: VerificationDetailedStatus; certaintySummary: string; reliabilityScore: number; }