Sequential Thinking Tools MCP 服务器
项目简介
本项目实现了一个基于 Model Context Protocol (MCP) 的服务器,旨在帮助大型语言模型 (LLM) 客户端进行更有效的工具使用和问题解决。它通过引导用户进行序列化思考,并在每个思考步骤中智能推荐合适的 MCP 工具,从而辅助 LLM 逐步分解和解决复杂问题。
主要功能点
- 动态和反思性思维引导: 通过序列化的思考步骤,帮助 LLM 动态地分析和解决问题。
- 灵活的思考过程: 支持思考过程的调整和演进,允许分支和回溯。
- 智能工具推荐: 在每个思考步骤,服务器会根据当前步骤的需求,智能推荐合适的 MCP 工具。
- 工具推荐置信度评分和理由: 为每个推荐工具提供置信度评分 (0-1) 和详细的推荐理由。
- 步骤跟踪和进度监控: 跟踪思考步骤,展示预期结果、已完成步骤和剩余步骤。
- 支持多种 MCP 工具: 可以与环境中已有的任何 MCP 工具协同工作。
安装步骤
- 克隆仓库: 首先,你需要克隆该 GitHub 仓库到本地:
git clone https://github.com/spences10/mcp-sequentialthinking-tools cd mcp-sequentialthinking-tools - 安装依赖: 使用 'pnpm' 包管理器安装项目依赖:
pnpm install - 构建项目: 构建项目以生成可执行文件:
pnpm build
服务器配置
要将此 MCP 服务器与 MCP 客户端(如 Cline 或 Claude 桌面版)配合使用,你需要配置客户端以启动该服务器。以下是针对不同客户端环境的配置示例。你只需要将以下 JSON 配置添加到你的 MCP 客户端配置文件中,并根据你的实际环境调整 'command' 和 'args' 字段。
Cline 配置示例:
{ "mcpServers": { "mcp-sequentialthinking-tools": { "command": "npx", "args": ["-y", "mcp-sequentialthinking-tools"] } } }
- 'server name': 'mcp-sequentialthinking-tools' (服务器名称,用于在客户端中标识和调用)
- 'command': 'npx' (用于执行 npm 包的命令)
- 'args': '["-y", "mcp-sequentialthinking-tools"]' (传递给 'npx' 的参数,'-y' 自动确认安装包,'mcp-sequentialthinking-tools' 是要执行的包名,即此 MCP 服务器)
Claude 桌面版 (WSL) 配置示例:
{ "mcpServers": { "mcp-sequentialthinking-tools": { "command": "wsl.exe", "args": [ "bash", "-c", "source ~/.nvm/nvm.sh && /home/username/.nvm/versions/node/v20.12.1/bin/npx mcp-sequentialthinking-tools" ] } } }
- 'server name': 'mcp-sequentialthinking-tools' (服务器名称)
- 'command': 'wsl.exe' (在 Windows Subsystem for Linux (WSL) 环境中执行命令)
- 'args': 包含一个 Bash 命令字符串的数组,用于在 WSL 中启动服务器。该命令首先加载 'nvm' 环境,然后使用 'npx' 执行 'mcp-sequentialthinking-tools'。你需要将 '/home/username/.nvm/versions/node/v20.12.1/bin/npx' 替换为你实际的 'npx' 路径。
注意: 请确保你的 MCP 客户端和服务器运行在可以互相通信的网络环境中。对于本地客户端和服务器,通常无需额外网络配置。
基本使用方法
-
启动服务器: 配置完成后,当 MCP 客户端尝试连接名为 'mcp-sequentialthinking-tools' 的服务器时,客户端会根据你提供的配置自动启动该服务器。
-
调用 'sequentialthinking_tools' 工具: 在 LLM 应用中,你可以像调用其他 MCP 工具一样调用 'sequentialthinking_tools' 工具。你需要提供以下参数:
- 'thought' (string, 必需): 当前的思考步骤描述。
- 'next_thought_needed' (boolean, 必需): 是否需要进行下一步思考。
- 'thought_number' (integer, 必需): 当前思考步骤的序号。
- 'total_thoughts' (integer, 必需): 预计的总思考步骤数。
- 其他可选参数,如 'is_revision', 'revises_thought', 'branch_from_thought', 'branch_id' 等,用于更精细地控制思考流程。
服务器会分析你的思考步骤,并返回包含工具推荐、置信度、理由、预期结果等信息的 JSON 响应。你可以根据服务器的推荐,选择合适的 MCP 工具执行,并继续进行下一步思考,直到问题解决。
示例请求 (JSON 格式):
{ "thought": "初步研究 Svelte 5 中 universal reactivity 的含义", "next_thought_needed": true, "thought_number": 1, "total_thoughts": 5 }
服务器会返回类似 README 中 Example Usage 部分的 JSON 响应,包含工具推荐。
通过与 'sequentialthinking_tools' 工具的持续交互,你可以引导 LLM 逐步进行问题分解和工具使用,最终达成解决复杂问题的目标。
信息
分类
AI与计算