Skip to main content
Glama
89jobrien
by 89jobrien

MCP Task Aggregator

An MCP (Model Context Protocol) server that aggregates tasks from multiple sources into a unified SQLite database.

Features

  • Multi-source sync: Jira, GitHub (planned), Linear (planned), Markdown files, STM CLI

  • Unified database: SQLite with full-text search and tagging

  • MCP tools: list_tasks, list_todos, sync_tasks with filtering and pagination

  • Incremental sync: Change detection via hash comparison

Supported Sources

Source

Status

Description

Jira

Ready

Sync issues from Jira projects

Markdown

Ready

Parse TO-DO.md and TODO.md files

STM

Ready

Sync from simple-task-master CLI

GitHub

Planned

Sync issues and PRs

Linear

Planned

Sync Linear issues

Installation

From Source

# Clone the repository
git clone https://github.com/89jobrien/mcp-joecc.git
cd mcp-joecc

# Install with uv
uv sync

# Run the MCP server
uv run mcp-task-aggregator

Docker

# Build the image
docker build -t mcp-task-aggregator:latest .

# Run with docker-compose
cp example.env .env
# Edit .env with your credentials
docker compose up -d

# Or run directly
docker run -d \
  --name mcp-task-aggregator \
  -v mcp-data:/data \
  -e DATABASE_PATH=/data/tasks.db \
  mcp-task-aggregator:latest

Configuration

Configuration is done via environment variables. Copy example.env to .env and edit:

Variable

Default

Description

DATABASE_PATH

~/.mcp-task-aggregator/tasks.db

SQLite database path

LOG_LEVEL

INFO

Logging level

JIRA_URL

-

Jira instance URL

JIRA_EMAIL

-

Jira account email

JIRA_API_TOKEN

-

Jira API token

JIRA_PROJECT_KEY

AGENTOPS

Default project key

MARKDOWN_ENABLED

true

Enable markdown sync

MARKDOWN_SEARCH_PATHS

.

Paths to search for TODO files

STM_ENABLED

true

Enable STM CLI sync

STM_SEARCH_PATHS

.

Paths to search for STM workspaces

MCP Tools

list_tasks

List all tasks with optional filtering.

{
  "source_system": "jira",
  "status": "todo",
  "priority": 3,
  "tags": ["backend"],
  "limit": 50,
  "offset": 0
}

list_todos

List only local tasks (shortcut for list_tasks with source_system="local").

sync_tasks

Sync tasks from external sources.

{
  "source": "jira",
  "full_refresh": false
}

Development

# Install dev dependencies
uv sync --all-groups

# Run tests
uv run pytest

# Run linting
uvx ruff check .
uvx ruff format --check .

# Run type checking
uvx mypy src/ --strict --ignore-missing-imports

Project Structure

src/mcp_task_aggregator/
├── adapters/           # Source adapters (Jira, Markdown, STM)
├── agents/             # Sync orchestration
├── models/             # Pydantic models
├── storage/            # SQLite database and repositories
├── tools/              # MCP tool implementations
├── config.py           # Configuration management
└── logging.py          # Structured logging setup

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

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/89jobrien/mcp-joecc'

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