A side-by-side look at the Kanban and Saga MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Kanban for product management work as a local process; choose Saga MCP for product management as a local process. You can also run both side by side in one mcpServers block.
task_add, task_list, task_move.DB_PATH, SAGA_PROJECT, SAGA_DESCRIPTION_LOCK, SAGA_TOOLS.tracker_init, tracker_next, tracker_dashboard.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Product Management | Product Management |
| Quality signal | 53/100 · Good | 65/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | No auth required |
| Pricing | Not declared | Free |
| Required env vars | None listed | DB_PATHSAGA_PROJECTSAGA_DESCRIPTION_LOCKSAGA_TOOLS |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 40 |
| Directory activity | 0 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 17 | 41 |
| Full listing | View Kanban | View Saga MCP |
task_addAdd a task: title plus optional project, column, due date, estimate, priority, tags and notes. A new project name creates its board; a partial name that matches exactly one existing project is used as that project.task_listTable of tasks, filtered by project, column, tag, `due_before` or `overdue`. Finished tasks are hidden unless you ask for them. Prints 200 rows by default and says how many more there are; raise it with `limit` (max 2,000).task_moveMove a task to another column on its board.task_updateChange any field: title, notes, due (`none` clears it), estimate, priority, tags, column or project.task_doneMark a task done: it moves to the done column and is stamped with the time.task_deleteDelete a task. The id is never reused.task_searchFind tasks by text in the title, notes, tags or id.boardColumn-by-column summary of one board: tasks, estimate total, actual total, overdue count.task_start_timerReturn the exact arguments to pass to the time-tracker server's `timer_start` for this task, and record the link on the task.task_log_timeAdd real minutes worked to a task, so estimate and actual can be compared.project_listEvery board with open and done counts, remaining estimate and overdue count.project_deleteDelete an empty board and free its project slot. A board that still holds tasks, open or done, is refused with a task named; clear them with `task_delete` first.tracker_initInitialize tracker and create first projecttracker_nextWhat to work on next, with the reason and what is blockedtracker_dashboardFull project overview with natural language summaryproject_createCreate a new projectproject_listList projects with completion statsproject_updateUpdate project (archive to soft-delete)epic_createCreate an epic within a projectepic_listList epics with task countsepic_updateUpdate an epicepic_archiveArchive/unarchive an epic, hiding it and its tasks from listingstask_createCreate a task with optional dependenciestask_listList/filter tasks; follows a manual arrangement when one existsPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"kanban": {
"command": "npx",
"args": [
"-y",
"@theluckystrike/mcp-kanban"
]
}
}
}
{
"mcpServers": {
"spranab-saga-mcp": {
"command": "npx",
"args": [
"-y",
"-p",
"saga-mcp",
"saga-web"
],
"env": {
"DB_PATH": "YOUR_DB_PATH_HERE",
"SAGA_PROJECT": "YOUR_SAGA_PROJECT_HERE",
"SAGA_DESCRIPTION_LOCK": "YOUR_SAGA_DESCRIPTION_LOCK_HERE",
"SAGA_TOOLS": "YOUR_SAGA_TOOLS_HERE"
}
}
}
}