🚀 AI Cognitive Nexus (认知中枢)
AI Cognitive Nexusは、専門的で動的な編成が可能なAIチームの協調と編成を行うMCPです。簡単な指令で、複数のAIエージェント(Agent)から構成される階層化チームを作成、管理、指揮し、複雑で多段階のタスクを解決することができます。
✨ 主な機能
- 🤖 動的チーム編成: リアルタイムでAIチームの作成、更新、削除が可能で、メンバーは独立したAIエージェントや他のチームであってもよく、無限の階層化協調を実現します。
- 🧠 コンテキスト注入: ペルソナ (Persona) と プロダクト知識ベース (Product) システムを通じて、AIチームに対して正確なロールプレイング指示と専門分野の知識を与えます。
- 🔗 階層化チーム依存関係: システムが自動的に複雑なチーム依存関係(例:チームAがチームBのメンバー)を処理し、トポロジカルソートによって正しい初期化順序を保証し、循環依存を検出して防止します。
- 💾 永続的セッション状態: 組み込みのセッションマネージャーが、複数回の対話履歴を追跡・記録し、AIチームに長期記憶を持たせ、連続的なタスクを実行できます。
- 🔌 プラグアンドプレイ型大規模言語モデル: 環境変数を使用して、異なる大規模言語モデルプロバイダ(DeepSeek、OpenAILikeサービスなど)間をシームレスに切り替えることができ、異なるコストとパフォーマンス要件に柔軟に対応します。
- 🛠️ 拡張可能なエージェントツール: 各AIエージェントに専用のツールセット(
ThinkingTools、ExaToolsなど)を設定し、言語能力を超えた専門技能を持たせます。
- 🤝 ネイティブMCPプロトコル: Model Context Protocolに基づいて構築されており、MCPをサポートする任意のAIアシスタント(OpenAI Assistants、Coze、Dify、Chatwiseなど)とシームレスに統合できます。
🚀 クイックスタート
核心概念
Cognitive Nexus の強力な機能は、以下の核心概念の組み合わせと協調によって実現されます。
| 概念 |
英文 |
役割 |
| ペルソナ |
Persona |
タスクにおいてAIが演じるべき役割、性格、目標を定義します。 |
| プロダクト |
Product |
タスクに特定の背景知識と専門知識データベースを注入します。 |
| ロール/エージェント |
Agent |
最小の実行単位です。特定の役割、スキル、ツールを持つ独立したAIです。 |
| チーム |
Team |
複数の Agent または 他のTeam から構成される協調ユニットで、より大きな目標を達成するために使用されます。 |
ワークフロー: タスクが開始されると、チーム (Team) を実行者として指定し、特定のペルソナ (Persona) とプロダクト (Product) をコンテキストとして提供することで、チームにタスクを正確に実行させることができます。
⚙️ インストールと設定
1. 環境要件
- Python 3.10以上
pip または uv などのPythonパッケージ管理ツール
- MCPをサポートするAIクライアント(Coze、Dify、または他の互換性のあるエージェント)
2. 依存関係のインストール
git clone https://github.com/SimonUTD/ai-cognitive-nexus-mcp.git
cd ai-cognitive-nexus-mcp
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
3. .env ファイルの設定
これは、モデルプロバイダとAPIキーを設定する推奨方法です。
cp .env.example .env
LLM_PROVIDER="deepseek"
OpenAILike_API_KEY="your_api_key_here"
OpenAILike_BASE_URL="https://api.example.com/v1"
OpenAILike_MODEL_ID="glm-4"
OpenAILike_AGENT_MODEL_ID="glm-4"
EXA_API_KEY="your_exa_key_here"
4. サーバーの起動
main.py を直接実行することで、標準入出力 (stdio) を通じてMCPサーバーを起動できます。
python main.py
また、MCPをサポートするクライアント(Chatwiseなど)でこのコマンドを設定することで、自動的に起動することもできます。
📚 ドキュメント
📖 APIリファレンス (MCP Tools)
Cognitive Nexus は、AIアシスタントに対して、AIチームを管理・実行するための一連のツールを公開しています。
セッション管理
start_session(initial_context: str): 新しいセッションを作成し、後続の対話履歴を追跡します。
ペルソナ (Persona) 管理
create_persona(persona_key: str, data: dict): 新しいペルソナを作成します。
list_personas(): 利用可能なすべてのペルソナをリストします。
get_persona(persona_key: str): 指定されたペルソナの詳細情報を取得します。
update_persona(persona_key: str, data: dict): 既存のペルソナを更新します。
delete_persona(persona_key: str): ペルソナを削除します。
プロダクト (Product) 管理
create_product(product_key: str, data: dict): 新しいプロダクトとその知識ベースを作成します。
list_products(): すべてのプロダクトをリストします。
get_product(product_key: str): プロダクトの詳細と知識ベースを取得します。
update_product(product_key: str, data: dict): プロダクト情報を更新します。
delete_product(product_key: str): プロダクトを削除します。
ロール/エージェント (Agent) 管理
create_agent(agent_key: str, data: dict): 独立したAIエージェントを作成します。
list_agents(): すべてのエージェントをリストします。
get_agent(agent_key: str): エージェントの設定を取得します。
update_agent(agent_key: str, data: dict): エージェントの設定を更新します(すべてのチームが自動的に再読み込みされます)。
delete_agent(agent_key: str): エージェントを削除します。
チーム (Team) 管理
create_team(team_key: str, data: dict): 新しいチームを作成します。
list_teams(): すべてのチームとその状態(アクティブ/設定エラー)をリストします。
get_team_config(team_key: str): チームの元の設定を取得します。
update_team(team_key: str, data: dict): チームの設定を更新します(自動的に再読み込みが試行されます)。
delete_team(team_key: str): チームを削除します。
核心実行ユニット
run_ai_team(team_name: str, prompt: str, session_id: str, persona_key: str, product_key: str)
これはフレームワークの核心機能で、チームにタスクを実行させるために使用されます。
team_name (必須): 実行するチームのキー。
prompt (必須): 今回のタスクの核心指示。
session_id (オプション): 関連するセッションID。履歴をロードし、結果を保存するために使用されます。
persona_key (オプション): 今回のタスクでAIが演じるべきペルソナのキー。
product_key (オプション): 今回のタスクに関連するプロダクトのキー。特定の知識ベースをロードするために使用されます。
[+] よくある質問 (FAQ)
Q: 「プロダクトマネージャーエージェント」と「開発チーム」を作成し、協力させるにはどうすればよいですか?
A: 非常に簡単で、3つのステップでできます。
- エージェントの作成:
create_agent を呼び出して、product_manager エージェントを作成し、さらに2つの開発 developer_a と developer_b エージェントを作成します。description と instructions で彼らの役割を詳細に記述します。
- チームの作成:
create_team を呼び出して、dev_team を作成し、その members リストを ["developer_a", "developer_b"] とします。
- 実行:
run_ai_team を呼び出して、product_manager エージェントに直接タスクを実行させるか、より上位の project_team を作成し、product_manager と dev_team をそのメンバーとして、project_team を実行します。
Q: 循環依存するチーム(チームAがチームBを含み、チームBがチームAを含む)を作成するとどうなりますか?
A: システムが自動的に検出します。create_team または update_team を呼び出すときに、新しい設定が循環依存を引き起こす場合、操作は失敗し、エラーメッセージが返され、同時に変更が自動的にロールバックされ、システムが常に利用可能な状態に保たれます。
Q: 使用するAIモデルを、例えば智譜のGLM-4から月之暗面のMoonshotに切り替えるにはどうすればよいですか?
A: .env ファイルを変更するだけです。
LLM_PROVIDER="openailike" を設定します。
OpenAILike_API_KEY をMoonshotのAPIキーに設定します。
OpenAILike_BASE_URL をMoonshotのサービスアドレス (https://api.moonshot.cn/v1) に設定します。
OpenAILike_MODEL_ID を使用したいモデルID(moonshot-v1-8k など)に設定します。
EXA_API_KEY をあなたのEXA APIキーに設定します。
- MCPサーバーを再起動すると、変更が有効になります。