home / mcp / taskwarrior mcp server

TaskWarrior MCP Server

MCP Server for TaskWarrior!

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "awwaiid-mcp-server-taskwarrior": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-taskwarrior"
      ]
    }
  }
}

The TaskWarrior MCP Server lets you manage TaskWarrior tasks through an MCP client by delegating actions to your local TaskWarrior installation. You can view pending tasks, filter by project or tags, add new tasks with details, and mark tasks as complete, all through a consistent MCP interface.

How to use

You connect an MCP client to the TaskWarrior MCP Server to perform common TaskWarrior operations. The server runs your local task binary, so you must have TaskWarrior installed and configured on your system. The available actions are to view pending tasks, add tasks with descriptions and metadata, and mark tasks as done.

How to install

Prerequisites: ensure you have Node.js and TaskWarrior installed on your system. You will also need a working MCP client setup to talk to the server.

Install the MCP server package globally so you can expose TaskWarrior operations via MCP.

npm install -g mcp-server-taskwarrior

Configure your MCP client to connect to the TaskWarrior MCP Server using the provided example. This allows your client to issue commands like getting next tasks, adding a new task, or marking a task as done.

{
  "mcpServers": {
    "taskwarrior": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-server-taskwarrior"
      ]
    }
  }
}

Additional notes

Important: this MCP server relies on TaskWarrior maintaining task identifiers. The server uses TaskWarrior IDs to identify tasks, which may be unstable if TaskWarrior renumbers tasks when adding or removing items. Consider this when building automations.

Available tools

get_next_tasks

Retrieve all pending TaskWarrior tasks with optional filters for project and tags.

add_task

Create a new TaskWarrior task with a description and optional due date, priority, project, and tags.

mark_task_done

Mark a specified TaskWarrior task as completed using its identifier (ID or UUID).