Tasks Organizer MCP Server
A local Model Context Protocol (MCP) server providing backend tools for client-driven project and task management using a SQLite database.
Overview
The MCP Task Manager Server acts as a persistent backend for local MCP clients (like AI agents or scripts) that need to manage structured task data within distinct projects. It handles data storage and provides a standardized set of tools for interaction, while the strategic workflow logic resides within the client. It adheres to the Model Context Protocol for tool definition and communication.
Created by:
Developed by bsmi021
Key Features
Project-Based Organization
Tasks are organized within distinct projects for clear management.
SQLite Persistence
Uses a local SQLite file (./data/taskmanager.db by default) for simple, self-contained data storage.
Client-Driven Workflow
Provides tools for clients; does not dictate workflow, allowing flexible AI agent integration.
Comprehensive Task Management
Supports creating projects, adding tasks, listing/showing tasks, updating status, expanding tasks into subtasks, and identifying the next actionable task.
Import/Export Functionality
Allows exporting project data to JSON and importing from JSON to create new projects.
Available Tools
Quick Reference
| Tool | Purpose | Category |
|---|---|---|
createProject | Creates a new, empty project. | Project Management |
addTask | Adds a new task to a project. | Task Management |
listTasks | Lists tasks for a project, with optional filtering and subtask inclusion. | Task Management |
showTask | Retrieves full details for a specific task. | Task Management |
setTaskStatus | Updates the status of one or more tasks. | Task Management |
expandTask | Breaks a parent task into subtasks. | Task Management |
getNextTask | Identifies the next actionable task. | Task Management |
exportProject | Exports complete project data as a JSON string. | Data Management |
Detailed Usage
createProject▶
Creates a new, empty project.
use_mcp_tool({
server_name: "task-manager",
tool_name: "createProject",
arguments: {
projectName: "My New Project"
}
});
Returns: { project_id: string }
addTask▶
Adds a new task to a project.
use_mcp_tool({
server_name: "task-manager",
tool_name: "addTask",
arguments: {
project_id: "your-project-uuid",
description: "Implement user authentication",
priority: "high",
status: "todo"
}
});
Returns: Full TaskData object of the created task.
listTasks▶
Lists tasks for a project, with optional filtering and subtask inclusion.
use_mcp_tool({
server_name: "task-manager",
tool_name: "listTasks",
arguments: {
project_id: "your-project-uuid",
status: "in-progress",
include_subtasks: true
}
});
Returns: Array of TaskData or StructuredTaskData objects.
showTask▶
Retrieves full details for a specific task, including dependencies and direct subtasks.
use_mcp_tool({
server_name: "task-manager",
tool_name: "showTask",
arguments: {
project_id: "your-project-uuid",
task_id: "your-task-id"
}
});
Returns: FullTaskData object.
setTaskStatus▶
Updates the status of one or more tasks.
use_mcp_tool({
server_name: "task-manager",
tool_name: "setTaskStatus",
arguments: {
project_id: "your-project-uuid",
task_ids: ["task-id-1", "task-id-2"],
status: "done"
}
});
Returns: { success: true, updated_count: number }
expandTask▶
Breaks a parent task into subtasks, optionally replacing existing ones.
use_mcp_tool({
server_name: "task-manager",
tool_name: "expandTask",
arguments: {
project_id: "your-project-uuid",
task_id: "parent-task-id",
subtask_descriptions: ["Subtask 1", "Subtask 2"],
force: false
}
});
Returns: Updated parent FullTaskData object including new subtasks.
getNextTask▶
Identifies the next actionable task based on status ('todo'), dependencies ('done'), priority, and creation date.
use_mcp_tool({
server_name: "task-manager",
tool_name: "getNextTask",
arguments: {
project_id: "your-project-uuid"
}
});
Returns: FullTaskData object of the next task, or null if none are ready.
exportProject▶
Exports complete project data as a JSON string.
use_mcp_tool({
server_name: "task-manager",
tool_name: "exportProject",
arguments: {
project_id: "your-project-uuid"
}
});
Returns: JSON string of project data.
Installation
{
"mcpServers": {
"task-manager": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-task-manager-server"
],
"env": {
"DATABASE_PATH": "./data/taskmanager.db"
}
}
}
}
Sources
Related Articles
Txtai MCP Server
Txtai MCP servers enable AI models to interact with txtai, an AI-powered search engine that builds vector indexes (also known as embeddings) to perform similarity searches.
Puppeteer MCP Server
Puppeteer MCP servers enable AI models to perform browser automation, web scraping, testing workflows, and screenshot generation through headless Chrome/Chromium control.
Supabase MCP Server
Supabase MCP servers enable AI models to interact with Supabase backends, providing capabilities for PostgreSQL databases, real-time subscriptions, authentication, and storage operations.