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
Filesystem MCP Server
Filesystem MCP servers enable AI models to interact with local file systems, providing capabilities for file operations, directory management, and secure file access within specified boundaries.
Database and Storage MCP Servers
Explore seamless integration with leading database systems and storage solutions through our Database & Storage category. From SQL to NoSQL, cloud to local storage, these integrations enable robust data management, persistence, and scalability for your AI-powered applications.
Git MCP Server
Git MCP servers enable AI models to interact with Git version control systems, providing capabilities for repository management, branch operations, commit handling, and collaborative development workflows.