Sequential Thinking MCP v2 服务器实现
使用说明(Markdown 格式)
-
项目简介
- 本仓库实现了一个本地的 MCP 服务器框架,用于向 LLM 客户端提供结构化的上下文信息和可执行工具。核心能力包括会话管理、工具执行、资源(内存、思路、分支、架构决策、已发现的软件包等)托管与渲染,以及基于 Markdown 的会话持久化存储,方便长期迭代与跨任务的知识积累。
-
主要功能点
- 会话管理:创建、加载、列出、分析和持久化会话;支持不同任务类型(常规、编码、内存/研究等)。
- 思想与分支:向会话中添加“思想”(thoughts),创建分支、合并分支,跟踪推理路径。
- 记忆与代码片段:存储“记忆”(memory),含置信度、标签、代码片段及语言信息,支持标签解析和检索。
- 架构决策与依赖:记录架构判断、选项、 rationale、后果及依赖包信息。
- 发现的包与导出:对已安装包进行分析与记录,支持导出会话及记忆为 Markdown/JSON。
- 内部存储与检索:内存银行以 Markdown 文件形式持久化,提供按标签、内容等条件的检索与高亮摘录。
- MCP API 入口与工具:通过 MCP 框架暴露多种工具(如 start_session、add_thought、store_memory、query_memories、record_decision、explore_packages、export_session、load_session、analyze_session 等),客户端通过 JSON-RPC 调用实现交互。
- 传输与协议:服务器端通过 MCP 约定的 JSON-RPC 进行请求/响应通信,当前实现基于标准输入/输出(stdio)传输,便于与对话代理、脚本或容器化环境对接。
-
安装步骤
- 确保已安装 Python 3.x 环境。
- 克隆仓库到本地(或直接下载源码)。
- 安装依赖(如有说明的依赖项),确保 python 环境可执行。
- 启动服务器:在项目根目录执行 python main.py,即可启动 MCP 服务器并暴露工具接口。
- 运行后,LLM 客户端即可通过 MCP 客户端与服务器进行 JSON-RPC 调用,完成资源读取、工具调用和提示模板渲染等能力。
-
服务器配置(MCP 客户端需要的最小连接信息,JSON 格式,含 server name、command、args 等)
- server name: sequential-thinking-mcp-v2
- command: python
- args: ["main.py"] 说明:
- 该配置用于 MCP 客户端知道如何启动并连接到服务器进程。服务器端会通过 stdio 通道接收请求并返回响应,确保客户端在连接后能够调用注册的工具并获取相应数据。若需要更复杂的部署(如容器化、分布式部署、日志轮转等),可在外部进程管理器中对启动命令进行扩展配置。
-
基本使用方法
- 启动服务器后,客户端通过 MCP 提供的 JSON-RPC 接口发送请求,例如调用 start_session、add_thought、store_memory、query_memories 等工具。
- 使用者无需了解内部实现细节,只需按 MCP 工具描述进行参数拼装,服务器将返回符合 MCP 规范的 JSON-RPC 响应或错误信息。
- 常见工作流示例(无需代码片段):
- 启动一个新会话,提供问题和成功标准等信息。
- 在会话中添加思想、创建分支、合并分支,记录关键决策。
- 存储与检索记忆、代码片段及标签,用于长期记忆与检索。
- 按需求导出会话或记忆为 Markdown/JSON 以用于文档化或分析。
- 兼容性与扩展:设计目标是实现 MCP 的核心能力,便于未来扩展为图形化界面、云端/本地混合内存架构等。
-
备注
- 本实现包含完整的服务端逻辑、数据模型、持久化存储、错误处理与集成测试,能够在本地环境中作为可运行的 MCP 服务器进行开发与测试。