TaskWarrior MCP Server logo

TaskWarrior MCP Server

by awwaiid

A Node.js server implementing the Model Context Protocol (MCP) for interacting with TaskWarrior. It allows viewing, filtering, adding, and completing tasks through the MCP interface.

View on GitHub

Last updated: N/A

What is TaskWarrior MCP Server?

This is a Node.js server that acts as a bridge between applications using the Model Context Protocol (MCP) and the TaskWarrior command-line task management tool. It allows applications to query, create, and manage tasks stored in TaskWarrior.

How to use TaskWarrior MCP Server?

First, install TaskWarrior and configure it on your system. Then, install the server globally using npm install -g mcp-server-taskwarrior. Configure your MCP client (e.g., Claude Desktop) to use this server by specifying the command and arguments as shown in the README. The server will then execute TaskWarrior commands based on requests from the client.

Key features of TaskWarrior MCP Server

  • View pending tasks

  • Filter tasks by project and tags

  • Add new tasks with descriptions, due dates, priorities, projects and tags

  • Mark tasks as complete

Use cases of TaskWarrior MCP Server

  • Integrating TaskWarrior with AI assistants like Claude

  • Automating task management workflows

  • Providing a standardized API for TaskWarrior access

  • Building custom task management interfaces

FAQ from TaskWarrior MCP Server

Does this server modify the TaskWarrior database directly?

Yes, it executes the task binary, which directly interacts with your TaskWarrior database.

What is MCP?

Model Context Protocol is a protocol for communication between applications, allowing them to share and manipulate data models.

Do I need to have TaskWarrior installed?

Yes, this server relies on the task command-line tool being installed and configured on your system.

What task identifiers are used?

Currently it uses task id which is an unstable identifier, but it should use UUID instead in the future.

What kind of data can I use to add a new task?

You can add description, due date (ISO timestamp), priority (H, M, or L), project name (lowercase with dots), and tags (array of lowercase strings).