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

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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