Deep Thinker

Advanced cognitive thinking MCP server with DAG-based thought graph, multiple reasoning strategies, metacognition, and self-evaluation.

deep-thinker

CI npm version npm downloads license GitHub stars

Advanced cognitive thinking MCP server with DAG-based thought graph, multiple reasoning strategies, metacognition, and self-evaluation.

A significant evolution beyond sequential-thinking MCP, providing structured deep reasoning with graph-based thought management.

Quick Start

npx deep-thinker
{
  "mcpServers": {
    "deep-thinker": {
      "command": "npx",
      "args": ["-y", "deep-thinker"]
    }
  }
}

Examples

ExampleStrategyUse Case
Architecture DecisionDialectic + ParallelMonolith vs microservices
Debugging IncidentAbductiveProduction 500 errors
Feature PrioritizationParallel + DialecticQ3 roadmap planning
Scientific HypothesisAnalogical + AbductiveLNP delivery for CRISPR
Breaking Dead EndsMetacognitive switchServerless cost analysis

Features

  • DAG-Based Thought Graph — Thoughts form a directed acyclic graph with branching, merging, and cross-edges (not just a linear chain)
  • 5 Reasoning Strategies — Sequential, Dialectic (thesis→antithesis→synthesis), Parallel, Analogical, Abductive (inference to best explanation)
  • Confidence Scoring — Multi-factor confidence evaluation with support/contradiction analysis, depth penalties, and knowledge integration boosts
  • Self-Critique — Automatic critique generation with severity levels and confidence adjustments
  • Metacognitive Engine — Detects stuck states, stagnation, declining confidence; suggests strategy switches and corrective actions
  • Knowledge Integration — Attach external knowledge to thoughts, detect gaps, validate consistency across sources
  • Thought Pruning — Dead-end detection, redundancy removal, deep unproductive branch elimination, path optimization

Installation

Global

npm install -g deep-thinker

npx (no install)

npx deep-thinker

MCP Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "deep-thinker": {
      "command": "npx",
      "args": ["-y", "deep-thinker"]
    }
  }
}

Or if installed globally:

{
  "mcpServers": {
    "deep-thinker": {
      "command": "deep-thinker"
    }
  }
}

Other MCP Clients

The server communicates over stdio. Point your MCP client to the deep-thinker command or node path/to/dist/index.js.

Tools

think

Add a thought to the cognitive graph using a reasoning strategy.

Parameters:

ParameterTypeRequiredDescription
contentstringYesThe thought content
typestringNoThought type: hypothesis, analysis, evidence, conclusion, question, assumption, insight, critique, synthesis, observation
strategystringNoStrategy: sequential, dialectic, parallel, analogical, abductive
confidencenumberNoInitial confidence 0-1 (default: 0.5)
parentIdstringNoParent node ID (default: last leaf)
branchstringNoBranch name for parallel exploration
tagsstring[]NoTags for categorization
edgeToobjectNoExplicit edge: { targetId, type }
dialecticobjectNoDialectic mode: { thesis, antithesis?, synthesis? }
parallelarrayNoParallel mode: [{ content, type, confidence }]
analogicalobjectNoAnalogical mode: { sourceDomain, mapping, projectedConclusion }
abductiveobjectNoAbductive mode: { observation, explanations[], bestExplanation? }
knowledgeobjectNoAttach knowledge: { source, content, relevance }

Strategy details:

  • Sequential — Linear chain: each thought derives from the previous
  • Dialectic — Thesis → Antithesis → Synthesis pattern to resolve contradictions
  • Parallel — Explore multiple independent branches simultaneously
  • Analogical — Map patterns from a known domain to the current problem
  • Abductive — Generate hypotheses and infer the best explanation

Edge types: derives_from, contradicts, supports, refines, challenges, synthesizes, parallels, abstracts, instantiates

evaluate

Evaluate the thinking process with confidence scoring, critique, and graph health analysis.

Parameters:

ParameterTypeRequiredDescription
nodeIdstringNoSpecific node to evaluate (default: entire graph)
critiquebooleanNoGenerate self-critique (default: true)
findGapsbooleanNoFind knowledge gaps (default: false)
validateKnowledgebooleanNoValidate knowledge consistency (default: false)

metacog

Metacognitive operations — monitor and control the thinking process.

Parameters:

ParameterTypeRequiredDescription
actionstringYesreport = full state, switch = change strategy, auto_update = let system analyze
strategystringNoNew strategy (for switch action)
reasonstringNoReason for switching (for switch action)

The metacognitive engine automatically:

  • Detects stagnation (confidence not improving)
  • Detects declining confidence trends
  • Detects excessive contradictions
  • Suggests strategy switches, pruning, backtracking, or concluding

graph

Query and visualize the thought graph.

Parameters:

ParameterTypeRequiredDescription
actionstringYesvisualize, stats, path, node, branches, best_path, leaves
nodeIdstringNoNode ID (for path, node actions)
targetIdstringNoTarget ID (for path action)

prune

Prune and optimize the thought graph.

Parameters:

ParameterTypeRequiredDescription
actionstringYesanalyze (report only), prune (execute), optimize_path, prune_node
nodeIdstringNoNode to prune (for prune_node)
reasonstringNoReason (for prune_node)

reset

Reset the thought graph and start a fresh session.

Parameters:

ParameterTypeRequiredDescription
problemstringNoNew problem statement

Usage Examples

Sequential Reasoning

think: "Should we use microservices?" → type: question, confidence: 0.9
think: "Monolith has deployment bottlenecks" → type: analysis, confidence: 0.7
think: "Team lacks DevOps capacity for microservices" → type: evidence, confidence: 0.8
evaluate: → overall confidence 0.73
metacog: auto_update → strategy: sequential, progress: normal

Dialectic Reasoning

think: {
  strategy: "dialectic",
  dialectic: {
    thesis: "Microservices improve scalability",
    antithesis: "But add operational complexity",
    synthesis: "Use modular monolith as middle ground"
  },
  confidence: 0.75
}

Parallel Exploration

think: {
  strategy: "parallel",
  parallel: [
    { content: "Team expertise in Docker/K8s", type: "evidence", confidence: 0.8 },
    { content: "Limited DevOps capacity", type: "evidence", confidence: 0.6 },
    { content: "Budget allows hiring", type: "evidence", confidence: 0.4 }
  ]
}

Abductive Reasoning

think: {
  strategy: "abductive",
  abductive: {
    observation: "The grass is wet",
    explanations: [
      { content: "It rained", plausibility: 0.8 },
      { content: "Sprinklers were on", plausibility: 0.6 }
    ],
    bestExplanation: "It rained"
  },
  confidence: 0.8
}

Metacognitive Guidance

metacog: { action: "auto_update" }
→ ⚠ Stuck: confidence has not improved for 3 steps
→ 💡 Action: [switch_strategy] Try parallel exploration
→   Suggested Strategy: parallel

metacog: { action: "switch", strategy: "parallel", reason: "Break through impasse" }
→ Strategy switched: sequential → parallel

Pruning

prune: { action: "analyze" }
→ Dead Ends: 2
  [thought_7] confidence=0.15: Bad idea...
  [thought_9] confidence=0.10: Another dead end...
→ Redundant Branch Groups: 1
  Keep [thought_5], prune [thought_6]: Redundant analysis...
→ Total prunable: 3 node(s)

prune: { action: "prune" }
→ Pruned 3 node(s) in 3 operations

Architecture

src/
├── index.ts          MCP server & tool handlers
└── core/
    ├── types.ts      Type definitions & constants
    ├── node.ts       ThoughtNode CRUD operations
    ├── graph.ts      DAG-based thought graph
    ├── strategies.ts 5 reasoning strategy implementations
    ├── scorer.ts     Confidence scoring & self-critique
    ├── metacog.ts    Metacognitive engine
    ├── knowledge.ts  Knowledge integration & validation
    └── pruner.ts     Dead-end/redundancy detection & pruning

Comparison with sequential-thinking

Featuresequential-thinkingdeep-thinker
Thought structureLinear chainDAG (branch/merge/cross-edges)
StrategiesSequential only5 strategies (sequential, dialectic, parallel, analogical, abductive)
ConfidenceBasic thought numberMulti-factor scoring with trend analysis
Self-critiqueNoneAutomatic with severity levels
MetacognitionNoneStuck detection, strategy suggestions, auto-switching
KnowledgeNoneExternal references, gap detection, consistency validation
PruningNoneDead-end, redundancy, path optimization
Graph queriesLinear reviewVisualization, best path, branch analysis, statistics

Development

git clone https://github.com/hubinoretros/deep-thinker.git
cd deep-thinker
npm install
npm run build
npm start

Testing

npm run build
node dist/test.js

118 tests covering all modules: Node, Graph, Strategies, Scorer, Metacog, Knowledge, Pruner, Integration, Edge Cases.

Documentation

Contributing

See CONTRIBUTING.md for guidelines. PRs welcome — especially new reasoning strategies and MCP tool ideas.

License

MIT

Related Servers

NotebookLM Web Importer

Import web pages and YouTube videos to NotebookLM with one click. Trusted by 200,000+ users.

Install Chrome Extension