Python tools for managing markdown task cards with MCP integration
Project description
CopilotTaskMaster
Markdown-based task management for humans and AI agents. Manage tasks via CLI or MCP (Model Context Protocol).
Features
- Project-Scoped: All tasks are organized by project folders.
- Agent Optimized: Token-efficient responses designed for LLM integration.
- Markdown First: Tasks are stored as plain
.mdfiles with YAML frontmatter. - Dual Interface: Full parity between CLI and MCP server tools.
- Hierarchical: Supports nested subpaths and tag-based filtering.
Installation
From Source
git clone https://github.com/geekbozu/CopilotTaskMaster.git
cd CopilotTaskMaster
pip install -e .
Via Docker
Pull the pre-built image from GHCR:
docker pull ghcr.io/geekbozu/copilottaskmaster:latest
Or build locally:
docker build -t taskmaster .
Usage
CLI Basics
All operations require a project scope, either via --project or as a path prefix.
# Create
taskmaster create backend/login.md "Implement Auth" --status open --priority high
# List & Search
taskmaster list --project backend
taskmaster search --query "Auth" --status open
taskmaster tags --project backend # list tags for a project (omit --project to list all tags)
# Update & Move
taskmaster update backend/login.md --status in-progress
taskmaster move backend/login.md backend/completed/login.md
# Show Structure
# Show the whole workspace tree
taskmaster tree
# Show tree scoped to a project
taskmaster tree --project backend
MCP Server (VS Code)
Enable task management tools in VS Code by adding the server to your settings:
{
"servers ": {
"taskmaster": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "${workspaceFolder}/tasks:/tasks",
"ghcr.io/geekbozu/copilottaskmaster:latest",
"mcp-server"
]
}
}
}
Available Tools: create_task, read_task, update_task, delete_task, list_tasks, search_tasks, move_task, get_structure, get_all_tags.
Tool details (selected):
get_structure(subpath: str = "", project: Optional[str] = None): Return hierarchical folder/task structure. Whenprojectis provided, the structure is scoped to that project (raises ValueError if the project does not exist).get_all_tags(project: Optional[str] = None): Return the set of tags used across tasks. Whenprojectis provided, tags are collected only from that project's tasks (returns empty set if the project does not exist).
Task Format
Tasks are standard Markdown files:
---
title: Implement Auth
status: open
priority: high
tags: [auth, security]
---
# Implementation Details
- [ ] Setup JWT
- [ ] Hash Passwords
Configuration
TASKMASTER_TASKS_DIR: Path to storage (default:./tasks).- Use
--tasks-diron any CLI command to override.
Development
pytest # Run tests
black taskmaster/ # Format code
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file copilottaskmaster-0.1.0.tar.gz.
File metadata
- Download URL: copilottaskmaster-0.1.0.tar.gz
- Upload date:
- Size: 20.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3307fb31f390878883b42054c55f37350e1e7b031cb7a5633e92a8348da348e6
|
|
| MD5 |
a63740c0455e648f316c6f2a4ffb1f4d
|
|
| BLAKE2b-256 |
a30ad052a31efba3fcf3487907732326ddefd35451f898185aea8ee4d70f345d
|
Provenance
The following attestation bundles were made for copilottaskmaster-0.1.0.tar.gz:
Publisher:
publish-pypi.yml on geekbozu/CopilotTaskMaster
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
copilottaskmaster-0.1.0.tar.gz -
Subject digest:
3307fb31f390878883b42054c55f37350e1e7b031cb7a5633e92a8348da348e6 - Sigstore transparency entry: 907434821
- Sigstore integration time:
-
Permalink:
geekbozu/CopilotTaskMaster@88eb633630b4ef79a44548d1cf23fbb84b0f2283 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/geekbozu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@88eb633630b4ef79a44548d1cf23fbb84b0f2283 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file copilottaskmaster-0.1.0-py3-none-any.whl.
File metadata
- Download URL: copilottaskmaster-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a15e9323a0aa1fa4c640c5179eb71fdbe98707b346fee988fc03ee2f8392869
|
|
| MD5 |
f18e9edd51b7e306cd3b1d8021e5a3ec
|
|
| BLAKE2b-256 |
bddbe36626fab7946d1eb5b210fa30eb1ccb809baf37dd8c9b8ce1401adfc308
|
Provenance
The following attestation bundles were made for copilottaskmaster-0.1.0-py3-none-any.whl:
Publisher:
publish-pypi.yml on geekbozu/CopilotTaskMaster
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
copilottaskmaster-0.1.0-py3-none-any.whl -
Subject digest:
5a15e9323a0aa1fa4c640c5179eb71fdbe98707b346fee988fc03ee2f8392869 - Sigstore transparency entry: 907434825
- Sigstore integration time:
-
Permalink:
geekbozu/CopilotTaskMaster@88eb633630b4ef79a44548d1cf23fbb84b0f2283 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/geekbozu
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-pypi.yml@88eb633630b4ef79a44548d1cf23fbb84b0f2283 -
Trigger Event:
workflow_dispatch
-
Statement type: