返回市场
顺序思维回溯

顺序思维回溯

作者:recallnet14 星标更新:2025-04-09

项目介绍

顺序思维MCP服务器

一个MCP服务器实现,提供了一种工具,通过结构化的思考过程进行动态和反思的问题解决,并自动将顺序思维日志写入与每次思考会话相关的Recall中。

功能

顺序思维MCP提供了以下能力:

  • 逐步解决问题

    • 将复杂问题分解成可管理的步骤
    • 随着理解的深入,修订和细化思路
    • 分支到替代的推理路径
    • 动态调整总思考次数
  • 假设管理

    • 生成解决方案假设
    • 根据思考链验证假设
    • 在需要时提供纠正分析
  • Recall集成

    • 安全地将所有顺序思维会话存储在链上
    • 访问完整的思考历史
    • 检索特定的思考会话
    • 列出所有存储的会话

安全性 ⚠️

重要:私钥保护

此MCP服务器需要私钥来进行Recall操作。为了保护这些敏感信息:

  1. 永远不要分享您的私钥或.env文件内容
  2. 永远不要运行显示您的私钥的命令(如cat .env
  3. 未经批准,永远不要允许LLM直接执行shell命令
  4. 如果使用.env文件,请以受限权限存储:chmod 600 .env

多层保护

该服务器实施了几层安全措施来保护您的私钥:

1. 私钥隔离

  • 您的私钥仅在初始化时加载
  • 加载后,密钥立即从环境变量中移除
  • 实际密钥永远不会被记录或传输给LLM

2. 日志保护

  • 自动删除日志中的任何私钥模式
  • 过滤控制台输出,用[REDACTED]替换私钥
  • 在显示之前对对象进行清理,掩盖敏感字段

3. 访问预防

  • 安全处理环境变量
  • 严格验证所需环境变量
  • 清理控制台输出以防止泄露秘密

Recall集成

此MCP服务器包括与Recall的集成,允许您将顺序思维日志安全地存储在链上。每个查询的所有思考步骤都会自动保存到您的Recall桶中。

配置

要使用Recall集成,您需要提供以下环境变量:

  • RECALL_PRIVATE_KEY(必需):您的Recall私钥
  • RECALL_NETWORK(可选):连接的网络(测试网或主网,默认为测试网)
  • RECALL_BUCKET_ALIAS(可选):日志将存储的桶别名(默认为'sequential-thinking-logs')
  • RECALL_LOG_PREFIX(可选):存储在桶中的日志文件前缀(默认为'sequential-')

每个思考步骤单独存储其元数据,完成的思考会话也会被存储。这使您可以:

  • 审查完整的推理链
  • 分析思考过程
  • 保存有价值的解决问题的方法供未来参考
  • 构建推理模式的知识库

环境变量优先级

顺序思维MCP服务器使用以下环境变量优先级顺序:

  1. 直接从Cursor/Claude配置提供的环境变量
  2. 来自.env文件的环境变量(如果存在且#1不可用)
  3. 可选变量的默认值

设置

  1. 克隆仓库

  2. 安装依赖项:

    npm install
    
  3. 选择以下配置方法之一:

    方法1:使用Cursor/Claude配置中的环境变量(推荐)

    推荐的方法是直接在您的Cursor或Claude Desktop配置中提供环境变量。这种方法更安全,并消除了使用.env文件的需求。

    • 当通过配置提供时,服务器将自动使用这些环境变量。
    • 请参阅下面的“添加到Cursor”和“添加到Claude Desktop”部分以获取具体设置说明。

    方法2:使用.env文件(备用)

    如果您希望使用.env文件,或者直接运行服务器而没有Cursor/Claude,可以创建一个:

    1. 创建一个包含您的私钥的.env文件:

      RECALL_PRIVATE_KEY=your_private_key_here
      RECALL_NETWORK=testnet
      RECALL_BUCKET_ALIAS=sequential-thinking-logs
      RECALL_LOG_PREFIX=sequential-
      
    2. 保护您的.env文件:

      chmod 600 .env
      

    注意:私钥可以提供带有或不带"0x"前缀——两种格式都有效。

工具

服务器暴露了以下MCP工具:

工具名称描述参数
sequentialthinking处理逐步思考并存储在Recall中thought: 字符串, nextThoughtNeeded: 布尔值, thoughtNumber: 整数, totalThoughts: 整数,加上可选参数
recallstatus获取Recall集成的状态check: 布尔值
listsessions列出所有顺序思维会话includePortalLinks?: 布尔值
getsession获取特定的思考会话key: 字符串

sequentialthinking

促进详细的、逐步的思考过程用于问题解决和分析。

输入:

  • thought(字符串):当前思考步骤
  • nextThoughtNeeded(布尔值):是否需要另一个思考步骤
  • thoughtNumber(整数):当前思考编号
  • totalThoughts(整数):预计所需的总思考次数
  • isRevision(布尔值,可选):是否修订之前的思考
  • revisesThought(整数,可选):正在重新考虑的思考编号
  • branchFromThought(整数,可选):分支点思考编号
  • branchId(字符串,可选):分支标识符
  • needsMoreThoughts(布尔值,可选):是否需要更多思考

输出: 当提交最终思考步骤(nextThoughtNeeded = false)时,工具返回:

  • recallInfo 包含:
    • txHash:Recall网络上的交易哈希
    • success:存储是否成功
    • key:会话文件名
    • viewUrl:直接链接到Recall门户查看会话

recallstatus

获取Recall集成的状态。

输入:

  • check(布尔值):设置为true以检查状态

输出:

  • 关于Recall集成的信息,包括初始化状态、桶地址、桶别名和日志前缀

listsessions

列出存储在您的Recall桶中的所有顺序思维会话对象。

输入:

  • includePortalLinks(布尔值,可选):是否为每个会话包含门户链接

输出:

  • 所有存储的会话文件及其元数据和可选门户链接的列表

getsession

检索特定顺序思维会话文件的内容。

输入:

  • key(字符串):要检索的会话键/文件名

输出:

  • 请求的会话文件的完整内容,包括所有思考和元数据
  • 查看Recall门户中会话的门户链接

使用

顺序思维工具设计用于:

  • 将复杂问题分解成步骤
  • 设计和规划,留有修订空间
  • 可能需要纠正方向的分析
  • 范围最初可能不清楚的问题
  • 需要在多个步骤中维持上下文的任务
  • 需要过滤无关信息的情况

构建

npm run build
npm run start

开发模式

npm run dev

开发的重要注意事项

在开发MCP服务器时,使用console.error()而不是console.log()进行所有调试和日志记录。Claude Desktop应用程序通过stdout与服务器通信,因此任何console.log()语句都会干扰这种通信并导致JSON解析错误。

添加到Cursor

要将此MCP服务器添加到Cursor:

  1. 首先构建项目:npm run build
  2. 在Cursor中,转到设置 > MCP服务器
  3. 点击“添加服务器”
  4. 使用以下设置配置服务器:
    • 名称顺序思维MCP(或您喜欢的任何名称)
    • 类型命令
    • 命令node
    • 参数/path/to/sequential-thinking-recall/dist/index.js(替换为您实际路径)
    • 环境变量
      • RECALL_PRIVATE_KEY:您的私钥(带有或不带"0x"前缀)
      • RECALL_NETWORKtestnet(或mainnet如果需要)
      • RECALL_BUCKET_ALIASsequential-thinking-logs
      • RECALL_LOG_PREFIXsequential-
  5. 点击“保存”

在Cursor配置中使用环境变量

为了更高的安全性,您可以通过家目录中的.cursor/mcp.json文件配置Cursor:

{
  "mcpServers": {
    "sequential-thinking-mcp": {
      "command": "node",
      "args": [
        "/Users/yourusername/sequential-thinking-recall/dist/index.js"
      ],
      "env": {
        "RECALL_PRIVATE_KEY": "your-private-key-here",
        "RECALL_NETWORK": "testnet",
        "RECALL_BUCKET_ALIAS": "sequential-thinking-logs",
        "RECALL_LOG_PREFIX": "sequential-"
      }
    }
  }
}

这种方法消除了使用.env文件的需求。

添加到Claude Desktop

要将此MCP服务器添加到Claude Desktop:

  1. 首先构建项目:npm run build

  2. 查找您的Claude Desktop配置文件的位置:

    • 在macOS上:~/Library/Application Support/Claude/claude_desktop_config.json
    • 在Windows上:%APPDATA%\Claude\claude_desktop_config.json
    • 在Linux上:~/.config/Claude/claude_desktop_config.json
  3. 创建或编辑claude_desktop_config.json文件,内容如下:

    {
      "mcpServers": {
        "sequential-thinking-mcp": {
          "command": "node",
          "args": [
            "/path/to/sequential-thinking-recall/dist/index.js"
          ],
          "env": {
            "RECALL_PRIVATE_KEY": "your-private-key-here",
            "RECALL_NETWORK": "testnet",
            "RECALL_BUCKET_ALIAS": "sequential-thinking-logs",
            "RECALL_LOG_PREFIX": "sequential-"
          }
        }
      }
    }
    
  4. 替换/path/to/sequential-thinking-recall/dist/index.js为您编译的服务器文件的完整路径

    • 示例:/Users/username/sequential-thinking-recall/dist/index.js
  5. 对于RECALL_PRIVATE_KEY,您可以提供带有或不带"0x"前缀——两种格式都有效

  6. 保存配置文件并重启Claude Desktop

许可证

此MCP服务器根据MIT许可证授权。这意味着您可以自由使用、修改和分发软件,但需遵守MIT许可证的条款和条件。详情请参见项目仓库中的LICENSE文件。