feat: Add task-mcp server for task management via MCP

Implements 10 MCP tools for task management:
- CRUD: task_add, task_list, task_show, task_close, task_update
- Search: task_similar (pgvector), task_context
- Relations: task_link, task_checklist_add, task_checklist_toggle

Uses PostgreSQL with pgvector for semantic search via LiteLLM embeddings.
Connects via SSH tunnel to docker-host:5435.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Christian Gick
2026-01-08 20:58:14 +02:00
commit a03e9e065a
12 changed files with 1114 additions and 0 deletions

71
src/types.ts Normal file
View File

@@ -0,0 +1,71 @@
// Task Management Types
export interface Task {
id: string;
project: string;
title: string;
description?: string;
type: 'task' | 'bug' | 'feature' | 'debt';
status: 'open' | 'in_progress' | 'blocked' | 'completed';
priority: 'P0' | 'P1' | 'P2' | 'P3';
version_id?: string;
epic_id?: string;
created_at: Date;
updated_at: Date;
completed_at?: Date;
}
export interface Project {
key: string;
name: string;
path?: string;
active: boolean;
created_at: Date;
}
export interface ChecklistItem {
id: number;
task_id: string;
item: string;
checked: boolean;
position: number;
created_at: Date;
}
export interface TaskLink {
id: number;
from_task_id: string;
to_task_id: string;
link_type: 'blocks' | 'relates_to' | 'duplicates';
created_at: Date;
}
export interface Version {
id: string;
project: string;
version: string;
build_number?: number;
status: 'planned' | 'in_progress' | 'released' | 'archived';
release_date?: Date;
release_notes?: string;
created_at: Date;
}
export interface Epic {
id: string;
project: string;
title: string;
description?: string;
status: 'open' | 'in_progress' | 'completed';
target_version_id?: string;
created_at: Date;
}
export interface SimilarTask {
id: string;
title: string;
type: string;
status: string;
priority: string;
similarity: number;
}