Branch Thinking MCP 服务器使用说明
项目简介
Branch Thinking 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在帮助用户在使用大型语言模型(LLM)时,更好地组织和管理复杂的思考过程。它通过创建和管理多个思考分支,支持在不同分支之间建立联系和交叉引用,并能从关键点中生成洞察,从而辅助用户进行更深入、更结构化的思考。
主要功能点
- 分支管理:创建、激活、列出和切换不同的思考分支,允许用户并行探索多个想法或解决方案。
- 交叉引用:支持在不同思考分支之间创建关联,明确分支之间的关系类型(如互补、矛盾、构建于其上等),增强思考的连贯性和深度。
- 洞察生成:能够从用户标记的关键点中自动生成洞察,帮助用户提炼思考成果,发现潜在的模式和联系。
- 优先级跟踪:根据分支的置信度和与其他分支的连接,跟踪和调整思考分支的优先级,辅助用户集中精力于更有价值的分支。
- 历史记录:查看每个思考分支的完整历史记录,回顾思考过程,方便追溯和总结。
安装步骤
- 下载代码:从 GitHub 仓库 https://github.com/m-siles/branch-thinking 下载或克隆代码到本地。
- 安装依赖:在项目根目录下打开终端,运行 'npm install' 安装项目依赖。
- 构建项目:运行 'npm run build' 构建项目,生成可执行的 JavaScript 文件。
服务器配置
要将 Branch Thinking 服务器配置为 MCP 工具,您需要在 MCP 客户端(例如 Claude 桌面应用)的配置文件中添加以下配置信息。以下以 'claude_desktop_config.json' 为例,展示如何配置:
"branch-thinking": { "command": "node", "args": [ "/your-custom-mcp-dir-here/branch-thinking/dist/index.js" ] }
配置参数说明:
- '"branch-thinking"': 工具的名称,在客户端配置文件中作为工具的标识符。可以自定义,但需要与后续调用工具时使用的名称保持一致。
- '"command": "node"': 指定启动服务器的命令为 'node',表示使用 Node.js 运行时环境来执行 JavaScript 代码。
- '"args"': 启动命令的参数数组。
- '"/your-custom-mcp-dir-here/branch-thinking/dist/index.js"': 指向 'index.js' 文件的路径。请务必将 '/your-custom-mcp-dir-here' 替换为您实际存放 'branch-thinking' 项目的路径。这个路径是服务器程序的入口点。
请注意: 您需要将上述配置添加到您的 MCP 客户端的工具配置部分。具体的配置文件位置和格式可能因客户端而异,请参考您使用的 MCP 客户端的文档。
基本使用方法
Branch Thinking 服务器作为一个 MCP 工具,需要通过 MCP 客户端(如 Claude)进行调用。以下是一些基本的使用场景和方法:
-
触发工具: 在与 LLM 对话时,可以通过自然语言指令来触发 Branch Thinking 工具。例如,您可以指示 LLM 使用 "branch-thinking" 工具来进行思考。根据仓库 'README.md' 的提示,可以尝试使用以下提示语来更明确地引导 Claude 使用该工具:
"If I ask you to 'think step by step,' 'think before you respond,' or 'use chain of thought,' that means use the branch-thinking tool. Don't hesitate to use the branch-thinking tool on your own if you think your response would benefit from multiple steps."
(如果你要求我“逐步思考”、“在回应前思考”或“使用链式思考”,那意味着使用 branch-thinking 工具。如果你认为你的回答会从多个步骤中受益,请不要犹豫,自行使用 branch-thinking 工具。)
-
使用命令: Branch Thinking 工具提供了一些命令,可以通过特定的输入结构来调用。根据 'index.ts' 和 'BRANCHING_THOUGHT_TOOL' 的定义,您可以向工具发送包含 'command' 字段的 JSON 对象来执行命令。以下是可用的命令及其用法:
-
'list': 列出所有思考分支及其状态。
{ "command": { "type": "list" } }工具会返回当前存在的所有分支的列表,以及它们的状态和最近的想法摘要。
-
'focus [branchId]': 切换到指定的思考分支。
{ "command": { "type": "focus", "branchId": "branch-123" // 替换为您要切换到的分支ID } }工具会将指定分支设置为当前活跃分支,后续的想法将默认添加到该分支。
-
'history [branchId?]': 查看指定分支或当前活跃分支的历史记录。
{ "command": { "type": "history", "branchId": "branch-123" // 可选,指定要查看历史记录的分支ID,不指定则查看当前活跃分支 } }工具会返回指定分支或当前活跃分支的完整思考历史,包括时间戳、内容、类型、关键点和洞察等信息。
-
-
添加想法: 要向 Branch Thinking 工具添加新的想法,您可以发送包含 'content' 和 'type' 字段的 JSON 对象。还可以选择性地指定 'branchId'、'parentBranchId'、'confidence'、'keyPoints'、'relatedInsights' 和 'crossRefs' 等字段,以更精细地控制想法的组织和关联。例如:
{ "content": "这是一个关于主要论点的初步想法。", "type": "hypothesis", "branchId": "branch-123", "keyPoints": ["初步想法", "主要论点"] }工具会将新的想法添加到指定分支(或当前活跃分支),并根据输入参数生成洞察和交叉引用。
重要提示: 与 MCP 服务器的交互通常由 LLM 客户端在后台自动处理。您可能不需要直接手动构建 JSON 请求,而是通过与 LLM 的自然语言对话,间接地触发工具的功能。理解工具提供的命令和输入结构有助于您更好地指导 LLM 使用该工具。
总结
Branch Thinking 服务器通过提供分支思考、交叉引用和洞察生成等功能,增强了 LLM 在复杂思考和知识管理方面的能力。通过合理配置和使用,可以帮助用户更有效地利用 LLM 进行深入分析、问题解决和内容创作。
信息
分类
生产力应用