项目简介
这是一个基于 Model Context Protocol (MCP) 构建的应用后端,核心功能是向支持MCP的大型语言模型 (LLM) 客户端(如 Claude Desktop)提供一个高级蒙特卡洛树搜索 (MCTS) 引擎,用于执行深度、探索性的AI辅助分析和推理任务。它允许LLM通过调用特定的工具来利用MCTS的能力,从而生成更具洞察力和多角度的分析结果。
主要功能点
- 高级MCTS分析: 集成了贝叶斯方法和蒙特卡洛树搜索算法,对文本或问题进行系统性探索和分析。
- 多轮迭代: 支持MCTS进行多次迭代,在每一步探索不同分析路径。
- 分析状态记忆: 在同一聊天会话中记住关键分析结果、无效尝试方向和偏好,支持持续性对话。
- 哲学方法分类: 对生成的分析思路进行分类,有助于探索不同视角的分析。
- 可配置参数: MCTS的参数(如迭代次数、探索权重等)可以通过工具进行调整。
- 暴露为工具: 将MCTS的核心操作(初始化、运行、生成总结、获取/更新配置等)封装为MCP工具,供LLM调用。
- 会话持久化: 支持将MCTS分析状态(最佳结果、学习到的偏好、无效标记等)保存到本地数据库,以便下次会话继续。
安装步骤
本项目推荐使用 UV (Astral UV) 作为包管理器,它通常比 pip 更快。
- 确保您的系统已安装 Python 3.10 或更高版本。
- 克隆仓库到本地。
- 进入仓库目录。
- 运行 setup 脚本(推荐方式):
这个脚本会自动安装 UV (如果未安装),创建并激活一个虚拟环境,然后使用 UV 安装所有依赖。./setup.sh - 或者,手动安装 UV 和依赖:
# 安装 UV (如果未安装) curl -fsSL https://astral.sh/uv/install.sh | bash # 创建并激活虚拟环境 uv venv .venv source .venv/bin/activate # 安装依赖 uv pip install -r requirements.txt
服务器配置(为MCP客户端准备)
MCP 服务器通过启动一个进程并使用标准输入/输出 (Stdio) 与客户端通信。您需要在您的MCP客户端(例如 Claude Desktop)中配置如何启动这个服务器进程。配置通常是一个 JSON 对象,包含服务器的名称、启动命令和参数。
以下是为 Claude Desktop 客户端准备的配置示例结构,您需要根据您的实际安装路径进行调整:
{ "mcpServers": { "MCTSServer": { "command": "uv", "args": [ "run", "--directory", "/path/to/your/mcts-mcp-server/src/mcts_mcp_server", // 替换为你的项目src/mcts_mcp_server目录的绝对路径 "server.py" ], "env": { "PYTHONPATH": "/path/to/your/mcts-mcp-server" // 替换为你的项目根目录的绝对路径 } } } }
请将以上 JSON 结构添加到您的 Claude Desktop 配置文件 ('~/.claude/claude_desktop_config.json') 中 'mcpServers' 部分。务必更新 '"command"'、'"args"' 中的目录路径以及 '"env"' 中的 PYTHONPATH,使其指向您的项目安装位置。保存配置文件后,重启您的 Claude Desktop 客户端。
'"command"' 指定用于启动服务器的命令,这里使用 'uv run' 来在虚拟环境中执行脚本。 '"args"' 提供了传递给 '"command"' 的参数,包括指定服务器脚本的路径。 '"env"' 设置了环境变量,确保 Python 解释器能找到项目的模块。
基本使用方法
配置完成后,当您在支持MCP的LLM客户端(如已集成此服务器的 Claude Desktop)中进行聊天时,可以直接向LLM提出需要深度分析的问题或主题。
例如,您可以尝试以下提示:
- "Analyze the implications of artificial intelligence on human creativity" (分析人工智能对人类创造力的影响)
- "Continue exploring the ethical dimensions of this topic" (继续探索这个主题的伦理维度)
- "What was the best analysis you found in the last run?" (上次运行找到的最佳分析是什么?)
- "Show me the current MCTS configuration" (显示当前的MCTS配置)
LLM 客户端会识别这些请求,并自动调用 MCP 服务器提供的相应工具(如 'initialize_mcts', 'run_mcts', 'generate_synthesis' 等)来执行 MCTS 分析,并将结果返回给您。整个过程对用户是透明的,您只需要像平时一样与LLM对话即可。
信息
分类
AI与计算