Skip to main content
Glama
azamafridi23

Task Tracker MCP Server

by azamafridi23

📋 Task Tracker MCP Server

Python 3.10+ FastMCP uv License: MIT

Ein praktischer Model Context Protocol (MCP)-Server, gebaut in Python mit FastMCP und verwaltet mit uv. Dieser Server bietet KI-Assistenten (wie Claude Desktop, Cursor, Antigravity usw.) strukturierte Aufgabenverwaltungsfunktionen.


🌟 Überblick

Das Model Context Protocol (MCP) ist ein offener Standard, der LLMs und KI-Anwendungen eine sichere und nahtlose Interaktion mit externen Tools und Datenquellen ermöglicht.

Dieses Projekt implementiert die drei Kern-MCP-Primitiven:

  • 🛠️ Tools: Aufrufbare Funktionen, die es dem Modell ermöglichen, Aktionen auszuführen (add_task, complete_task, delete_task).

  • 📦 Resources: Schreibgeschützte Daten-URIs, die es dem Modell ermöglichen, den Zustand zu inspizieren (tasks://all, tasks://pending).

  • 💡 Prompts: Vordefinierte Prompt-Vorlagen, die die KI anleiten, komplexe Arbeitsabläufe durchzuführen (z. B. Aufgabenanalyse und Priorisierung).

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

🚀 Funktionen & MCP-Primitiven

1. Tools (Aktionen)

Tool

Argumente

Beschreibung

add_task

title: str, description: str = ""

Fügt eine neue Aufgabe mit einer eindeutigen ID und einem ISO-Zeitstempel hinzu.

complete_task

task_id: int

Markiert den Status einer Aufgabe als "completed" und fügt einen Abschlusszeitstempel hinzu.

delete_task

task_id: int

Entfernt eine Aufgabe anhand ihrer ID und gibt das gelöschte Objekt zurück.

2. Resources (Schreibgeschützte Daten)

Resource-URI

Beschreibung

tasks://all

Formatiert und gibt alle Aufgaben mit Emojis zurück ( für erledigt, für ausstehend).

tasks://pending

Filtert und gibt nur aktive/ausstehende Aufgaben zurück.

3. Prompts (Geführte Arbeitsabläufe)

Prompt

Beschreibung

task_summary_prompt

Führt den KI-Assistenten, um ausstehende versus erledigte Aufgaben zu analysieren, überfällige Elemente zu identifizieren und nächste Aktionen unter Verwendung von tasks://all zu empfehlen.


📦 Erste Schritte mit uv

Dieses Projekt wurde mit uv erstellt und verwaltet, einem extrem schnellen Python-Paket- und Projektmanager, der in Rust von Astral geschrieben wurde.

1. uv installieren

macOS / Linux:

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

Windows:

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

Installation überprüfen:

uv --version

2. Repository klonen und einrichten

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

3. Abhängigkeiten installieren

uv erstellt automatisch eine virtuelle Umgebung (.venv) und installiert alle erforderlichen Abhängigkeiten:

uv sync

🧪 Server testen

Sie können den integrierten asynchronen Client (test_client.py) ausführen, der jedes Tool, jede Resource und jeden Prompt ausführt:

uv run test_client.py

Erwartete Ausgabe:

🚀 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!

🔌 Verbinden und Inspizieren

1. FastMCP CLI Inspector & Entwicklungs-Tools

FastMCP 3.x bietet integrierte CLI-Befehle zum Inspizieren und Debuggen Ihres Servers:

  • Interaktiver Web-Inspektor:

    uv run fastmcp dev inspector task_server.py
  • Server-Zusammenfassung inspizieren:

    uv run fastmcp inspect task_server.py
  • Alle Tools auflisten:

    uv run fastmcp list task_server.py
  • Standalone-Server ausführen:

    uv run fastmcp run task_server.py

2. Claude Desktop-Integration

Fügen Sie die Serverkonfiguration zu Ihrer claude_desktop_config.json hinzu:

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"
      ]
    }
  }
}

📁 Projektstruktur

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

💡 Wichtige uv-Befehle Spickzettel

Befehl

Beschreibung

uv init

Initialisiert ein neues Python-Projekt mit pyproject.toml

uv add <pkg>

Fügt eine Abhängigkeit zu pyproject.toml hinzu und installiert sie in .venv

uv remove <pkg>

Entfernt eine Abhängigkeit

uv run <script.py>

Führt ein beliebiges Python-Skript innerhalb der isolierten Projektumgebung aus

uv sync

Synchronisiert installierte Pakete mit uv.lock

uv venv

Erstellt explizit eine virtuelle Umgebung


🛠️ Nächste Schritte & Erweiterungen

  • Permanenter Speicher: In-Memory-Liste durch SQLite via aiosqlite oder sqlite3 ersetzen.

  • Priorität & Fälligkeitsdatum: Aufgaben-Prioritätsflags (niedrig, mittel, hoch) und Fälligkeitsdatumsfilter hinzufügen.

  • Such-Tool: Ein search_tasks(query: str)-Tool hinzufügen, um Titel und Beschreibungen zu durchsuchen.

  • Authentifizierung: Endpunkte mit FastMCP-Authentifizierungsanbietern sichern.


📄 Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert - siehe die Datei LICENSE für Details.

-
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