Skip to main content
Glama
omniwaifu

TaskWarrior MCP Server

by omniwaifu

TaskWarrior MCP Server

TaskWarriorコマンドラインツールをラップするMCPサーバーです。タスク管理、GTDワークフロー、習慣トラッキングのための22個のツールを提供します。

ツール

基本タスク操作

  • add_task - タスクを作成。GTDフィールド(context、energy、scheduled、wait、depends)と定期タスク(recur)をサポート

  • modify_task - タスク属性を更新

  • mark_task_done - UUIDでタスクを完了

  • delete_task - UUIDでタスクを削除

  • list_tasks - フィルター(status、project、tags、dates)でタスクをクエリ

  • get_task_details - UUIDで単一タスクを取得

  • start_task - タスクのタイマーを開始

  • stop_task - タスクのタイマーを停止

  • add_annotation - タスクにメモを追加

  • remove_annotation - タスクからメモを削除

依存関係

  • add_dependency - タスクAをタスクBに依存させる

  • remove_dependency - 依存関係リンクを削除

GTDワークフロー

  • get_next_actions - コンテキスト、エネルギーレベル、利用可能な時間で実行可能なタスクをフィルタリング

  • process_inbox - 処理用に +inbox タグが付いたタスクを取得

  • get_waiting_for - 委任済み/待機中のタスクをブロッカー/日付/プロジェクトごとにグループ化して取得

  • get_blocked_tasks - 依存関係が満たされていないタスクを取得

  • get_project_status - プロジェクトのメトリクス:次のアクション、完了率、陳腐化度

  • weekly_review - GTDレビューデータ:受信箱、完了済み、停滞中のプロジェクト、習慣

  • get_someday_maybe - +someday タグが付いたタスクを取得

バッチ操作

  • create_project_tree - 1回の呼び出しで複数のタスクと依存関係を持つプロジェクトを作成

  • batch_modify_tasks - 複数のタスクに同じ変更を適用

習慣/定期タスク

  • get_recurring_tasks - 完了統計、ストリーク、頻度を含む定期タスクを取得

Related MCP server: TickTick MCP Server

要件

  • ランタイム用に Node.js 18+

  • 開発ワークフロー用に Bun 1.3+

  • TaskWarriorがインストールされ、task コマンドとして利用可能であること

インストール

bun install
bun run build

実行

bun run start

または、MCPクライアント設定で構成します:

{
  "mcpServers": {
    "taskwarrior": {
      "command": "node",
      "args": ["/path/to/taskwarrior-mcp/dist/index.js"]
    }
  }
}

Claude Desktop バンドル

このリポジトリにはClaude Desktop用のMCPBマニフェストが含まれています。

bun run mcpb:validate
bun run mcpb:pack

これにより dist/taskwarrior-mcp.mcpb が生成されます。

このバンドルにはMCPサーバーが同梱されますが、TaskWarrior自体は同梱されません。ユーザーは引き続き、ホストマシンに task をインストールしておく必要があります。デフォルト以外のセットアップでは、MCPBマニフェストはオプションの TASK_BIN および TASKRC 設定を公開します。

レスポンス形式

すべてのツールはMCP標準形式を返します:

{
  "content": [
    {
      "type": "text",
      "text": "{\"tasks\": [...], \"metadata\": {...}, \"insights\": {...}}"
    }
  ]
}

GTDツールは、以下を含む拡張レスポンスを返します:

  • tasks - タスクオブジェクトの配列

  • metadata - カウント(total、actionable、blocked、waiting、completed)

  • insights - 概要、推奨事項、警告

  • groups - プロジェクト/コンテキスト/頻度でグループ化されたタスク

  • relationships - 依存関係チェーン(該当する場合)

GTD機能

タスクフィールド

  • scheduled - 作業を開始する日付

  • wait - 日付まで非表示(延期)

  • until - 日付が過ぎるとタスクが期限切れになる

  • context - GTDコンテキスト(@home、@work、@phone)

  • energy - 必要なエネルギーレベル(H/M/L)

  • depends - このタスクが依存するタスクUUIDの配列

  • parent - 親タスクのUUID

  • recur - 繰り返しパターン(daily、weekly、monthlyなど)

  • tags - 英字、数字、_、-。タグの書き込みはTaskwarriorの tags: 属性を使用し、タグのフィルタリングは tags.has: を使用します。これは +tag の短縮形がハイフンを拒否し、代わりに説明文を黙って書き換えるためです。

定期タスク

recur を due と一緒に設定すると、習慣を作成できます:

{
  "description": "Take vitamins",
  "recur": "daily",
  "due": "today",
  "context": "@morning"
}

TaskWarriorはインスタンスを生成するテンプレートタスク(status:recurring)を作成します。get_recurring_tasks を使用すると、完了率とストリークを確認できます。

開発

bun run typecheck  # Type check source
bun run lint       # Lint source
bun run test       # Run integration tests against disposable Taskwarrior data
bun run build      # Build dist/
bun run check      # Run typecheck, lint, tests, and build

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers