multiagents-thinking

multiagents-thinking

2

This project is a Multi-Component Protocol server aimed at solving complex tasks through parallel consideration and execution by multiple specialized agents. It employs diverse problem-solving strategies and integrates various approaches to provide deep and multifaceted analysis using HuggingFace's smolagents library and FastMCP.

Multi-Agent Thinking MCP Server

このプロジェクトは、複雑なタスクに対して複数の視点やアプローチを並列に検討・実行するための MCP (Multi-Component Protocol) サーバーです。内部的に複数のエージェント(スペシャリストエージェント)を生成し、それぞれの専門分野に基づいてタスクを分担・実行させることで、より深く、多角的な分析や解決策の生成を目指します。

このプロジェクトは HuggingFace の smolagents ライブラリと FastMCP を基盤としています。

主な機能

  • マルチエージェント思考:
    • 単一のタスク記述から、複数の異なる視点やアプローチを自動生成します。
    • 各アプローチを専門とするスペシャリストエージェントを並列に実行します。
    • 視点分担型、タスク分担型、段階分担型、並列解法型、分岐探索型、分解再構築型など、多様な問題解決戦略をサポートします。
    • 各スペシャリストからの報告を統合し、最終的な結論や解決策を提示します。
  • MCP サーバー:
    • fastmcp を使用して、MCP サーバーとして機能します。
    • Cursor IDE などの MCP クライアントから multiagent.multiagent_thinking ツールとして呼び出すことができます。

要件

  • Python 3.11 以降
  • uv パッケージマネージャー
  • 以下の API キー:
    • OpenAI API キー (OPENAI_API_KEY)
    • HuggingFace トークン (HF_TOKEN)

インストール

  1. リポジトリをクローンします:

    git clone https://github.com/Hajime-Y/multiagents-thinking.git
    cd multiagents-thinking
    
  2. 仮想環境を作成し、依存関係をインストールします:

    uv venv
    source .venv/bin/activate # Linux/macOS の場合
    # .venv\Scripts\activate # Windows の場合
    uv sync
    

    (依存関係は pyproject.toml で管理されています)

環境変数

プロジェクトのルートディレクトリに .env ファイルを作成し、以下の環境変数を設定してください:

OPENAI_API_KEY=your_openai_api_key
HF_TOKEN=your_huggingface_token

使い方

MCP サーバーを起動します:

uv run python -m src.multiagents

これにより、multiagent という名前のエージェント (MCP サーバー) が起動します。MCP クライアント (Cursor IDE など) から multiagent.multiagent_thinking ツールを呼び出すことで、マルチエージェント思考プロセスを実行できます。

例 (Cursor IDE での呼び出し):

@multiagent.multiagent_thinking 新しいオンライン教育プラットフォームの設計方針について、学習科学、データ駆動、社会的学習の3つの観点から分析し、具体的なアイデアを提案してください。

Claude Desktop での使用

Claude Desktop でこの MCP サーバーを使用するには、設定ファイル(通常 ~/.config/Claude/claude_desktop_config.json 等)に以下のような設定を追加します。

{
  "mcpServers": {
    "multiagent": {
      "command": "/PATH/TO/YOUR/uv", // あなたの環境の uv への絶対パス
      "args": [
        "--directory",
        "/YOUR/ABSOLUTE/PATH/TO/multiagents-thinking", // このプロジェクトディレクトリへの絶対パス
        "run",
        "python",
        "-m",
        "src.multiagents"
      ]
    }
  }
}
  • /PATH/TO/YOUR/uv は、uv 実行ファイルの絶対パスに置き換えてください (which uv コマンド等で確認できます)。
  • /YOUR/ABSOLUTE/PATH/TO/multiagents-thinking は、このプロジェクト (multiagents-thinking ディレクトリ) の絶対パスに置き換えてください。

主要コンポーネント

  • src/multiagents.py: MCP サーバーのエントリーポイント。multiagent_thinking ツールを定義。
  • src/create_agent.py: マザーエージェントとスペシャリストエージェントのプロンプト生成、およびエージェントの作成ロジック (run_specialist_agents ツールを含む)。

ライセンス

このプロジェクトは Apache License 2.0 の下で提供されています。

謝辞

このプロジェクトは HuggingFace の smolagents ライブラリにインスパイアされています。