@kazuph/mcp-taskmanager
v1.0.1
Published
Model Context Protocol server for Task Management
Downloads
129
Readme
MCP TaskManager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Quick Start (For Users)
Prerequisites
- Node.js 18+ (install via
brew install node
) - Claude Desktop (install from https://claude.ai/desktop)
Configuration
- Open your Claude Desktop configuration file at:
~/Library/Application Support/Claude/claude_desktop_config.json
You can find this through the Claude Desktop menu:
Open Claude Desktop
Click Claude on the Mac menu bar
Click "Settings"
Click "Developer"
Add the following to your configuration:
{
"tools": {
"taskmanager": {
"command": "npx",
"args": ["-y", "@kazuph/mcp-taskmanager"]
}
}
}
For Developers
Prerequisites
- Node.js 18+ (install via
brew install node
) - Claude Desktop (install from https://claude.ai/desktop)
- tsx (install via
npm install -g tsx
)
Installation
git clone https://github.com/kazuph/mcp-taskmanager.git
cd mcp-taskmanager
npm install
npm run build
Development Configuration
Make sure Claude Desktop is installed and running.
Install tsx globally if you haven't:
npm install -g tsx
# or
pnpm add -g tsx
- Modify your Claude Desktop config located at:
~/Library/Application Support/Claude/claude_desktop_config.json
Add the following to your MCP client's configuration:
{
"tools": {
"taskmanager": {
"args": ["tsx", "/path/to/mcp-taskmanager/index.ts"]
}
}
}
Available Tools
The TaskManager provides the following tools:
Request Planning and Management
request_planning
- Register a new user request and plan its associated tasks
- Requires
originalRequest
(string) andtasks
(array of objects with title and description) - Optional
splitDetails
for additional context - Returns a request ID and progress table
get_next_task
- Retrieves the next pending task for a given request
- Requires
requestId
- Shows progress table with current status
- Indicates when all tasks are completed
mark_task_done
- Marks a specific task as completed
- Requires
requestId
andtaskId
- Optional
completedDetails
for completion notes - Shows updated progress table
approve_task_completion
- User approval for completed tasks
- Requires
requestId
andtaskId
- Must be called before proceeding to next task
approve_request_completion
- Final approval when all tasks are completed
- Requires
requestId
- Marks the entire request as completed
Task Management
open_task_details
- View detailed information about a specific task
- Requires
taskId
- Shows task status, description, and completion details
list_requests
- Lists all requests with their basic information
- Shows summary of tasks, completion status
- No parameters required
add_tasks_to_request
- Add new tasks to an existing request
- Requires
requestId
andtasks
array - Cannot add to completed requests
update_task
- Update title or description of an uncompleted task
- Requires
requestId
andtaskId
- Optional
title
anddescription
delete_task
- Remove an uncompleted task from a request
- Requires
requestId
andtaskId
- Cannot delete completed tasks
Workflow Example
// 1. Plan a new request
{
"originalRequest": "Build a new feature",
"tasks": [
{
"title": "Design API",
"description": "Create API specifications"
},
{
"title": "Implement Backend",
"description": "Develop backend logic"
}
]
}
// 2. Get next task
{
"requestId": "req-1"
}
// 3. Mark task as done
{
"requestId": "req-1",
"taskId": "task-1",
"completedDetails": "API design completed with OpenAPI spec"
}
// 4. Approve task completion
{
"requestId": "req-1",
"taskId": "task-1"
}
// 5. Final request approval
{
"requestId": "req-1"
}
Task States
Tasks can be in the following states:
- 🔄 In Progress: Task is not yet completed
- ✅ Done: Task is marked as completed
- ⏳ Pending Approval: Task is completed but waiting for approval
- ✅ Approved: Task is completed and approved