Personal Task Manager MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Personal Task Manager MCPAdd a high-priority task called 'Deploy v2' to my Work project, due May 10th"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Personal Task Manager — MCP Server
A Model Context Protocol (MCP) server that turns any AI assistant into a powerful task management system. Built with Python and SQLite, it exposes 19 tools for full lifecycle task management from quick to-dos to multi project workflows with priorities, tags, subtasks, and more.
AI Assistant <--> MCP Protocol (stdio) <--> Task Manager Server <--> SQLite DBFeatures
Feature | Description |
Due Dates & Deadlines | Set, update, or clear deadlines on any task |
Priorities | Classify tasks as |
Status Workflow | Full lifecycle: |
Tags & Labels | Flexible many-to-many tagging (e.g. |
Notes & Descriptions | Rich markdown notes attached to any task |
Subtasks & Checklists | Break tasks into ordered, toggleable checklist items |
Lists & Projects | Organize tasks by context — work, personal, side-project |
Related MCP server: tasq
All 19 MCP Tools
Core CRUD
Tool | Signature | Description |
|
| Get the full database schema |
|
| Run a read-only SQL SELECT query |
|
| Create a new task |
|
| Update any task field |
|
| Delete a task and its subtasks/tags |
Due Dates
Tool | Signature | Description |
|
| Set or clear a deadline (YYYY-MM-DD) |
Priorities
Tool | Signature | Description |
|
| Set priority: |
Status Workflow
Tool | Signature | Description |
|
| Set status: |
Tags & Labels
Tool | Signature | Description |
|
| Add a tag to a task (creates if new) |
|
| Remove a tag from a task |
|
| List all tasks with a given tag |
Notes
Tool | Signature | Description |
|
| Set/replace markdown notes on a task |
Subtasks & Checklists
Tool | Signature | Description |
|
| Add a checklist item to a task |
|
| Toggle completion (done / not done) |
|
| Remove a subtask |
|
| List all subtasks of a task |
Lists & Projects
Tool | Signature | Description |
|
| Create a new list/project |
|
| Delete a list (tasks become unassigned) |
|
| Move a task to a list (use |
|
| List all tasks in a list |
Quick Start
Prerequisites
Python 3.10+
An MCP-compatible client (e.g. Claude Desktop, Cursor, VS Code + Copilot)
Installation
# Clone the repository
git clone https://github.com/arghyapolley/personal-task-manager-mcp.git
cd personal-task-manager-mcp
# Install dependencies
pip install -r requirements.txtRun the Server
python server.pyThe server communicates via stdio using the MCP protocol. It automatically creates/migrates the tasks.db SQLite database on startup.
Connect to Claude Desktop
Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"task-manager": {
"command": "python",
"args": ["/absolute/path/to/server.py"]
}
}
}Then restart Claude Desktop. You can now say things like:
"Add a high-priority task called 'Deploy v2' to my Work project, due May 10th"
"Show me all tasks tagged @urgent"
"Add subtasks to task 3: write tests, update docs, deploy"
"What's overdue?"
Database Schema
+---------------+ +---------------+
| lists | | tags |
+---------------+ +---------------+
| id (PK) | | id (PK) |
| name (UQ) | | name (UQ) |
| description | +-------+-------+
| created_at | |
+-------+-------+ |
| +------+------+
| 1:N | task_tags |
| +-------------+
+-------+-------+ | task_id(FK) |--+
| tasks | | tag_id(FK) | |
+---------------+ +-------------+ |
| id (PK) |<-----------------------+
| title |
| description | +-------------+
| status | | subtasks |
| due_date | +-------------+
| priority | 1:N | id (PK) |
| list_id (FK) |<------| parent_id |
| notes | | title |
| created_at | |is_completed |
| updated_at | | sort_order |
+---------------+ | created_at |
+-------------+Testing
Run the full test suite (63 tests, uses a temporary DB):
python test_server.py Results: 63 passed, 0 failedTests cover: schema creation, CRUD, priorities, status workflow, tags (add/remove/list/duplicates), notes, subtasks (add/toggle/delete/ordering), lists (create/move/unassign/delete), cascade deletes, and SQL injection guards.
Project Structure
personal-task-manager-mcp/
|-- server.py # MCP server -- 19 tools, DB init, schema migration
|-- test_server.py # Comprehensive test suite (63 assertions)
|-- requirements.txt # Python dependencies (mcp, pydantic)
|-- tasks.db # SQLite database (auto-created on first run)
+-- README.md # This fileThis server cannot be deployed
Maintenance
Related MCP Connectors
- DazbenchOAuthapp.dazbench
Task management your AI agents can actually run. One line becomes a context-ready task over MCP.
Manage Superlist tasks and lists in plain language from any MCP-compatible AI agent.
AI-native task management: list, create, update and archive tasks with rich context for AI agents
Local-first task manager: create, edit, and complete tasks, projects, and checklists via MCP.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables task management (create, list, update tasks with priority and status) using SQLite storage via MCP tools.3-
- AlicenseBqualityBmaintenanceA local-first task manager with SQLite backend, exposed as CLI, TUI, and MCP server. Enables AI assistants to manage tasks via tools for add, edit, search, plan, and more.19MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to create, read, and manage tasks and projects in a personal todo system through MCP tools.MIT
- AlicenseNot gradedqualityCmaintenanceEnables deterministic, SQLite-backed task and todo tracking across multiple project scopes via MCP tools, allowing agents to add, update, list, complete, and delete tasks without hand-editing text files.1 npmMIT