Branch Thinking
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Branch Thinkingshow me all branches related to project planning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🚦 Branch-Thinking MCP Tool
What’s New (2025-04):
Advanced visualization: clustering (k-means/degree), centrality overlays, edge bundling, and agentic overlays for tasks and priorities
Agentic cache & prefetch: LRU+TTL caches for embeddings, summaries, analytics, and proactive agent cache warming
Enhanced analytics: real-time, multi-branch, and focusNode support; agent-optimized metadata
Upgraded documentation and onboarding for agents and users
Features
🌳 Branch Management: Create, focus, and navigate multiple lines of thought
🔗 Cross-References: Link related thoughts across branches (typed, scored)
💡 AI Insights: Automatic insight and summary generation
🧠 Semantic Search: Find related thoughts using embeddings
📊 Advanced Visualization:
Node clustering (k-means/degree)
Centrality overlays (closeness, betweenness)
Edge bundling
Task overlays (status, priority, next-action)
Agentic overlays and metadata for all nodes/edges
FocusNode and multi-branch visualization
⚡ Agentic Cache & Prefetch:
LRU+TTL caches for embeddings, summaries, analytics
Proactive cache warming for agent workflows
🗂️ Persistent Storage: Queryable, extensible, and never lose a thought
🔄 Real-Time & Multi-Branch: Visualize and analyze multiple branches and nodes in real-time
🛠️ Production-Grade: Robust error handling, performance optimizations, and agent/human-friendly APIs
Related MCP server: Thought Space - MCP Advanced Branch-Thinking Tool
🛠️ Technology Stack
Node.js (18+)
TypeScript (4.x)
@dagrejs/graphlib: Graph structure, algorithms, and analytics
ml-kmeans: Clustering for visualization
lru-cache: LRU+TTL caching for embeddings, summaries, analytics
@xenova/transformers: Embedding and summarization pipelines
@modelcontextprotocol/sdk: MCP protocol and agent integration
chalk: CLI output styling
Mermaid: Gantt/roadmap visualization
pnpm: Fast dependency management
Roadmap (Gantt)
gantt
title Branch-Thinking MCP Roadmap (2025)
dateFormat YYYY-MM-DD
section Q2 2025
Advanced Visualization/Analytics :done, vis1, 2025-04-01,2025-04-20
Agentic Cache & Prefetch :done, cache1, 2025-04-10,2025-04-22
Enhanced Agentic Docs :done, doc1, 2025-04-15,2025-04-25
Real-time Collaboration :active, collab1, 2025-04-20,2025-06-01
Web Visualization Dashboard :active, webviz1, 2025-04-25,2025-06-15
section Q3 2025
Plugin System :planned, plugin1, 2025-06-15,2025-07-15
Mobile/Tablet UI :planned, mobile1, 2025-07-01,2025-08-01
AI Branch Merging :planned, merge1, 2025-07-15,2025-08-15
Knowledge Base Sync :planned, sync1, 2025-08-01,2025-09-01Table of Contents
Why Branch-Thinking?
Agentic by Design: Built for both human and AI workflows—every command is agent-friendly.
True Branching: Organize, cross-link, and reason over ideas, code, and tasks in parallel.
AI-Native: Semantic search, auto-summarization, and insight generation out-of-the-box.
Persistent & Visual: Never lose a thought—everything is queryable, visualizable, and extensible.
Summary
Branch-Thinking MCP Tool is an advanced agentic platform for managing, visualizing, and reasoning over branching thoughts, tasks, code, and knowledge. It empowers both AI agents and humans to organize complex projects, cross-link ideas, and automate insight generation using a powerful branch-based paradigm. With semantic search, visualization, and persistent task/code management, it is designed for next-generation collaborative and autonomous workflows.
Branch-Thinking MCP Tool is an advanced agentic platform for managing, visualizing, and reasoning over branching thoughts, tasks, code, and knowledge. It empowers both AI agents and humans to organize complex projects, cross-link ideas, and automate insight generation using a powerful branch-based paradigm. With semantic search, visualization, and persistent task/code management, it is designed for next-generation collaborative and autonomous workflows.
Architecture & Flow
flowchart TD
User([User/Agent 🤖])
CLI([CLI/API])
BM[BranchManager 🧠]
EmbCache[[Embedding/Summary Cache]]
Storage[(Persistent Storage 💾)]
Viz([Visualization/Analytics])
Tasks([Task Extraction])
Snippets([Code Snippet Storage])
User-->|Commands/Queries|CLI
CLI-->|Manage/Query|BM
BM-->|Cache|EmbCache
BM-->|Save/Load|Storage
BM-->|Visualize|Viz
BM-->|Tasks|Tasks
BM-->|Snippets|Snippets
BM-->|Results|CLI
CLI-->|Output|UserQuick Start
Get up and running in seconds:
pnpm install # Recommended for speed (or npm install)
pnpm build
node dist/index.js --help # See available commandsGetting Started
1. Clone & Install
git clone https://github.com/your-org/branch-thinking-mcp.git
cd branch-thinking-mcp
pnpm install # Or npm install
pnpm build # Or npm run build2. Configure (Optional)
For Claude Desktop integration, add to your claude_desktop_config.json:
"branch-thinking": {
"command": "node",
"args": [
"/your-custom-mcp-dir-here/branch-thinking/dist/index.js"
]
}3. Run
node dist/index.jsReal-World Usage Recipes
1. Knowledge Capture & Linking
# Batch capture meeting notes
add-thought dev "Discussed semantic search improvements" note
add-thought dev "Agreed to refactor API" decision
# Link related thoughts
link-thoughts t1 t2 supports "API refactor supports search improvements"2. Agentic Task Extraction
# Extract and manage tasks from a research branch
extract-tasks research
list-tasks research open
update-task-status task-1 in_progress3. Visualization for Insight
# Generate and interpret a knowledge graph
visualize dev
# Review AI-generated summary
summarize-branch dev🧑💻 Live Example: Agentic Workflow
# 1. Create a new branch for your project or idea
create-branch "AI Research"
# 2. Add thoughts and observations
add-thought [branchId] "Explore semantic search for agent workflows" analysis
add-thought [branchId] "Test cross-linking and summarization" observation
# 3. Link related thoughts
link-thoughts [thoughtId1] [thoughtId2] supports "Thought 2 validates Thought 1"
# 4. See your knowledge graph
visualize [branchId]
# 5. Extract tasks and get AI review
extract-tasks [branchId]
review-branch [branchId]Replace
[branchId]and[thoughtIdX]with actual IDs fromlistandhistory.
Command Reference
Branch Management
Command | Description |
| Show all branches with status |
| Switch focus to a branch |
| Show thought history |
| AI summary of branch |
| AI review of branch |
| Visual graph of connections |
Thought & Insight Management
Command | Description |
| Get AI-generated insights |
| Show cross-references |
| List hub thoughts |
| Find similar thoughts |
| Link two thoughts |
| Save a code snippet |
| Search code snippets |
| Document a thought |
Task Management
Command | Description |
| Extract actionable items |
| List/filter tasks |
| Update a task’s status |
| Summarize tasks |
AI & Knowledge
Command | Description |
| AI answer from knowledge base |
Best Practices
Always start with
create-branchto ensure clean context.Use
listandfocusto navigate between projects or lines of thought.Leverage
summarize-branchandinsightsafter adding several thoughts to get AI-generated context.Use
link-thoughtsto explicitly connect ideas, tasks, or code for richer semantic graphs.After code changes, always run
pnpm lintandpnpm buildto catch errors early.Decompose complex goals into sequences of thought/task/insight commands.
Iterate and adapt: Use feedback from summaries, reviews, and visualizations to refine next actions.
Explicitly specify parameters (branchId, status, assignee, etc.) for precise results.
Use cross-references and multi-hop links to foster creativity and bridge ideas.
Prompt agents (Claude, GPT-4, etc.) to "think step by step" or "use chain of thought" for best results.
Security
All persistent data is stored locally (default: project directory or
MCP_STORAGE_PATH)No external API calls unless configured
Agents/users are responsible for privacy of stored thoughts and tasks
To report security issues, please open an issue or email the maintainer.
Troubleshooting and FAQ
Q: The tool isn't responding! A: Check the MCP server logs and ensure configuration is correct.
Q: How do I reset storage? A: Delete or move the persistent storage directory (see config).
Q: How do I add a new command?
A: Extend handleCommand in src/index.ts and document it in the README.
Accessibility and Internationalization
All badges/images have descriptive alt text.
English is the default language; contributions for translations are welcome.
Please open a PR or issue if you want to help localize this tool.
Contributing
Contributions, issues, and feature requests are welcome! Please open a PR or issue on GitHub.
Fork this repo
Create a new branch (
git checkout -b feature/your-feature)Commit your changes
Push to the branch
Open a Pull Request
References and Related Projects
Credits
Concept & Testing: @ssdeanx
Core Code Generation: Claude, GPT-4, and Cascade
Implementation, Fixes, and Documentation: @ssdeanx
License
Available Tools
1 toolbranch-thinkingC
Branch-Thinking Tool
Purpose: Use branching commands to create, navigate, and analyze thought branches and tasks.
Usage: Provide a JSON payload with 'type' and relevant parameters in 'args' object. The tool returns an array of items in the format { type: string, text: string }.
Supported Commands:
create-branch: { type: 'create-branch', branchId }
focus: { type: 'focus', branchId }
add-thought: { type: 'add-thought', branchId, content }
semantic-search: { type: 'semantic-search', query, topN? }
extract-tasks: { type: 'extract-tasks', branchId? }
visualize: { type: 'visualize', branchId?, options? }
list-branches: { type: 'list-branches' }
history: { type: 'history', branchId }
insights: { type: 'insights', branchId }
crossrefs: { type: 'crossrefs', branchId }
hub-thoughts: { type: 'hub-thoughts', branchId }
link-thoughts: { type: 'link-thoughts', fromThoughtId, toThoughtId, linkType, reason? }
add-snippet: { type: 'add-snippet', content, tags, author? }
snippet-search: { type: 'snippet-search', query, topN? }
summarize-branch: { type: 'summarize-branch', branchId? }
doc-thought: { type: 'doc-thought', thoughtId }
review-branch: { type: 'review-branch', branchId? }
ask: { type: 'ask', question }
summarize-tasks: { type: 'summarize-tasks', branchId? }
advance-task: { type: 'advance-task', taskId, status }
assign-task: { type: 'assign-task', taskId, assignee }
reset-session: { type: 'reset-session' }
clear-cache: { type: 'clear-cache' }
get-cache-stats: { type: 'get-cache-stats' }
Visualization Options:
clustering: { type: 'clustering', algorithm? }
centrality: { type: 'centrality', metric? }
overlays: { type: 'overlays', features? }
analytics: { type: 'analytics', metrics? }
Example Calls and Expected Responses:
// Add a thought
{ "name": "branch-thinking", "args": { "type": "add-thought", "branchId": "research", "content": "Define MCP best practices" } }
// →
[{"type":"text","text":"Thought added to branch research."}]// Get insights
{ "name": "branch-thinking", "args": { "type": "insights", "branchId": "research" } }
// →
[{"type":"text","text":"Insights for branch research: ['Best practices cluster around workflow safety and semantic search.', 'Cross-references indicate high reuse of planning patterns.']"}]// Get cross-references
{ "name": "branch-thinking", "args": { "type": "crossrefs", "branchId": "research" } }
// →
[{"type":"text","text":"Cross-references for branch research: [{ from: 't1', to: 't3', type: 'supports', reason: 't1 evidence for t3' }, { from: 't2', to: 't4', type: 'related' }]"}]// Extract tasks
{ "name": "branch-thinking", "args": { "type": "extract-tasks", "branchId": "research" } }
// →
[{"type":"text","text":"Tasks extracted: [{ id: 'task-123', content: 'Document MCP safety rules', status: 'open' }]"}]// Summarize tasks
{ "name": "branch-thinking", "args": { "type": "summarize-tasks", "branchId": "research" } }
// →
[{"type":"text","text":"Task summary: 1 open, 2 in progress, 0 closed."}]// Advance a task
{ "name": "branch-thinking", "args": { "type": "advance-task", "taskId": "task-123", "status": "in_progress" } }
// →
[{"type":"text","text":"Task task-123 status updated to in_progress."}]// Assign a task
{ "name": "branch-thinking", "args": { "type": "assign-task", "taskId": "task-123", "assignee": "alice" } }
// →
[{"type":"text","text":"Task task-123 assigned to alice."}]// Semantic search
{ "name": "branch-thinking", "args": { "type": "semantic-search", "query": "workflow planning", "topN": 3 } }
// →
[{"type":"text","text":"Top 3 semantic matches for 'workflow planning' returned."}]// Link thoughts
{ "name": "branch-thinking", "args": { "type": "link-thoughts", "fromThoughtId": "t1", "toThoughtId": "t2", "linkType": "supports" } }
// →
[{"type":"text","text":"Linked thought t1 to t2 as 'supports'."}]// Summarize branch
{ "name": "branch-thinking", "args": { "type": "summarize-branch", "branchId": "research" } }
// →
[{"type":"text","text":"Summary for branch research: ..."}]// Review branch
{ "name": "branch-thinking", "args": { "type": "review-branch", "branchId": "research" } }
// →
[{"type":"text","text":"Branch research reviewed. 2 suggestions found."}]| Name | Required | Description | Default |
|---|---|---|---|
| content | No | Thought content (string) or batch of thoughts (array of objects). | |
| branchId | No | Branch ID to associate with the thought(s). If omitted, a new branch may be created or the active branch used. | |
| parentBranchId | No | Optional: ID of the parent branch for hierarchical organization. | |
| type | No | Thought type: e.g., 'analysis', 'hypothesis', 'observation', 'task', etc. Used for filtering and scoring. | |
| confidence | No | Optional: Confidence score (0-1) for the thought, for ranking or filtering. | |
| keyPoints | No | Optional: Key points or highlights extracted from the thought. | |
| relatedInsights | No | Optional: IDs of related insights, for semantic linking. | |
| crossRefs | No | Optional: Array of cross-references to other branches, with type, reason, and strength. | |
| command | No | Optional: Navigation or workflow command. Used for agentic/AI interactions. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While it lists commands and shows example responses, it lacks critical behavioral details: no information about permissions needed, whether operations are destructive, rate limits, error handling, or persistence behavior. The examples show return formats but don't explain system behavior comprehensively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Purpose, Usage, Supported Commands, Visualization Options, Examples). However, it's overly verbose with extensive example calls that could be condensed. The front-loaded purpose is clear, but the length could be optimized for better conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (9 parameters, nested objects, no output schema, no annotations), the description is incomplete. While it documents commands and shows examples, it lacks crucial context about system behavior, error conditions, authentication requirements, and operational constraints. For such a sophisticated tool with multiple command types, more comprehensive documentation is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing good documentation of all 9 parameters. The description adds some value by listing specific command types and their parameters in the 'Supported Commands' section, but this largely duplicates what's in the schema's command object. It doesn't provide additional semantic context beyond what the schema already documents well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'to create, navigate, and analyze thought branches and tasks' with specific verbs and resources. However, since there are no sibling tools mentioned, it cannot demonstrate differentiation from alternatives, preventing a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides basic usage instructions ('Provide a JSON payload with type and args') but offers no guidance on when to use specific commands versus alternatives, no context about prerequisites, and no exclusions. It lists commands without explaining their appropriate contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The single tool 'branch-thinking' has no other tools to be confused with, so disambiguation is perfect. All functionality is contained within one tool, eliminating any possibility of misselection between multiple tools.
With only one tool named 'branch-thinking', naming consistency is inherently perfect. There are no other tool names to compare against, so no inconsistency can exist in the tool set.
The server has only one tool despite offering extensive functionality (over 20 commands). This is a significant mismatch as the domain suggests a need for multiple specialized tools (e.g., separate tools for branch management, task operations, search, etc.). A single tool forces all operations through one interface, which is inappropriate for the apparent scope.
The tool provides comprehensive coverage for thought branching and task management, including creation, navigation, analysis, visualization, task extraction, assignment, and various utility functions. No obvious gaps exist; it supports full lifecycle operations for branches, thoughts, and tasks within its domain.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Turn outlines and hierarchical notes into interactive mind maps through a hosted remote MCP server.
MCP server for building and testing AI agents with multi-model experimentation and insights.
An MCP memory server. One memory your agents share — across models, devices and apps.
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server for navigating thought processes using branches, supporting thought cross-references and priority tracking to enhance insight generation and structured idea exploration.143MIT
- AlicenseCqualityDmaintenanceAn MCP tool enabling structured thinking and analysis across multiple AI platforms through branch management, semantic analysis, and cognitive enhancement.121MIT
- AlicenseNot gradedqualityDmaintenanceA powerful MCP server that enhances LLMs with advanced sequential thinking capabilities, supporting 19 thinking modes for structured reasoning and complex cognitive tasks.17MIT
- AlicenseAqualityCmaintenanceAn MCP server for capturing and recalling ideas, designed for both agents and humans. It provides tools for durable ideas, checkpoints, search, and deduplication.13MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ssdeanx/branch-thinking-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server