Skip to main content
Glama
azamafridi23

Task Tracker MCP Server

by azamafridi23

📋 タスクトラッカー MCP サーバー

Python 3.10+ FastMCP uv License: MIT

Python で FastMCP を使用し、uv で管理された実用的な Model Context Protocol (MCP) サーバーです。このサーバーは、AI アシスタント(Claude Desktop、Cursor、Antigravity など)に構造化されたタスク管理機能を提供します。


🌟 概要

Model Context Protocol (MCP) は、LLM や AI アプリケーションが外部ツールやデータソースと安全かつシームレスに連携できるようにするオープンスタンダードです。

このプロジェクトは、MCP の 3 つのコアプリミティブを実装しています。

  • 🛠️ ツール: モデルがアクションを実行できる呼び出し可能な関数(add_taskcomplete_taskdelete_task)。

  • 📦 リソース: モデルが状態を検査できる読み取り専用のデータ URI(tasks://alltasks://pending)。

  • 💡 プロンプト: AI に複雑なワークフロー(例:タスク分析と優先順位付け)を実行させるための定義済みプロンプトテンプレート。

flowchart LR
    Host["AI Host / Application<br/>(Claude Desktop / Cursor / Antigravity)"] 
    Client["MCP Client<br/>(Protocol Handler)"]
    Server["Task Tracker MCP Server<br/>(FastMCP)"]
    
    Host <--> Client
    Client <--> Server
    
    subgraph ServerCapabilities ["Server Capabilities"]
        Tools["🛠️ Tools<br/>add_task, complete_task, delete_task"]
        Resources["📦 Resources<br/>tasks://all, tasks://pending"]
        Prompts["💡 Prompts<br/>task_summary_prompt"]
    end
    
    Server --- ServerCapabilities

🚀 機能と MCP プリミティブ

1. ツール(アクション)

ツール

引数

説明

add_task

title: strdescription: str = ""

一意の ID と ISO タイムスタンプを持つ新しいタスクを追加します。

complete_task

task_id: int

タスクのステータスを "completed" に変更し、完了タイムスタンプを追加します。

delete_task

task_id: int

ID でタスクを削除し、削除されたオブジェクトを返します。

2. リソース(読み取り専用データ)

リソース URI

説明

tasks://all

すべてのタスクを絵文字( は完了、 は保留中)でフォーマットして返します。

tasks://pending

アクティブ/保留中のタスクのみをフィルタリングして返します。

3. プロンプト(ガイド付きワークフロー)

プロンプト

説明

task_summary_prompt

AI アシスタントが保留中と完了したタスクを分析し、期限切れの項目を特定し、tasks://all を使用して次のアクションを推奨するようにガイドします。


📦 uv を使ったはじめ方

このプロジェクトは、Astral 社が Rust で開発した非常に高速な Python パッケージ兼プロジェクトマネージャーである uv を使用して構築・管理されています。

1. uv のインストール

macOS / Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

インストールの確認:

uv --version

2. リポジトリのクローンとセットアップ

git clone https://github.com/<your-username>/task-tracker-mcp.git
cd task-tracker-mcp

3. 依存関係のインストール

uv は自動的に仮想環境(.venv)を作成し、必要な依存関係をすべてインストールします:

uv sync

🧪 サーバーのテスト

組み込みの非同期クライアント(test_client.py)を実行できます。これはすべてのツール、リソース、プロンプトを実行します:

uv run test_client.py

期待される出力:

🚀 Starting FastMCP Test Client...
==================================================

1. Listing Available Tools:
   Found 3 tools: ['add_task', 'complete_task', 'delete_task']

2. Calling 'add_task' Tool:
   Task 1 Response: {"id":1,"title":"Learn MCP", ...}
   Task 2 Response: {"id":2,"title":"Master uv", ...}

3. Listing Available Resources:
   Found 2 resources: [AnyUrl('tasks://all'), AnyUrl('tasks://pending')]

4. Reading 'tasks://all' Resource:
   Current Tasks:
   ⏳ [1] Learn MCP
   ⏳ [2] Master uv

5. Completing Task ID 1:
   Completed Result: {"id":1, "status":"completed", ...}

6. Reading 'tasks://pending' Resource:
   Pending Tasks:
   ⏳ [2] Master uv

7. Listing Available Prompts:
   Found 1 prompts: ['task_summary_prompt']

8. Deleting Task ID 2:
   Delete Result: {"success": true, "deleted": {"id": 2, ...}}

==================================================
✨ All MCP Server tests completed successfully!

🔌 接続と検査

1. FastMCP CLI インスペクターと開発ツール

FastMCP 3.x には、サーバーを検査およびデバッグするための組み込み CLI コマンドが用意されています:

  • インタラクティブ Web インスペクター:

    uv run fastmcp dev inspector task_server.py
  • サーバーサマリーの検査:

    uv run fastmcp inspect task_server.py
  • すべてのツールの一覧表示:

    uv run fastmcp list task_server.py
  • スタンドアロンサーバーの実行:

    uv run fastmcp run task_server.py

2. Claude Desktop との統合

サーバー設定を claude_desktop_config.json に追加します:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "task-tracker": {
      "command": "uv",
      "args": [
        "--directory",
        "/ABSOLUTE/PATH/TO/task-tracker-mcp",
        "run",
        "task_server.py"
      ]
    }
  }
}

📁 プロジェクト構造

Task Tracker MCP/
├── pyproject.toml         # Dependency & project metadata (managed by uv)
├── task_server.py         # MCP Server definitions (tools, resources, prompts)
├── test_client.py         # FastMCP async automated test client
├── src/
│   └── task_tracker_mcp/  # Python package entrypoint
│       └── __init__.py
├── .python-version        # Locked Python version
├── .gitignore             # Python & uv exclusions
└── README.md              # Documentation

💡 主要な uv コマンド早見表

コマンド

説明

uv init

pyproject.toml で新しい Python プロジェクトを初期化します

uv add <pkg>

依存関係を pyproject.toml に追加し、.venv にインストールします

uv remove <pkg>

依存関係を削除します

uv run <script.py>

分離されたプロジェクト環境内で任意の Python スクリプトを実行します

uv sync

uv.lock とインストール済みパッケージを同期します

uv venv

仮想環境を明示的に作成します


🛠️ 次のステップと拡張

  • 永続ストレージ: インメモリリストを aiosqlite または sqlite3 を使用した SQLite に置き換えます。

  • 優先度と期限: タスクの優先度フラグ(lowmediumhigh)と期限フィルターを追加します。

  • 検索ツール: タイトルと説明を検索する search_tasks(query: str) ツールを追加します。

  • 認証: FastMCP 認証プロバイダーでエンドポイントを保護します。


📄 ライセンス

このプロジェクトは MIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルを参照してください。

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Manage your MakeMeBetter AI tasks, habits, and goals from your AI assistant.

  • Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.

  • Schedule tasks for later from your AI agent: reminders, delayed webhooks, recurring jobs.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/azamafridi23/task-tracker-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server