Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

task-manager-mcp

MCP.Pizza Chef: tradesdontlie

The task-manager-mcp is an MCP server providing a robust task and project management system. It supports creating and updating tasks, organizing projects, tracking progress, and parsing Product Requirements Documents (PRDs) into actionable tasks. Designed as a template for developers, it enables AI agents to manage workflows efficiently and integrates seamlessly with any MCP-compatible client, following best practices for MCP server implementations.

Use This MCP server To

Create and organize project task files automatically Add and update tasks with detailed descriptions and subtasks Track project progress and task completion status Parse Product Requirements Documents into actionable tasks Enable AI agents to manage and prioritize project workflows Integrate task management into AI-enhanced development environments

README

Task Manager MCP Server

A template implementation of the Model Context Protocol (MCP) server for managing tasks and projects. This server provides a comprehensive task management system with support for project organization, task tracking, and PRD parsing.

Overview

This project demonstrates how to build an MCP server that enables AI agents to manage tasks, track project progress, and break down Product Requirements Documents (PRDs) into actionable tasks. It serves as a practical template for creating your own MCP servers with task management capabilities.

The implementation follows the best practices laid out by Anthropic for building MCP servers, allowing seamless integration with any MCP-compatible client.

Features

The server provides several essential task management tools:

  1. Task Management

    • create_task_file: Create new project task files
    • add_task: Add tasks to projects with descriptions and subtasks
    • update_task_status: Update the status of tasks and subtasks
    • get_next_task: Get the next uncompleted task from a project
  2. Project Planning

    • parse_prd: Convert PRDs into structured tasks automatically
    • expand_task: Break down tasks into smaller, manageable subtasks
    • estimate_task_complexity: Estimate task complexity and time requirements
    • get_task_dependencies: Track task dependencies
  3. Development Support

    • generate_task_file: Generate file templates based on task descriptions
    • suggest_next_actions: Get AI-powered suggestions for next steps

Prerequisites

  • Python 3.12+
  • API keys for your chosen LLM provider (OpenAI, OpenRouter, or Ollama)
  • Docker if running the MCP server as a container (recommended)

Installation

Using uv

  1. Install uv if you don't have it:

    pip install uv
  2. Clone this repository:

    git clone https://github.com/coleam00/mcp-mem0.git
    cd mcp-mem0
  3. Install dependencies:

    uv pip install -e .
  4. Create a .env file based on .env.example:

    cp .env.example .env
  5. Configure your environment variables in the .env file (see Configuration section)

Using Docker (Recommended)

  1. Build the Docker image:

    docker build -t mcp/mem0 --build-arg PORT=8050 .
  2. Create a .env file based on .env.example and configure your environment variables

Configuration

The following environment variables can be configured in your .env file:

Variable Description Example
TRANSPORT Transport protocol (sse or stdio) sse
HOST Host to bind to when using SSE transport 0.0.0.0
PORT Port to listen on when using SSE transport 8050

Running the Server

Using Python 3

# Set TRANSPORT=sse in .env then:
python3 src/main.py

The server will start on the configured host and port (default: http://0.0.0.0:8050).

Using Docker

docker build -t task-manager-mcp .
docker run --env-file .env -p 8050:8050 task-manager-mcp

Using the Task Manager

Creating a New Project

  1. Create a task file for your project:
await mcp.create_task_file(project_name="my-project")
  1. Add tasks to your project:
await mcp.add_task(
    project_name="my-project",
    title="Setup Development Environment",
    description="Configure the development environment with required tools",
    subtasks=[
        "Install dependencies",
        "Configure linters",
        "Set up testing framework"
    ]
)
  1. Parse a PRD to create tasks automatically:
await mcp.parse_prd(
    project_name="my-project",
    prd_content="# Your PRD content..."
)

Managing Tasks

  1. Update task status:
await mcp.update_task_status(
    project_name="my-project",
    task_title="Setup Development Environment",
    subtask_title="Install dependencies",
    status="done"
)
  1. Get the next task to work on:
next_task = await mcp.get_next_task(project_name="my-project")
  1. Expand a task into subtasks:
await mcp.expand_task(
    project_name="my-project",
    task_title="Implement Authentication"
)

Development Workflow

  1. Generate a file template for a task:
await mcp.generate_task_file(
    project_name="my-project",
    task_title="User Authentication"
)
  1. Get task complexity estimate:
complexity = await mcp.estimate_task_complexity(
    project_name="my-project",
    task_title="User Authentication"
)
  1. Get suggestions for next actions:
suggestions = await mcp.suggest_next_actions(
    project_name="my-project",
    task_title="User Authentication"
)

Integration with MCP Clients

SSE Configuration

To connect to the server using SSE transport, use this configuration:

{
  "mcpServers": {
    "task-manager": {
      "transport": "sse",
      "url": "http://localhost:8050/sse"
    }
  }
}

Stdio Configuration

For stdio transport, use this configuration:

{
  "mcpServers": {
    "task-manager": {
      "command": "python3",
      "args": ["src/main.py"],
      "env": {
        "TRANSPORT": "stdio",
        "LLM_PROVIDER": "openai",
        "LLM_API_KEY": "YOUR-API-KEY",
        "LLM_CHOICE": "gpt-4"
      }
    }
  }
}

Building Your Own Server

This template provides a foundation for building more complex task management MCP servers. To extend it:

  1. Add new task management tools using the @mcp.tool() decorator
  2. Implement custom task analysis and automation features
  3. Add project-specific task templates and workflows
  4. Integrate with your existing development tools and processes

task-manager-mcp FAQ

How does task-manager-mcp handle task creation?
It provides APIs to create new project task files and add detailed tasks with descriptions and subtasks.
Can task-manager-mcp parse documents?
Yes, it can parse Product Requirements Documents (PRDs) into structured, actionable tasks.
Is task-manager-mcp compatible with all MCP clients?
Yes, it follows MCP best practices ensuring seamless integration with any MCP-compatible client.
How does task-manager-mcp track project progress?
It maintains task statuses and project organization to provide real-time progress tracking.
Can I customize task-manager-mcp for my own project workflows?
Yes, it is designed as a template allowing developers to extend and customize task management features.
What benefits does task-manager-mcp offer for AI agents?
It enables AI agents to manage, prioritize, and break down complex projects into manageable tasks.
Does task-manager-mcp support subtasks?
Yes, it supports adding subtasks to main tasks for detailed project breakdown.
How secure is task-manager-mcp?
It follows MCP principles for secure, scoped, and observable model interactions.