UNPKG

@pimzino/agentic-tools-mcp

Version:

A comprehensive MCP server for task management and agent memories with JSON file storage

35 lines (34 loc) 1.42 kB
import { Project } from '../models/project.js'; import { Task } from '../models/task.js'; import { Subtask } from '../models/subtask.js'; /** * Storage interface for the task management system */ export interface Storage { getProjects(): Promise<Project[]>; getProject(id: string): Promise<Project | null>; createProject(project: Project): Promise<Project>; updateProject(id: string, updates: Partial<Project>): Promise<Project | null>; deleteProject(id: string): Promise<boolean>; getTasks(projectId?: string): Promise<Task[]>; getTask(id: string): Promise<Task | null>; createTask(task: Task): Promise<Task>; updateTask(id: string, updates: Partial<Task>): Promise<Task | null>; deleteTask(id: string): Promise<boolean>; deleteTasksByProject(projectId: string): Promise<number>; getSubtasks(taskId?: string, projectId?: string): Promise<Subtask[]>; getSubtask(id: string): Promise<Subtask | null>; createSubtask(subtask: Subtask): Promise<Subtask>; updateSubtask(id: string, updates: Partial<Subtask>): Promise<Subtask | null>; deleteSubtask(id: string): Promise<boolean>; deleteSubtasksByTask(taskId: string): Promise<number>; deleteSubtasksByProject(projectId: string): Promise<number>; } /** * Data structure for the storage file */ export interface StorageData { projects: Project[]; tasks: Task[]; subtasks: Subtask[]; }