Task Crusader MCP

Task Crusader MCP

A campaign and task management MCP server for AI coding assistants, enabling dependency tracking, acceptance criteria, testing strategies, and progress monitoring for projects.

Category
Visit Server

README

Task Crusader MCP

[!WARNING] This project is no longer maintained. I originally built Task Crusader to solve the problem of tracking long-running task and project lists for AI-assisted development. Since then, most major AI coding agents have added robust built-in task management, and this project is no longer particularly useful in practice.

Your AI coding assistant's quest companion - campaign and task management via MCP.

Overview

Task Crusader is a campaign and task management system designed for AI coding assistants. It provides a Model Context Protocol (MCP) server that enables AI agents like Claude, Cursor, and others to organize work into campaigns (projects) and tasks with:

  • Dependency tracking: Tasks can depend on other tasks
  • Acceptance criteria: Define completion requirements for each task
  • Testing strategy: Document verification approaches for tasks
  • Research & notes: Capture findings and implementation details
  • Progress monitoring: Track campaign progress and find actionable tasks
  • Quality hints: Context-aware guidance for campaign setup and execution
  • Sequential & parallel execution: Support for both single-agent and multi-agent workflows

alt text

Installation

pip install task-crusader-mcp

Task Crusader installs with all features by default:

  • MCP Server: Core campaign/task management for AI assistants (63 tools)
  • CLI: Command-line interface (crusader command)
  • TUI: Terminal user interface (crusader-tui command)

Advanced users needing minimal installs can use pip install --no-deps task-crusader-mcp and manually specify dependencies.

Quick Start

1. Configure Your AI Assistant

Add to your MCP client configuration (e.g., Claude Desktop claude_desktop_config.json):

{
  "mcpServers": {
    "task-crusade": {
      "command": "crusader-mcp"
    }
  }
}

Or for Cursor (.cursor/mcp.json):

{
  "mcpServers": {
    "task-crusade": {
      "command": "crusader-mcp"
    }
  }
}

2. Basic Workflow

  1. Create a campaign:

    campaign_create(name="My Project")
    
  2. Add tasks:

    task_create(title="Implement feature", campaign_id="...")
    
  3. Add acceptance criteria:

    task_acceptance_criteria_add(task_id="...", content="Unit tests pass")
    
  4. Add testing strategy:

    task_testing_strategy_add(task_id="...", content="Run pytest with coverage")
    
  5. Execute the task loop:

    while campaign not complete:
        1. campaign_get_next_actionable_task(campaign_id) -> get next task
        2. task_update(task_id, status="in-progress") -> claim task
        3. [Implement the task]
        4. task_acceptance_criteria_mark_met(criteria_id) -> mark criteria met
        5. task_complete(task_id) -> complete task
    

3. Bulk Campaign Creation (Recommended)

For new projects, use campaign_create_with_tasks to create everything atomically:

campaign_create_with_tasks(campaign_json='{
  "campaign": {"name": "Auth System", "priority": "high"},
  "tasks": [
    {"temp_id": "setup", "title": "Setup environment", "acceptance_criteria": ["Dev server runs"]},
    {"temp_id": "impl", "title": "Implement login", "dependencies": ["setup"]},
    {"temp_id": "test", "title": "Integration tests", "dependencies": ["impl"]}
  ]
}')

Available Tools (63 total)

Campaign Management (21 tools)

Category Tools
Core CRUD campaign_create, campaign_list, campaign_show, campaign_update, campaign_delete
Progress & Actions campaign_get_progress_summary, campaign_get_next_actionable_task, campaign_get_all_actionable_tasks, campaign_overview, campaign_details
Bulk & Workflow campaign_create_with_tasks, campaign_validate_readiness, campaign_workflow_guide, campaign_get_state_snapshot, campaign_renumber_tasks
Research campaign_research_add, campaign_research_list, campaign_research_show, campaign_research_update, campaign_research_delete, campaign_research_reorder

Task Management (42 tools)

Category Tools
Core CRUD task_create, task_list, task_show, task_update, task_delete, task_complete
Acceptance Criteria task_acceptance_criteria_add, task_acceptance_criteria_mark_met, task_acceptance_criteria_mark_unmet, task_acceptance_criteria_list, task_acceptance_criteria_show, task_acceptance_criteria_update, task_acceptance_criteria_delete, task_acceptance_criteria_reorder
Testing Strategy task_testing_strategy_add, task_testing_strategy_list, task_testing_strategy_show, task_testing_strategy_update, task_testing_strategy_delete, task_testing_strategy_mark_passed, task_testing_strategy_mark_failed, task_testing_strategy_mark_skipped, task_testing_strategy_reorder, task_testing_step_add
Research task_research_add, task_research_list, task_research_show, task_research_update, task_research_delete, task_research_reorder
Implementation Notes task_implementation_notes_add, task_implementation_notes_list, task_implementation_notes_show, task_implementation_notes_update, task_implementation_notes_delete, task_implementation_notes_reorder
Search & Analytics task_search, task_stats, task_get_dependency_info
Bulk & Workflow task_bulk_update, task_create_from_template, task_complete_with_workflow

CLI Usage

# Create a campaign
crusader campaign create "My Project" --description "My awesome project"

# List campaigns
crusader campaign list

# Show campaign details
crusader campaign show <campaign-id>

# Create a task
crusader task create "Implement feature" --campaign <campaign-id>

# Show task details
crusader task show <task-id>

# Update task status
crusader task update <task-id> --status in-progress

TUI Usage

crusader-tui

This opens an interactive terminal interface for browsing campaigns and tasks with keyboard navigation, filtering, and bulk operations.

Database

By default, Task Crusader stores data in ~/.crusader/database.db. You can configure a custom path by setting the CRUSADER_DB_PATH environment variable.

Architecture

Task Crusader follows a clean hexagonal architecture:

MCP Server → Service Layer → Repository Layer → SQLite Database
                  ↓
            Domain Layer (DTOs, Result Types, Hints)

Key design decisions:

  • Direct service calls: MCP tools call services directly (no CLI subprocess overhead)
  • Result pattern: All operations return DomainResult for explicit error handling
  • Context-aware hints: Operations return guidance hints for next actions
  • Memory system internal: Acceptance criteria, research, notes, and testing steps use an internal memory system

Contributing

Contributions are welcome! Before pushing, run the CI checks locally:

./scripts/check_ci.sh

This runs:

  1. Linting with ruff check src/ tests/
  2. Tests with coverage: pytest --cov --cov-fail-under=65
  3. Optional type checking: mypy src/

See CONTRIBUTING.md for detailed guidelines.

License

MIT License - see LICENSE file for details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured