Skip to main content

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

Project description

Task Crusade MCP

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

Overview

Task Crusade 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
  • Progress monitoring: Track campaign progress and find actionable tasks
  • Sequential & parallel execution: Support for both single-agent and multi-agent workflows

Installation

Basic Installation (MCP Server only)

pip install task-crusader-mcp

With CLI

pip install task-crusader-mcp[cli]

With TUI

pip install task-crusader-mcp[tui]

Full Installation

pip install task-crusader-mcp[all]

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. 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
    

Available Tools

Campaign Management (12 tools)

Tool Description
campaign_create Create a new campaign
campaign_list List all campaigns
campaign_show Show campaign details with tasks
campaign_update Update campaign properties
campaign_delete Delete a campaign
campaign_get_progress_summary Get lightweight progress summary
campaign_get_next_actionable_task Get next task with dependencies met
campaign_get_all_actionable_tasks Get all actionable tasks (for parallel execution)
campaign_details Show campaign metadata
campaign_research_add Add research to campaign
campaign_research_list List campaign research
campaign_workflow_guide Get workflow guidance

Task Management (12 tools)

Tool Description
task_create Create a new task
task_list List tasks
task_show Show task details
task_update Update task properties
task_delete Delete a task
task_complete Complete a task (validates criteria)
task_acceptance_criteria_add Add acceptance criterion
task_acceptance_criteria_mark_met Mark criterion as met
task_acceptance_criteria_mark_unmet Mark criterion as unmet
task_research_add Add research to task
task_implementation_notes_add Add implementation note
task_testing_step_add Add testing step

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.

Database

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

Architecture

Task Crusade follows a clean hexagonal architecture:

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

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
  • Memory system internal: Acceptance criteria, research, and notes use an internal memory system but are not exposed as MCP tools

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

task_crusader_mcp-0.1.0.tar.gz (89.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

task_crusader_mcp-0.1.0-py3-none-any.whl (97.9 kB view details)

Uploaded Python 3

File details

Details for the file task_crusader_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: task_crusader_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 89.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for task_crusader_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3fd7fbfedcf929ff28c59bc389cbb1ee11c28f35856a02e1f2b98be7ad9a4df6
MD5 4f8bc5a0edddfe89310c9273a9476ecb
BLAKE2b-256 3859005a76548be8c6718946634c11c5b2c4bf776ef4b34a84d6b56a691ccd79

See more details on using hashes here.

Provenance

The following attestation bundles were made for task_crusader_mcp-0.1.0.tar.gz:

Publisher: publish.yml on mcrescenzo/task-crusader-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file task_crusader_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for task_crusader_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f3eb5dfd98e032ae889d80d86427975163800b7b297f2f765254f9574b28200
MD5 2d34a09ddbcad8055b5d1e57f2b09b1e
BLAKE2b-256 461cbbbd83ac501c67aa9b42dfe1c9d89a55eeee6c2d1e8910d55bb1a490471c

See more details on using hashes here.

Provenance

The following attestation bundles were made for task_crusader_mcp-0.1.0-py3-none-any.whl:

Publisher: publish.yml on mcrescenzo/task-crusader-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page