MCP タスクマネージャー
MCPタスクマネージャー( npmパッケージ:taskqueue-mcp )は、AIタスク管理のためのモデルコンテキストプロトコル(MCP)サーバーです。このツールは、AIアシスタントが複数ステップのタスクを構造的に処理するのを支援し、オプションでユーザー承認チェックポイントも設定できます。
特徴
- 複数のステップによるタスク計画
- 進捗状況の追跡
- 完了したタスクのユーザー承認
- プロジェクト完了承認
- タスク詳細の視覚化
- タスクステータス状態管理
- タスクの検査と管理のための拡張CLI
基本設定
通常、Claude Desktop、Cursor、またはその他の MCP クライアントでツール構成を次のように設定します。
CLI ユーティリティを使用するには、次のコマンドを使用できます。
使用可能なコマンドとオプションが表示されます。
詳細設定
タスクマネージャーは、プロジェクト計画を生成するための複数のLLMプロバイダーをサポートしています。使用するプロバイダーに応じて、以下の環境変数を1つ以上設定できます。
OPENAI_API_KEY
: OpenAIモデル(例:GPT-4)を使用するために必要GOOGLE_GENERATIVE_AI_API_KEY
: GoogleのGeminiモデルを使用するために必要DEEPSEEK_API_KEY
: Deepseekモデルを使用するために必要
CLI を使用してプロジェクト プランを生成するには、シェルで次の環境変数を設定します。
または、MCP クライアント構成にそれらを含めて、MCP ツール呼び出しを使用してプロジェクト プランを生成することもできます。
利用可能なMCPツール
TaskManager は、各操作に固有の専用ツールを備えた直接ツール インターフェイスを使用するようになりました。
プロジェクト管理ツール
list_projects
: システム内のすべてのプロジェクトを一覧表示しますread_project
: 特定のプロジェクトの詳細を取得しますcreate_project
: 初期タスクを含む新しいプロジェクトを作成するdelete_project
: プロジェクトを削除するadd_tasks_to_project
: 既存のプロジェクトに新しいタスクを追加しますfinalize_project
: すべてのタスクが完了したらプロジェクトを確定します
タスク管理ツール
list_tasks
: 特定のプロジェクトのすべてのタスクを一覧表示しますread_task
: 特定のタスクの詳細を取得するcreate_task
: プロジェクトに新しいタスクを作成するupdate_task
: タスクのプロパティ(タイトル、説明、ステータス)を変更しますdelete_task
: プロジェクトからタスクを削除しますapprove_task
: 完了したタスクを承認するget_next_task
: プロジェクト内の次の保留中のタスクを取得しますmark_task_done
: タスクを詳細とともに完了としてマークします
タスクのステータスとワークフロー
タスクには、次のいずれかのステータス フィールドがあります。
not started
: タスクはまだ開始されていませんin progress
: タスクは現在作業中ですdone
: タスクが完了しました(completedDetails
が必要です)
ステータス遷移ルール
システムは、タスク ステータスの遷移に対して次のルールを適用します。
- タスクは、定義された有効な遷移を持つ特定のワークフローに従います。
not started
から:in progress
にのみ移動できますin progress
から:done
に移動するか、not started
に戻すことができますdone
から: 追加作業が必要な場合はin progress
に戻すことができます
- タスクが「完了」とマークされた場合、完了した内容を文書化するために
completedDetails
フィールドを提供する必要があります。 - 承認されたタスクは変更できません
- プロジェクトは、すべてのタスクが完了して承認された場合にのみ承認されます。
これらのルールは、タスクの進行状況の整合性を維持し、完了した作業の適切な文書化を保証するのに役立ちます。
使用ワークフロー
このタスク マネージャーを使用する LLM の一般的なワークフローは次のようになります。
create_project
: 初期タスクでプロジェクトを開始するget_next_task
: 最初の保留中のタスクを取得する- タスクに取り組む
mark_task_done
: タスクを詳細とともに完了としてマークする- 承認を待つ(ユーザーはCLI経由で
approve_task
を呼び出す必要があります) get_next_task
: 次の保留中のタスクを取得する- すべてのタスクが完了するまで手順3~6を繰り返します
finalize_project
: プロジェクトを完了する(ユーザーの承認が必要)
CLIコマンド
タスク承認
タスクの承認は、CLI コマンドを通じてユーザーによってのみ制御されます。
オプション:
-f, --force
: タスクが完了としてマークされていない場合でも承認を強制する
注意: タスクは、承認される前に完了した詳細とともに「完了」としてマークされる必要があります (--force を使用していない場合)。
タスクとプロジェクトの一覧表示
CLI には、すべてのプロジェクトとタスクを一覧表示するコマンドが用意されています。
特定のプロジェクトの詳細を表示するには:
このコマンドは、システム内のすべてのプロジェクトまたは特定のプロジェクトに関する次のような情報を表示します。
- プロジェクトIDと初期プロンプト
- 完了ステータス
- タスクの詳細(タイトル、説明、ステータス、承認)
- 進捗指標(承認済み/完了済み/合計タスク)
データスキーマとストレージ
ファイルの場所
タスク マネージャーは、サーバーと CLI の両方からアクセスできる必要がある JSON ファイルにデータを保存します。
デフォルトのプラットフォーム固有の場所は次のとおりです。
- Linux :
~/.local/share/taskqueue-mcp/tasks.json
- macOS :
~/Library/Application Support/taskqueue-mcp/tasks.json
- Windows :
%APPDATA%\taskqueue-mcp\tasks.json
タスクデータの保存にカスタムファイルパスを使用することは推奨されません。MCPサーバーとCLIの両方に同じパスを設定する必要があるため、相互に連携できなくなります。カスタムパスを使用したい場合は、MCPクライアント設定でTASK_MANAGER_FILE_PATH
環境変数を設定できます。
次に、CLI を実行する前に、シェルで同じパスをエクスポートする必要があります。
データスキーマ
JSON ファイルは次の構造を使用します。
ライセンス
マサチューセッツ工科大学
You must be authenticated.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
構造化されたタスク キューを使用して「クロードを飼いならす」ための MCP サーバー。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityModel Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.Last updated -1032228JavaScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that allows Claude Desktop to manage and execute tasks in a queue-based system, supporting planning, execution, and completion phases.Last updated -3222TypeScriptMIT License
- -security-license-qualityAn MCP server that enables Claude and other MCP clients to interact with Mattermost workspaces, providing channel management, messaging capabilities, and topic monitoring functionality.Last updated -TypeScript
- AsecurityFlicenseAqualityAn MCP server that leverages multiple Claude instances to provide enhanced responses by sending the same prompt to two separate instances and using a third to combine or select the best elements.Last updated -1JavaScript