Skip to main content
Glama
MCTS MCP Server

MCTS MCP Server

by angrysky56

MCTS MCP-сервер

Сервер протокола контекста модели (MCP), который предоставляет механизм расширенного байесовского поиска по дереву Монте-Карло (MCTS) для анализа и рассуждений с использованием искусственного интеллекта.

Обзор

Этот сервер MCP позволяет Клоду использовать алгоритмы поиска по дереву Монте-Карло (MCTS) для глубокого, исследовательского анализа тем, вопросов или текстовых входов. Алгоритм MCTS использует байесовский подход для систематического изучения различных углов и интерпретаций, производя проницательные анализы, которые развиваются через несколько итераций.

Related MCP server: MCP Advanced Reasoning Server

Функции

  • Байесовский MCTS : использует вероятностный подход для баланса между исследованием и эксплуатацией во время анализа.

  • Многоитерационный анализ : поддерживает многоитерационный анализ с несколькими симуляциями на итерацию.

  • Сохранение состояния : запоминает ключевые результаты, неподходящие подходы и априорные данные между ходами в одном чате.

  • Таксономия подходов : классифицирует сгенерированные мысли по различным философским подходам и семействам.

  • Выборка Томпсона : можно использовать выборку Томпсона или UCT для выбора узлов.

  • Обнаружение неожиданностей : определяет неожиданные или новые направления анализа.

  • Классификация намерений : понимает, когда пользователи хотят начать новый анализ или продолжить предыдущий.

Использование

Сервер предоставляет вашему LLM множество инструментов, подробно описанных ниже, в формате, который можно копировать и вставлять в системные подсказки.

Когда вы просите Claude провести глубокий анализ темы или вопроса, он автоматически задействует эти инструменты для изучения различных аспектов с помощью алгоритма MCTS и инструментов анализа.

альтернативный текст

Как это работает

Сервер MCTS MCP использует локальный подход вывода, а не пытается напрямую вызывать LLM. Это совместимо с протоколом MCP, который разработан для инструментов, вызываемых помощником ИИ (например, Клодом), а не для того, чтобы инструменты сами вызывали модель ИИ.

Когда Клод просит сервер выполнить анализ, сервер:

  1. Инициализирует систему MCTS с вопросом

  2. Выполняет несколько итераций исследования с использованием алгоритма MCTS

  3. Генерирует детерминированные ответы для различных аналитических задач

  4. Возвращает лучший анализ, найденный во время поиска

Установка

Клонируйте репозиторий:

В настройке используется UV (Astral UV), более быстрая альтернатива pip, которая обеспечивает улучшенное разрешение зависимостей.

  1. Убедитесь, что у вас установлен Python 3.10+

  2. Запустите скрипт установки:

./setup.sh

Это позволит:

  • Установите UV, если еще не установлен

  • Создайте виртуальную среду с помощью УФ

  • Установите необходимые пакеты с помощью UV

  • Создать необходимый государственный каталог

Кроме того, вы можете вручную настроить:

# Install UV if not already installed
curl -fsSL https://astral.sh/uv/install.sh | bash
# Create and activate a virtual environment
uv venv .venv
source .venv/bin/activate

# Install dependencies
uv pip install -r requirements.txt

Интеграция рабочего стола Клода

Для интеграции с Claude Desktop:

  1. Скопируйте содержимое claude_desktop_config.json из этого репозитория

  2. Добавьте его в конфигурацию Claude Desktop (обычно находится в ~/.claude/claude_desktop_config.json )

  3. Если файл конфигурации еще не существует, создайте его и добавьте содержимое из claude_desktop_config.json этого проекта.

  4. Перезагрузить рабочий стол Клода

Пример конфигурации:

{
  "mcpServers": {
    "MCTSServer": {
      "command": "uv",
      "args": [
        "run",
        "--directory", "/home/ty/Repositories/ai_workspace/mcts-mcp-server/src/mcts_mcp_server",
        "server.py"
      ],
      "env": {
        "PYTHONPATH": "/home/ty/Repositories/ai_workspace/mcts-mcp-server"
      }
    }
  }
}

Обязательно обновите пути в соответствии с расположением сервера MCTS MCP в вашей системе.

Предлагаемые системные подсказки и обновленные инструменты, включая интеграцию с Ollama, например: Поместите следующий блок в инструкции по проекту:


MCTS server and usage instructions:

MCTS server and usage instructions:
list_ollama_models()  # Check what models are available
set_ollama_model("cogito:latest")  # Set the model you want to use
initialize_mcts(question="Your question here", chat_id="unique_id")  # Initialize analysis
run_mcts(iterations=1, simulations_per_iteration=5)  # Run the analysis

After run_mcts is called it can take wuite a long time ie minutes to hours
- so you may discuss any ideas or questions or await user confirmation of the process finishing,
- then proceed to synthesis and analysis tools on resumption of chat.

## MCTS-MCP Tools Overview

### Core MCTS Tools:
- `initialize_mcts`: Start a new MCTS analysis with a specific question
- `run_mcts`: Run the MCTS algorithm for a set number of iterations/simulations
- `generate_synthesis`: Generate a final summary of the MCTS results
- `get_config`: View current MCTS configuration parameters
- `update_config`: Update MCTS configuration parameters
- `get_mcts_status`: Check the current status of the MCTS system

Default configuration prioritizes speed and exploration, but you can customize parameters like exploration_weight, beta_prior_alpha/beta, surprise_threshold.

## Configuration

You can customize the MCTS parameters in the config dictionary or through Claude's `update_config` tool. Key parameters include:

- `max_iterations`: Number of MCTS iterations to run
- `simulations_per_iteration`: Number of simulations per iteration
- `exploration_weight`: Controls exploration vs. exploitation balance (in UCT)
- `early_stopping`: Whether to stop early if a high-quality solution is found
- `use_bayesian_evaluation`: Whether to use Bayesian evaluation for node scores
- `use_thompson_sampling`: Whether to use Thompson sampling for selection

Articulating Specific Pathways:
Delving into the best_path nodes (using mcts_instance.get_best_path_nodes() if you have the instance) and examining the sequence of thought and content
at each step can provide a fascinating micro-narrative of how the core insight evolved.

Visualizing the tree (even a simplified version based on export_tree_summary) could also be illuminating and I will try to set up this feature.

Modifying Parameters: This is a great way to test the robustness of the finding or explore different "cognitive biases" of the system.

Increasing Exploration Weight: Might lead to more diverse, less obviously connected ideas.

Decreasing Exploration Weight: Might lead to deeper refinement of the initial dominant pathways.

Changing Priors (if Bayesian): You could bias the system towards certain approaches (e.g., increase alpha for 'pragmatic') to see how it influences the
outcome.

More Iterations/Simulations: Would allow for potentially deeper convergence or exploration of more niche pathways.

### Ollama Integration Tools:
- `list_ollama_models`: Show all available local Ollama models
- `set_ollama_model`: Select which Ollama model to use for MCTS
- `run_model_comparison`: Run the same MCTS process across multiple models

### Results Collection:
- Automatically stores results in `/home/ty/Repositories/ai_workspace/mcts-mcp-server/results`
- Organizes by model name and run ID
- Stores metrics, progress info, and final outputs

# MCTS Analysis Tools

This extension adds powerful analysis tools to the MCTS-MCP Server, making it easy to extract insights and understand results from your MCTS runs.

The MCTS Analysis Tools provide a suite of integrated functions to:

1. List and browse MCTS runs
2. Extract key concepts, arguments, and conclusions
3. Generate comprehensive reports
4. Compare results across different runs
5. Suggest improvements for better performance

## Available Run Analysis Tools

### Browsing and Basic Information

- `list_mcts_runs(count=10, model=None)`: List recent MCTS runs with key metadata
- `get_mcts_run_details(run_id)`: Get detailed information about a specific run
- `get_mcts_solution(run_id)`: Get the best solution from a run

### Analysis and Insights

- `analyze_mcts_run(run_id)`: Perform a comprehensive analysis of a run
- `get_mcts_insights(run_id, max_insights=5)`: Extract key insights from a run
- `extract_mcts_conclusions(run_id)`: Extract conclusions from a run
- `suggest_mcts_improvements(run_id)`: Get suggestions for improvement

### Reporting and Comparison

- `get_mcts_report(run_id, format='markdown')`: Generate a comprehensive report (formats: 'markdown', 'text', 'html')
- `get_best_mcts_runs(count=5, min_score=7.0)`: Get the best runs based on score
- `compare_mcts_runs(run_ids)`: Compare multiple runs to identify similarities and differences

## Usage Examples

# To list your recent MCTS runs:

list_mcts_runs()

# To get details about a specific run:

get_mcts_run_details('cogito:latest_1745979984')

### Extracting Insights

# To get key insights from a run:

get_mcts_insights(run_id='cogito:latest_1745979984')

### Generating Reports

# To generate a comprehensive markdown report:

get_mcts_report(run_id='cogito:latest_1745979984', format='markdown')


### Improving Results

# To get suggestions for improving a run:

suggest_mcts_improvements(run_id='cogito:latest_1745979984')

### Comparing Runs

To compare multiple runs:

compare_mcts_runs(['cogito:latest_1745979984', 'qwen3:0.6b_1745979584'])

## Understanding the Results

The analysis tools extract several key elements from MCTS runs:

1. **Key Concepts**: The core ideas and frameworks in the analysis
2. **Arguments For/Against**: The primary arguments on both sides of a question
3. **Conclusions**: The synthesized conclusions or insights from the analysis
4. **Tags**: Automatically generated topic tags from the content

## Troubleshooting

If you encounter any issues with the analysis tools:

1. Check that your MCTS run completed successfully (status: "completed")
2. Verify that the run ID you're using exists and is correct
3. Try listing all runs to see what's available: `list_mcts_runs()`
4. Make sure the `.best_solution.txt` file exists in the run's directory

## Advanced Example Usage

### Customizing Reports

You can generate reports in different formats:

# Generate a markdown report

report = get_mcts_report(run_id='cogito:latest_1745979984', format='markdown')

# Generate a text report

report = get_mcts_report(run_id='cogito:latest_1745979984', format='text')

# Generate an HTML report

report = get_mcts_report(run_id='cogito:latest_1745979984', format='html')

### Finding the Best Runs

To find your best-performing runs:

best_runs = get_best_mcts_runs(count=3, min_score=8.0)

This returns the top 3 runs with a score of at least 8.0.

## Simple Usage Instructions

1. **Changing Models**:

   list_ollama_models()  # See available models
   set_ollama_model("qwen3:0.6b")  # Set to fast small model

2. **Starting a New Analysis**:

   initialize_mcts(question="Your question here", chat_id="unique_identifier")

3. **Running the Analysis**:

   run_mcts(iterations=3, simulations_per_iteration=10)

4. **Comparing Performance**:

   run_model_comparison(question="Your question", iterations=2)

5. **Getting Results**:

   generate_synthesis()  # Final summary of results
   get_mcts_status()     # Current status and metrics


Примеры подсказок

  • «Проанализируйте влияние искусственного интеллекта на креативность человека»

  • «Продолжить изучение этических аспектов этой темы»

  • «Какой анализ, который вы нашли в последнем прогоне, оказался самым лучшим?»

  • «Как работает этот процесс MCTS?»

  • «Покажите мне текущую конфигурацию MCTS»

альтернативный текст

Для разработчиков

# Activate virtual environment
source .venv/bin/activate

# Run the server directly (for testing)
uv run server.py

# OR use the MCP CLI tools
uv run -m mcp dev server.py

Тестирование сервера

Чтобы проверить правильность работы сервера:

# Activate the virtual environment
source .venv/bin/activate

# Run the test script
python test_server.py

Это позволит проверить адаптер LLM и убедиться в его правильной работе.

Внося вклад

Приветствуются вклады в улучшение сервера MCTS MCP. Некоторые области для потенциального улучшения:

  • Улучшение локального адаптера вывода для более сложного анализа

  • Добавление более сложных моделей мышления и стратегий оценки

  • Улучшение визуализации дерева и отчетов о результатах

  • Оптимизация параметров алгоритма MCTS

Лицензия: Массачусетский технологический институт

Available Tools

6 tools
get_statusC

Get the current MCTS status

Inputs: no named parameters.

get_synthesisC

Generate a final synthesis of the MCTS results

Inputs: no named parameters.

initialize_mctsC

Initialize MCTS for a question

Inputs: question (required), chat_id, model, provider.

list_available_modelsC

List available models for a provider

Inputs: provider.

set_providerC

Set the LLM provider and model

Inputs: model, provider.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.3/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity: get_status retrieves current state, get_synthesis generates final output, initialize_mcts sets up the process, list_available_models shows options, run_mcts_search performs iterations, and set_provider configures the model. The tools cover different stages and aspects of the MCTS workflow without overlap.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with snake_case throughout: get_status, get_synthesis, initialize_mcts, list_available_models, run_mcts_search, set_provider. The naming is predictable and readable, using clear verbs like 'get', 'initialize', 'list', 'run', and 'set' that accurately describe each action.

    Tool Count5/5

    With 6 tools, the server is well-scoped for managing MCTS processes, covering initialization, configuration, execution, and result retrieval. Each tool earns its place in the workflow, providing a focused set without being too sparse or bloated, which is typical for a specialized domain like MCTS.

    Completeness4/5

    The tool surface covers the core MCTS lifecycle comprehensively: initialization (initialize_mcts), configuration (set_provider, list_available_models), execution (run_mcts_search), and results (get_status, get_synthesis). A minor gap exists in lacking tools for intermediate monitoring or adjusting parameters during search, but agents can work around this with the provided tools.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      C
      quality
      D
      maintenance
      A systematic reasoning MCP server for Claude Desktop, featuring Beam Search and Monte Carlo Tree Search to facilitate complex problem-solving and decision-making processes.
      1
      12
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables users to optimize LLM responses using Monte Carlo Tree Search (MCTS) through a Model Context Protocol server, enhancing conversation quality by exploring multiple response branches and selecting the best path.
      49
      -