Skip to main content
Glama
azamafridi23

Task Tracker MCP Server

by azamafridi23

📋 Task Tracker MCP Server

Python 3.10+ FastMCP uv License: MIT

Практический сервер Model Context Protocol (MCP), написанный на Python с использованием FastMCP и управляемый с помощью uv. Этот сервер предоставляет AI-ассистентам (таким как Claude Desktop, Cursor, Antigravity и др.) структурированные возможности управления задачами.


🌟 Обзор

Model Context Protocol (MCP) — это открытый стандарт, позволяющий LLM и AI-приложениям безопасно и бесшовно взаимодействовать с внешними инструментами и источниками данных.

Этот проект реализует три основные примитивы MCP:

  • 🛠️ Инструменты: Вызываемые функции, позволяющие модели выполнять действия (add_task, complete_task, delete_task).

  • 📦 Ресурсы: URI только для чтения, позволяющие модели проверять состояние (tasks://all, tasks://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: str, description: 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

Этот проект создан и управляется с помощью uv — чрезвычайно быстрого менеджера пакетов и проектов Python, написанного на Rust компанией Astral.

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. CLI Inspector и инструменты разработчика FastMCP

FastMCP 3.x предоставляет встроенные CLI-команды для проверки и отладки вашего сервера:

  • Интерактивный веб-инспектор:

    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

Инициализация нового проекта Python с pyproject.toml

uv add <pkg>

Добавление зависимости в pyproject.toml и ее установка в .venv

uv remove <pkg>

Удаление зависимости

uv run <script.py>

Запуск любого Python-скрипта в изолированной среде проекта

uv sync

Синхронизация установленных пакетов с uv.lock

uv venv

Явное создание виртуального окружения


🛠️ Следующие шаги и расширения

  • Постоянное хранение: Замена списка в памяти на SQLite через aiosqlite или sqlite3.

  • Приоритет и сроки выполнения: Добавление флагов приоритета задач (low, medium, high) и фильтров по срокам выполнения.

  • Инструмент поиска: Добавление инструмента 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