Task Manager MCP Server について
Task Manager MCP Server は、プロジェクトとタスクを管理するための MCP サーバーのテンプレートです。タスク管理系の MCP サーバーを構築する開発者が出発点として利用でき、PRD をタスクに分解できます。
主な機能
- 01プロジェクトのタスクファイルとタスクの作成
- 02タスクとサブタスクのステータス更新
- 03PRD からのタスク生成
- 04タスクの分割と複雑度の見積もり
活用シーン
- 01PRD からプロジェクトのタスク一覧を生成
- 02AI エージェントによる次のタスクの確認と進行
- 03カスタムのタスク管理 MCP サーバーの基盤
MCP 対応
本プロジェクトは MCP サーバーであり、@mcp.tool() デコレーターを使ってタスク管理ツールを MCP クライアントに公開します。SSE と stdio のトランスポートに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Task Manager MCP Server
タスクとプロジェクトを管理するための、Model Context Protocol (MCP) サーバーのテンプレート実装です。このサーバーは、プロジェクトの整理、タスクの追跡、PRD の解析に対応した包括的なタスク管理システムを提供します。
概要
このプロジェクトは、AI エージェントがタスクを管理し、プロジェクトの進捗を追跡し、製品要件定義書(PRD)を実行可能なタスクに分解できる MCP サーバーの構築方法を示します。タスク管理機能を備えた独自の MCP サーバーを作成するための、実用的なテンプレートとして利用できます。
この実装は、MCP サーバー構築に関して Anthropic が示すベストプラクティスに従っており、あらゆる MCP 対応クライアントとシームレスに連携できます。
機能
このサーバーは、次のような重要なタスク管理ツールを提供します。
-
タスク管理
create_task_file:新しいプロジェクトタスクファイルを作成しますadd_task:説明とサブタスクを指定して、プロジェクトにタスクを追加しますupdate_task_status:タスクとサブタスクのステータスを更新しますget_next_task:プロジェクトから次の未完了タスクを取得します
-
プロジェクト計画
parse_prd:PRD を構造化されたタスクに自動変換しますexpand_task:タスクを、より小さく管理しやすいサブタスクに分解しますestimate_task_complexity:タスクの複雑さと所要時間を見積もりますget_task_dependencies:タスクの依存関係を追跡します
-
開発サポート
generate_task_file:タスクの説明に基づいてファイルテンプレートを生成しますsuggest_next_actions:AI を活用した次のステップの提案を取得します
前提条件
- Python 3.12 以降
- 選択した LLM プロバイダー(OpenAI、OpenRouter、または Ollama)の API キー
- MCP サーバーをコンテナーとして実行する場合は Docker(推奨)
インストール
uv を使用する場合
-
uv がインストールされていない場合は、インストールします。
pip install uv -
このリポジトリをクローンします。
git clone https://github.com/coleam00/mcp-mem0.git cd mcp-mem0 -
依存関係をインストールします。
uv pip install -e . -
.env.exampleを基に.envファイルを作成します。cp .env.example .env -
.envファイルで環境変数を設定します(「設定」セクションを参照)。
Docker を使用する場合(推奨)
-
Docker イメージをビルドします。
docker build -t mcp/mem0 --build-arg PORT=8050 . -
.env.exampleを基に.envファイルを作成し、環境変数を設定します。
設定
.env ファイルでは、次の環境変数を設定できます。
| 変数 | 説明 | 例 |
|---|---|---|
TRANSPORT | トランスポートプロトコル(sse または stdio) | sse |
HOST | SSE トランスポート使用時にバインドするホスト | 0.0.0.0 |
PORT | SSE トランスポート使用時にリッスンするポート | 8050 |
サーバーの実行
Python 3 を使用する場合
# Set TRANSPORT=sse in .env then:
python3 src/main.py
サーバーは設定されたホストとポートで起動します(デフォルト:http://0.0.0.0:8050)。
Docker を使用する場合
docker build -t task-manager-mcp .
docker run --env-file .env -p 8050:8050 task-manager-mcp
Task Manager の使用方法
新しいプロジェクトの作成
- プロジェクトのタスクファイルを作成します。
await mcp.create_task_file(project_name="my-project")
- プロジェクトにタスクを追加します。
await mcp.add_task(
project_name="my-project",
title="Setup Development Environment",
description="Configure the development environment with required tools",
subtasks=[
"Install dependencies",
"Configure linters",
"Set up testing framework"
]
)
- PRD を解析して、タスクを自動作成します。
await mcp.parse_prd(
project_name="my-project",
prd_content="# Your PRD content..."
)
タスクの管理
- タスクのステータスを更新します。
await mcp.update_task_status(
project_name="my-project",
task_title="Setup Development Environment",
subtask_title="Install dependencies",
status="done"
)
- 次に取り組むタスクを取得します。
next_task = await mcp.get_next_task(project_name="my-project")
- タスクをサブタスクに分解します。
await mcp.expand_task(
project_name="my-project",
task_title="Implement Authentication"
)
開発ワークフロー
- タスクのファイルテンプレートを生成します。
await mcp.generate_task_file(
project_name="my-project",
task_title="User Authentication"
)
- タスクの複雑さの見積もりを取得します。
complexity = await mcp.estimate_task_complexity(
project_name="my-project",
task_title="User Authentication"
)
- 次のアクションの提案を取得します。
suggestions = await mcp.suggest_next_actions(
project_name="my-project",
task_title="User Authentication"
)
MCP クライアントとの連携
SSE の設定
SSE トランスポートを使用してサーバーに接続するには、次の設定を使用します。
{
"mcpServers": {
"task-manager": {
"transport": "sse",
"url": "http://localhost:8050/sse"
}
}
}
Stdio の設定
stdio トランスポートには、次の設定を使用します。
{
"mcpServers": {
"task-manager": {
"command": "python3",
"args": ["src/main.py"],
"env": {
"TRANSPORT": "stdio",
"LLM_PROVIDER": "openai",
"LLM_API_KEY": "YOUR-API-KEY",
"LLM_CHOICE": "gpt-4"
}
}
}
}
独自のサーバーの構築
このテンプレートは、より複雑なタスク管理 MCP サーバーを構築するための基盤となります。拡張するには、次の手順を実行します。
@mcp.tool()デコレーターを使用して、新しいタスク管理ツールを追加します- 独自のタスク分析機能と自動化機能を実装します
- プロジェクト固有のタスクテンプレートとワークフローを追加します
- 既存の開発ツールやプロセスと連携します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。