UNPKG

@pimzino/agentic-tools-mcp

Version:

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

41 lines (40 loc) 1.69 kB
import { Storage } from './storage.js'; import { Project } from '../models/project.js'; import { Task } from '../models/task.js'; import { Subtask } from '../models/subtask.js'; /** * File-based storage implementation using JSON with project-specific directories */ export declare class FileStorage implements Storage { private workingDirectory; private storageDir; private dataFile; private data; constructor(workingDirectory: string); /** * Initialize storage by validating working directory and loading data from file */ initialize(): Promise<void>; /** * Save data to file */ private save; 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>; }