这是一个模型上下文协议(MCP)服务器,它暴露了一个高级贝叶斯蒙特卡洛树搜索(MCTS)引擎,用于AI辅助分析和推理。
此MCP服务器使Claude能够使用蒙特卡洛树搜索(MCTS)算法对主题、问题或文本输入进行深入探索性分析。MCTS算法采用贝叶斯方法系统地探索不同的角度和解释,通过多次迭代产生有见地的分析。
MCTS MCP服务器现在包括跨平台设置脚本,适用于Windows、macOS和Linux。
选项1:跨平台Python设置(推荐)
# 克隆仓库
git clone https://github.com/angrysky56/mcts-mcp-server.git
cd mcts-mcp-server
# 运行设置脚本
python setup.py
选项2:特定平台脚本
Linux/macOS:
chmod +x setup.sh
./setup.sh
Windows:
setup_windows.bat
设置脚本自动执行以下操作:
.env文件设置完成后,验证一切是否正常工作:
python verify_installation.py
这将运行全面检查并告知您是否需要修复任何问题。
编辑设置期间创建的.env文件:
# 添加您的API密钥(删除引号并添加真实密钥)
OPENAI_API_KEY=sk-your-openai-key-here
ANTHROPIC_API_KEY=sk-ant-your-anthropic-key-here
GEMINI_API_KEY=your-gemini-api-key-here
# 设置默认提供商和模型(可选)
DEFAULT_LLM_PROVIDER=gemini
DEFAULT_MODEL_NAME=gemini-2.0-flash
获取API密钥:
设置创建了claude_desktop_config.json。将其内容添加到您的Claude Desktop配置中:
Linux/macOS:
# 配置位置
~/.config/claude/claude_desktop_config.json
Windows:
# 配置位置
%APPDATA%\Claude\claude_desktop_config.json
示例配置结构:
{
"mcpServers": {
"mcts-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/mcts-mcp-server/src",
"run",
"mcts-mcp-server"
],
"env": {
"UV_PROJECT_ENVIRONMENT": "/path/to/mcts-mcp-server"
}
}
}
}
重要提示: 更新路径以匹配您的安装目录。
添加配置后,重启Claude Desktop以加载MCTS服务器。
该服务器向您的LLM暴露了许多工具,详细信息如下,以复制粘贴格式提供给您的系统提示。
当您要求Claude对某个主题或问题进行深度分析时,它将自动利用这些工具,使用MCTS算法和分析工具来探索不同角度。

MCTS MCP服务器使用本地推理方法而不是尝试直接调用LLM。这与MCP协议兼容,该协议旨在让AI助手(如Claude)调用工具,而不是让工具自己调用AI模型。
当Claude请求服务器进行分析时,服务器:
如果您偏好手动设置或自动设置失败:
Linux/macOS:
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows(PowerShell):
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
# 克隆仓库
git clone https://github.com/angrysky56/mcts-mcp-server.git
cd mcts-mcp-server
# 创建虚拟环境
uv venv .venv
# 激活虚拟环境
# Linux/macOS:
source .venv/bin/activate
# Windows:
.venv\Scripts\activate
# 安装依赖项
uv pip install .
uv pip install .[dev] # 可选开发依赖项
# 特别安装Gemini包(如果不在pyproject.toml中)
uv pip install google-genai>=1.20.0
# 复制环境文件
cp .env.example .env
# 编辑.env文件,添加您的API密钥
nano .env # 或使用您喜欢的编辑器
# 创建状态目录
mkdir -p ~/.mcts_mcp_server
1. Python版本错误
解决方案:从python.org安装Python 3.10+
2. 安装后未找到UV
# 手动将UV添加到PATH
export PATH="$HOME/.cargo/bin:$PATH"
# 或在Windows上:将%USERPROFILE%\.cargo\bin添加到PATH
3. Google Gemini导入错误
# 手动安装Gemini包
uv pip install google-genai
4. 权限被拒绝(Linux/macOS)
# 将脚本设为可执行
chmod +x setup.sh setup_unix.sh
5. Claude Desktop未检测到服务器
python verify_installation.py要使用像OpenAI、Anthropic和Google Gemini这样的LLM提供商,您需要提供API密钥。此服务器从存储库根目录的.env文件中加载API密钥。
cp .env.example .env.env:打开.env文件,并替换占位符密钥为您的实际API密钥:
OPENAI_API_KEY="your_openai_api_key_here"
ANTHROPIC_API_KEY="your_anthropic_api_key_here"
GEMINI_API_KEY="your_google_gemini_api_key_here"
.env文件中设置默认的LLM提供商和模型名称:
# 要使用的默认LLM提供商(例如,“ollama”,“openai”,“anthropic”,“gemini”)
DEFAULT_LLM_PROVIDER="ollama"
# 选定提供商的默认模型名称
DEFAULT_MODEL_NAME="cogito:latest"
如果未设置这些值,系统将默认为“ollama”,并尝试使用模型如“cogito:latest”或其他提供商特定的默认值。.env文件包含在.gitignore中,因此您的实际密钥不会提交到存储库。
# MCTS服务器和使用说明:
# 列出可用的Ollama模型(如果使用Ollama)
list_ollama_models()
# 设置活动的LLM提供商和模型
# provider_name可以是“ollama”,“openai”,“anthropic”,“gemini”
# model_name特定于提供商(例如,ollama的“cogito:latest”,openai的“gpt-4”)
set_active_llm(provider_name="openai", model_name="gpt-3.5-turbo")
# 或者,使用来自.env或提供商特定的默认值:
# set_active_llm(provider_name="openai")
# 初始化分析(也可以在这里指定provider和model以覆盖当前设置)
initialize_mcts(question="您的问题在这里", chat_id="唯一标识符", provider_name="openai", model_name="gpt-4")
# 或者使用全局设置的活动LLM:
# initialize_mcts(question="您的问题在这里", chat_id="唯一标识符")
run_mcts(iterations=1, simulations_per_iteration=5)
调用run_mcts后可能需要几分钟到几小时的时间,
- 因此您可以讨论任何想法或问题,或者等待用户确认过程完成,
- 然后在聊天恢复时继续合成和分析工具。
## MCTS-MCP工具概述
### 核心MCTS工具:
- `initialize_mcts`:使用特定问题启动新的MCTS分析。可选指定`provider_name`和`model_name`以覆盖此运行的默认设置。
- `run_mcts`:运行MCTS算法设定次数的迭代/模拟。
- `generate_synthesis`:生成MCTS结果的最终总结。
- `get_config`:查看当前MCTS配置参数,包括活动LLM提供商和模型。
- `update_config`:更新MCTS配置参数(不包括提供商/模型,使用`set_active_llm`进行更改)。
- `get_mcts_status`:检查MCTS系统的当前状态。
- `set_active_llm(provider_name: str, model_name: Optional[str])`:选择要使用的LLM提供商和模型。
- `list_ollama_models()`:显示所有可用的本地Ollama模型(如果使用Ollama提供商)。
默认配置优先考虑速度和探索,但您可以自定义参数如探索权重、beta先验alpha/beta、惊喜阈值。
## 配置
您可以自定义MCTS参数在配置字典中或通过Claude的`update_config`工具。关键参数包括:
- `max_iterations`:要运行的MCTS迭代次数
- `simulations_per_iteration`:每次迭代的模拟次数
- `exploration_weight`:控制探索与利用的平衡(在UCT中)
- `early_stopping`:如果找到高质量解决方案是否提前停止
- `use_bayesian_evaluation`:是否使用贝叶斯评估节点分数
- `use_thompson_sampling`:是否使用汤普森采样进行选择
具体路径:
深入最佳路径节点(如果有实例,使用mcts_instance.get_best_path_nodes())并检查每一步的思想和内容序列,可以提供核心见解如何演变的微叙事。
可视化树(即使基于export_tree_summary的简化版本)也可能具有启发性,我将尝试设置此功能。
修改参数:这是测试发现的稳健性或探索系统不同“认知偏见”的好方法。
增加探索权重:可能会导致更多样化、不太显然相关的想法。
减少探索权重:可能会导致初始主导路径的更深层次细化。
改变先验(如果是贝叶斯):您可以偏向某些方法(例如,增加'实用主义'的alpha)以查看其如何影响结果。
更多的迭代/模拟:允许潜在更深的收敛或探索更多小众路径。
### 结果收集:
- 自动将结果存储在`/home/ty/Repositories/ai_workspace/mcts-mcp-server/results`(路径可能因系统而异或可配置)
- 按提供商、模型名称和运行ID组织
- 存储指标、进度信息和最终输出
# MCTS分析工具
此扩展为MCTS-MCP服务器增加了强大的分析工具,使其易于提取见解并了解MCTS运行的结果。
MCTS分析工具提供了一系列集成功能,以:
1. 列出和浏览MCTS运行
2. 提取关键概念、论点和结论
3. 生成综合报告
4. 在不同运行之间比较结果
5. 建议改进以提高性能
## 可用的运行分析工具
### 浏览和基本信息
- `list_mcts_runs(count=10, model=None)`:列出最近的MCTS运行及其关键元数据
- `get_mcts_run_details(run_id)`:获取特定运行的详细信息
- `get_mcts_solution(run_id)`:获取运行的最佳解决方案
### 分析和见解
- `analyze_mcts_run(run_id)`:对运行进行全面分析
- `get_mcts_insights(run_id, max_insights=5)`:从运行中提取关键见解
- `extract_mcts_conclusions(run_id)`:从运行中提取结论
- `suggest_mcts_improvements(run_id)`:获取改进建议
### 报告和比较
- `get_mcts_report(run_id, format='markdown')`:生成综合报告(格式:'markdown','text','html')
- `get_best_mcts_runs(count=5, min_score=7.0)`:根据评分获取最佳运行
- `compare_mcts_runs(run_ids)`:比较多个运行以识别相似性和差异
## 使用示例
# 列出您的最近MCTS运行:
list_mcts_runs()
# 获取特定运行的详细信息:
get_mcts_run_details('ollama_cogito:latest_1745979984') # 示例运行ID格式
### 提取见解
# 从运行中获取关键见解:
get_mcts_insights(run_id='ollama_cogito:latest_1745979984')
### 生成报告
# 生成综合Markdown报告:
get_mcts_report(run_id='ollama_cogito:latest_1745979984', format='markdown')
### 改进结果
# 获取改进运行的建议:
suggest_mcts_improvements(run_id='ollama_cogito:latest_1745979984')
### 比较运行
要比较多个运行:
compare_mcts_runs(['ollama_cogito:latest_1745979984', 'openai_gpt-3.5-turbo_1745979584']) # 示例运行ID
## 理解结果
分析工具从MCTS运行中提取几个关键元素:
1. **关键概念**:分析中的核心思想和框架
2. **正反论证**:问题两边的主要论点
3. **结论**:分析的综合结论或见解
4. **标签**:从内容中自动生成的主题标签
## 故障排除
如果您遇到分析工具的问题:
1. 检查您的MCTS运行是否成功完成(状态:“已完成”)
2. 验证您正在使用的运行ID是否存在且正确
3. 尝试列出所有运行以查看可用情况:`list_mcts_runs()`
4. 确保运行目录中存在`.best_solution.txt`文件
## 高级示例用法
### 自定义报告
您可以生成不同格式的报告:
# 生成Markdown报告
report = get_mcts_report(run_id='ollama_cogito:latest_1745979984', format='markdown')
# 生成文本报告
report = get_mcts_report(run_id='ollama_cogito:latest_1745979984', format='text')
# 生成HTML报告
report = get_mcts_report(run_id='ollama_cogito:latest_1745979984', format='html')
### 查找最佳运行
要查找表现最佳的运行:
best_runs = get_best_mcts_runs(count=3, min_score=8.0)
这返回评分至少为8.0的前3个运行。
## 简单使用说明
1. **设置LLM提供商和模型**:
# 对于Ollama:
list_ollama_models() # 查看可用的Ollama模型
set_active_llm(provider_name="ollama", model_name="cogito:latest")
# 对于OpenAI:
set_active_llm(provider_name="openai", model_name="gpt-4")
# 对于Anthropic:
set_active_llm(provider_name="anthropic", model_name="claude-3-opus-20240229")
# 对于Gemini:
set_active_llm(provider_name="gemini",