タスクマネージャー MCP サーバー
タスクとプロジェクトを管理するためのモデルコンテキストプロトコル(MCP)サーバーのテンプレート実装です。このサーバーは、プロジェクトの編成、タスクの追跡、PRD解析をサポートする包括的なタスク管理システムを提供します。
概要
このプロジェクトでは、AIエージェントがタスク管理、プロジェクトの進捗状況の追跡、製品要件ドキュメント(PRD)を実行可能なタスクに分解できるようにするMCPサーバーの構築方法を説明します。これは、タスク管理機能を備えた独自のMCPサーバーを作成するための実用的なテンプレートとして役立ちます。
この実装は、MCP サーバーの構築に関して Anthropic が示したベスト プラクティスに従っており、MCP 互換のあらゆるクライアントとのシームレスな統合を可能にします。
Related MCP server: TODO MCP Server
特徴
サーバーはいくつかの重要なタスク管理ツールを提供します。
タスク管理
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ファイルでは次の環境変数を設定できます。
変数 | 説明 | 例 |
| トランスポートプロトコル(sse または stdio) |
|
| SSEトランスポートを使用するときにバインドするホスト |
|
| SSE トランスポートを使用するときにリッスンするポート |
|
サーバーの実行
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タスクマネージャーの使用
新しいプロジェクトの作成
プロジェクトのタスク ファイルを作成します。
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 トランスポートの場合は、次の構成を使用します。
{
"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()デコレータを使用して新しいタスク管理ツールを追加するカスタムタスク分析および自動化機能を実装する
プロジェクト固有のタスクテンプレートとワークフローを追加する
既存の開発ツールやプロセスと統合