Taskwarrior Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Taskwarrior Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol server that wraps the Taskwarrior CLI. Gives Claude (or any MCP client) structured, project-scoped access to your tasks.
Every read and write operation requires a project field. The server automatically prepends project:<name> to all Taskwarrior queries. Without this, a single task next call can dump thousands of unrelated tasks into your LLM's context — slow, expensive, and useless. An explicit all_projects boolean opt-out exists for the rare cases that genuinely need a global view.
task on $PATH)Find task-warrior-mcp on the MCP Registry and follow the installation prompt in your MCP client. No build step required.
Requires Rust (stable).
git clone https://github.com/<you>/task-warrior-mcp
cd task-warrior-mcp
cargo build --releaseThe binary lands at target/release/task-warrior-mcp.
If installed via the MCP registry, your client handles configuration automatically. For a local build:
claude mcp add --scope user taskwarrior /path/to/task-warrior-mcp/target/release/task-warrior-mcpMerge the snippet below into your claude_desktop_config.json (replace <INSTALL_DIR> with the absolute path to this repo):
{
"mcpServers": {
"taskwarrior": {
"command": "<INSTALL_DIR>/target/release/task-warrior-mcp",
"args": []
}
}
}macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json
| Tool | Required | Optional |
|---|---|---|
add_task | description, project | due, tags, priority, wait, scheduled |
list_tasks | project | filter, report, all_projects |
search_tasks | pattern, project | filter, all_projects |
get_task | id | — |
modify_task | id, modifications | — |
complete_task | id | — |
delete_task | id | — |
annotate_task | id, note | — |
today · tomorrow · eow · eom · friday · 2025-06-15 · 2025-06-15T14:30 · today+3d · later
+OVERDUE · +DUE · +TODAY · +READY · +ACTIVE · +BLOCKED · +BLOCKING · +WAITING
next (default, urgency-sorted) · list · all · completed · waiting · blocked
H (high) · M (medium) · L (low)
just build # cargo build --release
just test # run all tests (each isolated in a temp taskwarrior DB)
just lint # clippy + fmt checkOr use cargo directly:
cargo test
cargo clippy
cargo fmtA pre-push hook runs fmt + clippy + tests automatically — no setup needed after cloning.
CI runs the same checks on every push and PR via GitHub Actions.
Requires: just, gh, jq, openssl, and cargo-edit (just setup).
just setup # install cargo-edit (one-time)
just release # bump patch, build, push tag, create GitHub release, update server.json
just release minor # bump minor version
just release-version 1.2.3 # explicit version
just publish # push server.json to the MCP registry (after mcp-publisher login)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.