Divide and Conquer MCP Server について
Divide and Conquer MCP Serverは、複雑な作業を追跡可能なタスクに分けるためのMCPサーバーです。チェックリスト、コンテキスト、進捗を構造化JSONで保存し、会話をまたいだ作業の継続を支援します。
主な機能
- 01構造化JSONによるタスク保存
- 02チェックリストの状態と進捗管理
- 03タスクのコンテキストと説明の保存
- 04項目の並べ替えと挿入
- 05メタデータ、メモ、リソースの記録
活用シーン
- 01複雑なソフトウェア開発の分解
- 02プロジェクト計画とタスク状況の管理
- 03調査課題の細分化と情報源の記録
MCP 対応
タスクの初期化、チェックリストの編集、進捗確認、詳細取得のツールをMCPクライアントに提供します。タスクデータはJSONファイルに保存され、後の会話で利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
15掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| metadata | object | いいえ | タスクの任意のメタデータ |
| metadata.tags | array | いいえ | タスクを分類するタグ |
| metadata.priority | enum | いいえ | タスクの優先度high | medium | low |
| metadata.estimated_completion_time | string | いいえ | 完了予定時刻(ISO タイムスタンプまたは期間) |
| task_description | string | はい | タスク全体の中程度に詳細な説明 |
| initial_checklist | array | いいえ | 任意の初期チェックリスト項目 |
| context_for_all_tasks | string | いいえ | チェックリスト内のすべてのタスクに含める情報 |
詳細
Divide and Conquer MCP Server
構造化されたJSON形式を使用して、AI エージェントが複雑なタスクを管理しやすい単位に分割できるようにする、Model Context Protocol(MCP)サーバーです。
目次
目的
Divide and Conquer MCP Serverは、管理しやすい単位に分割する必要がある複雑なタスク向けに設計された、Temp Notes MCP Serverの進化版です。単純なテキストファイルを使う代わりに、このサーバーはタスク情報、チェックリスト、コンテキストを保存するために構造化されたJSON形式を使用します。これにより、進捗を追跡し、複数の会話にわたってコンテキストを維持しやすくなります。
主な機能
- 構造化JSON形式:プレーンテキストの代わりに、タスク情報の保存にJSON構造を使用します
- タスクの追跡:完了状況を追跡できるチェックリスト機能を備えています
- コンテキストの保持:タスクのコンテキストと詳細な説明を記録する専用フィールドがあります
- 進捗の監視:完了済みタスクと未完了タスクを簡単に確認できます
- タスクの順序付け:順次実行できるよう、タスクの順序を維持します
- タスクの挿入:チェックリスト内の特定の位置に新しいタスクを挿入できます
- メタデータ:タグ、優先度、完了予定時間などの追加情報を追跡できます
- メモとリソース:タスクに関連する追加のメモやリソースを保存できます
クイックスタート
-
MCP設定にサーバーを追加します:
{ "mcpServers": { "divide-and-conquer": { "command": "npx", "args": ["-y", "@landicefu/divide-and-conquer-mcp-server"], "disabled": false } } } -
会話で使用を開始します:
// Initialize a new task await use_mcp_tool({ server_name: "divide-and-conquer", tool_name: "initialize_task", arguments: { task_description: "Refactor the authentication system", context_for_all_tasks: "The current system uses session-based authentication." } }); // Add checklist items await use_mcp_tool({ server_name: "divide-and-conquer", tool_name: "add_checklist_item", arguments: { task: "Analyze current authentication flow", detailed_description: "Review the existing authentication code.", context_and_plan: "Look at src/auth/* files. The current implementation uses express-session with MongoDB store." } });
インストール
Smithery経由でインストールする
Smitheryを使用して、Claude Desktop向けのDivide and Conquer Serverを自動的にインストールするには:
npx -y @smithery/cli install @landicefu/divide-and-conquer-mcp-server --client claude
オプション1:npxを使用する(推奨)
MCP設定にサーバーを追加します:
{
"mcpServers": {
"divide-and-conquer": {
"command": "npx",
"args": ["-y", "@landicefu/divide-and-conquer-mcp-server"],
"disabled": false
}
}
}
オプション2:ソースからインストールする
-
リポジトリをクローンします:
git clone https://github.com/landicefu/divide-and-conquer-mcp-server.git cd divide-and-conquer-mcp-server -
依存関係をインストールします:
npm install -
サーバーをビルドします:
npm run build -
MCP設定にサーバーを追加します:
{ "mcpServers": { "divide-and-conquer": { "command": "node", "args": ["/path/to/divide-and-conquer-mcp-server/build/index.js"], "disabled": false } } }
ツール
Divide and Conquer MCP Serverは、以下のツールを提供します:
initialize_task
指定した説明と、オプションの初期チェックリスト項目を含む新しいタスクを作成します。
update_task_description
メインタスクの説明を更新します。
update_context
すべてのタスクのコンテキスト情報を更新します。
add_checklist_item
チェックリストに新しい項目を追加します。
update_checklist_item
既存のチェックリスト項目を更新します。
mark_task_done
チェックリスト項目を完了としてマークします。
mark_task_undone
チェックリスト項目を未完了としてマークします。
remove_checklist_item
チェックリスト項目を削除します。
reorder_checklist_item
チェックリスト項目を新しい位置に移動します。
add_note
タスクにメモを追加します。
add_resource
タスクにリソースを追加します。
update_metadata
タスクのメタデータを更新します。
clear_task
現在のタスクデータをクリアします。
get_checklist_summary
完了状況を含むチェックリストの概要を返します。コンテキストウィンドウの使用量を節約するため、コンテキスト情報は意図的に概要から除外されています。
get_current_task_details
現在のタスク(最初の未完了タスク)の詳細を、すべてのコンテキストとともに取得します。また、その他のすべてのタスクについて、限定されたフィールドを取得します。現在のタスクについては、context_and_plan を含むすべてのフィールドが含まれます。その他のタスクについては、task、detailed_description、完了状況のみが含まれます(context_and_plan は除外されます)。タスクに取り組む際に推奨されるツールです。
使用例
複雑なタスクの初期化
await use_mcp_tool({
server_name: "divide-and-conquer",
tool_name: "initialize_task",
arguments: {
task_description: "Refactor the authentication system to use JWT tokens and improve security",
context_for_all_tasks: "The current system uses session-based authentication with cookies. We need to migrate to JWT for better scalability and security.",
initial_checklist: [
{
task: "Analyze current authentication flow",
detailed_description: "Review the existing authentication code to understand the current flow.",
context_and_plan: "Look at src/auth/* files. The current implementation uses express-session with MongoDB store. Pay special attention to session expiration handling."
},
{
task: "Design JWT implementation",
detailed_description: "Create a design document outlining how JWT will be implemented.",
context_and_plan: "Consider token structure, storage, and refresh mechanisms. Research best practices for JWT implementation in Node.js applications. Reference the security requirements document in docs/security.md."
}
],
metadata: {
tags: ["security", "refactoring", "authentication"],
priority: "high",
estimated_completion_time: "2 weeks"
}
}
});
チェックリストの概要の取得
const summary = await use_mcp_tool({
server_name: "divide-and-conquer",
tool_name: "get_checklist_summary",
arguments: {
include_descriptions: true
}
});
// Result contains a formatted summary of the checklist with completion status (context is excluded to save space)
現在のタスクの詳細の取得
const taskDetails = await use_mcp_tool({
server_name: "divide-and-conquer",
tool_name: "get_current_task_details",
arguments: {}
});
// Result contains:
// - ultimate_goal: The final goal of the entire task (task_description)
// - tasks: Array of all tasks, where the current task (first uncompleted) has all fields including context_and_plan,
// while other tasks have limited fields (task, detailed_description, done) without context_and_plan
// - current_task_index: Index of the current task (first uncompleted)
// - Additional task metadata, notes, resources, etc.
ユースケース
1. 複雑なソフトウェア開発タスク
複雑なソフトウェア開発タスクに取り組む際、AI エージェントはコンテキストウィンドウの制限に直面し、1 回の会話ですべての手順を完了するのが難しい場合があります。Divide and Conquer MCP Server を使用すると、エージェントは次のことができます。
- 大規模なタスクを、管理しやすい小さな単位に分割する
- 複数の会話にわたって進捗を追跡する
- 失われる可能性のある重要なコンテキストを保持する
- タスクを論理的な順序で整理する
- 決定事項とリソースを記録する
2. プロジェクトの計画と管理
プロジェクトの計画や管理のタスクでは、サーバーを使用して次のことができます。
- タスクとサブタスクを含む、構造化されたプロジェクト計画を作成する
- 進捗と完了状況を追跡する
- コンテキストと要件を保持する
- 決定事項とリソースを記録する
- 複数の会話をまたいで共同作業する
3. 調査と分析
調査や分析を行う際、エージェントは次のことができます。
- 調査の質問を、調査すべき具体的な領域に分割する
- 進捗と調査結果を追跡する
- コンテキストと背景情報を保持する
- 情報源とリソースを記録する
- 調査結果を体系的に整理する
JSON 構造
サーバーは、タスク情報の保存に次の JSON 構造を使用します。
{
"task_description": "A medium-level detailed description about the whole task. The final goal we want to achieve.",
"checklist": [
{
"done": false,
"task": "A short yet comprehensive name for the task",
"detailed_description": "A longer description about what we want to achieve with this task",
"context_and_plan": "Related information, files the agent should read, and more details from other tasks, as well as a detailed plan for this task. This is typically the longest string."
}
],
"context_for_all_tasks": "Information that all tasks in the checklist should include.",
"metadata": {
"created_at": "ISO timestamp",
"updated_at": "ISO timestamp",
"progress": {
"completed": 0,
"total": 1,
"percentage": 0
},
"tags": ["tag1", "tag2"],
"priority": "high|medium|low",
"estimated_completion_time": "ISO timestamp or duration"
},
"notes": [
{
"timestamp": "ISO timestamp",
"content": "Additional notes or observations about the overall task"
}
],
"resources": [
{
"name": "Resource name",
"url": "URL or file path",
"description": "Description of the resource"
}
]
}
設定の保存場所
デフォルトでは、Divide and Conquer MCP Server はタスクデータを次の場所に保存します。
- macOS/Linux の場合:
~/.mcp_config/divide_and_conquer.json(/Users/username/.mcp_config/divide_and_conquer.jsonに展開されます) - Windows の場合:
C:\Users\username\.mcp_config\divide_and_conquer.json
このファイルは、最初にタスクを初期化したときに自動的に作成されます。タスクデータを読み取ろうとしたときにファイルが存在しない場合、サーバーは空のタスク構造を返し、次回の書き込み時にファイルを作成します。
サーバーは次の状況に対応します。
- 読み取り時にファイルが存在しない場合:空のタスク構造を返します
- ディレクトリが存在しない場合:書き込み時にディレクトリ構造を自動的に作成します
- ファイルが破損している、またはアクセスできない場合:適切なエラーメッセージを返します
貢献
貢献を歓迎します。お気軽に Pull Request を送信してください。
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
