Enables AI agents to break down complex tasks into manageable pieces using a structured JSON format with task tracking, context preservation, and progress monitoring capabilities.
A Model Context Protocol (MCP) server that enables AI agents to break down complex tasks into manageable pieces using a structured JSON format.
The Divide and Conquer MCP Server is an evolution of the Temp Notes MCP Server, designed specifically for complex tasks that need to be broken down into manageable pieces. Instead of using a simple text file, this server uses a structured JSON format to store task information, checklists, and context, making it easier to track progress and maintain context across multiple conversations.
Add the server to your MCP configuration:
{ "mcpServers": { "divide-and-conquer": { "command": "npx", "args": ["-y", "@landicefu/divide-and-conquer-mcp-server"], "disabled": false } } }
Start using it in your conversations:
// 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." } });
Add the server to your MCP configuration:
{ "mcpServers": { "divide-and-conquer": { "command": "npx", "args": ["-y", "@landicefu/divide-and-conquer-mcp-server"], "disabled": false } } }
Clone the repository:
git clone https://github.com/landicefu/divide-and-conquer-mcp-server.git cd divide-and-conquer-mcp-server
Install dependencies:
npm install
Build the server:
npm run build
Add the server to your MCP configuration:
{ "mcpServers": { "divide-and-conquer": { "command": "node", "args": ["/path/to/divide-and-conquer-mcp-server/build/index.js"], "disabled": false } } }
The Divide and Conquer MCP Server provides the following tools:
initialize_task
Creates a new task with the specified description and optional initial checklist items.
update_task_description
Updates the main task description.
update_context
Updates the context information for all tasks.
add_checklist_item
Adds a new item to the checklist.
update_checklist_item
Updates an existing checklist item.
mark_task_done
Marks a checklist item as done.
mark_task_undone
Marks a checklist item as not done.
remove_checklist_item
Removes a checklist item.
reorder_checklist_item
Moves a checklist item to a new position.
add_note
Adds a note to the task.
add_resource
Adds a resource to the task.
update_metadata
Updates the task metadata.
clear_task
Clears the current task data.
get_checklist_summary
Returns a summary of the checklist with completion status. Context information is intentionally excluded from the summary to save context window space.
get_current_task_details
Retrieves details of the current task (first uncompleted task) with full context, along with all other tasks with limited fields. For the current task, all fields including context_and_plan are included. For other tasks, only task, detailed_description, and done status are included (context_and_plan is excluded). This is the recommended tool to use when working with tasks.
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.
When working on complex software development tasks, AI agents often face context window limitations that make it difficult to complete all steps in a single conversation. The Divide and Conquer MCP Server allows agents to:
For project planning and management tasks, the server enables:
When conducting research and analysis, agents can:
The server uses the following JSON structure to store task information:
{ "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" } ] }
By default, the Divide and Conquer MCP Server stores task data in the following location:
~/.mcp_config/divide_and_conquer.json
(which expands to /Users/username/.mcp_config/divide_and_conquer.json
)C:\Users\username\.mcp_config\divide_and_conquer.json
This file is created automatically when you first initialize a task. If the file doesn't exist when you try to read task data, the server will return an empty task structure and create the file when you write to it next time.
The server handles the following scenarios:
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
Discover shared experiences
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!