add-subtask
Convenience method to create a subtask with a title in one call (recommended for single subtask creation)
Plan a Sunsama day from the conversation: pull the backlog, place tasks on a date in the order you want, set time estimates, then complete or reschedule them one at a time or in bulk.
No longer maintained. The GitHub repository for this server is archived — no fixes or security updates are expected.
LABSCO SUMMARY
Two things separate this from a thin API wrapper. Updates are field-scoped, so changing an estimate or a due date does not mean reading the task back and resubmitting it. And the bulk variants are built for the moment a plan is rebuilt — they take a list of task IDs and let individual failures pass rather than aborting the batch. Most of the write tools also carry limitResponsePayload, which keeps the reply small when many tasks change at once; streams are called channels in the Sunsama UI, and get-streams is where that mapping comes from.
A server over the Sunsama task and calendar API, 30 tools spanning tasks, subtasks, streams and calendar events, with bulk variants of the operations that repeat.
A Sunsama account, signed in with its email and password as SUNSAMA_EMAIL and SUNSAMA_PASSWORD. update-calendar-event needs the full CalendarEventUpdateData object, so the event has to be fetched before it is changed. MIT licensed.
One command plus credentials — npx -y mcp-sunsama, then supply credentials
USE CASES
Pull what is waiting, move the chosen items onto tomorrow's date, attach a realistic estimate to each, and put them in the order you intend to work them.
Read the day with a completion filter to see what is left, mark everything finished in one call, and push the remainder to a chosen date in another.
Read the task as it stands, add the steps — one at a time by title, or as a batch — and tick them off as they land without touching the parent.
Resolve the channel the work belongs to, put the event on the calendar, and create the task that prepares for it so the estimate lands in the same day's plan.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
add-subtaskConvenience method to create a subtask with a title in one call (recommended for single subtask creation)
complete-subtaskMark a subtask as complete with optional completion timestamp
create-calendar-eventCreate a new calendar event in Sunsama
create-subtasksCreate multiple subtasks for a task (low-level API for bulk operations)
create-taskCreate a new task with optional properties
delete-taskDelete a task permanently
delete-task-bulkDelete multiple tasks permanently in a single operation. Individual failures do not block others.
get-archived-tasksGet archived tasks with optional pagination
get-streamsGet streams for the user's group (streams are called 'channels' in the Sunsama UI)
get-task-by-idGet a specific task by its ID
get-tasks-backlogGet tasks from the backlog
get-tasks-by-dayGet tasks for a specific day with optional filtering by completion status
get-userGet current user information including profile, timezone, and group details
reorder-taskReorder a task within a day by moving it to a specific 0-based position (0 = top)
uncomplete-subtaskMark a subtask as incomplete (uncomplete it)
update-calendar-eventUpdate an existing calendar event. Requires the full CalendarEventUpdateData object — fetch the event first to get all required fields.
update-subtask-titleUpdate the title of a subtask
update-task-backlogMove a task to the backlog
update-task-backlog-bulkMove multiple tasks to the backlog in a single operation. Individual failures do not block others.
update-task-completeMark a task as complete with optional completion timestamp
update-task-complete-bulkMark multiple tasks as complete in a single operation. Individual failures do not block others.
update-task-due-dateUpdate the due date for a task
update-task-notesUpdate the notes content for a task
update-task-planned-timeUpdate the planned time (time estimate) for a task
update-task-snooze-dateUpdate task snooze date to reschedule tasks or move them to backlog
update-task-snooze-date-bulkReschedule multiple tasks to a specific date in a single operation. Individual failures do not block others.
update-task-streamUpdate the stream/channel assignment for a task
update-task-textUpdate the text/title of a task
update-task-uncompleteMark a completed task as incomplete
update-task-uncomplete-bulkMark multiple completed tasks as incomplete in a single operation. Individual failures do not block others.
BEFORE YOU INSTALL
30 tools when we connected. The documentation covers 21 and omits the bulk variants, update-task-uncomplete, reorder-task, and the calendar tools create-calendar-event and update-calendar-event.
CONTEXT COST
Rated by the size of the 30 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx -y mcp-sunsama{
"mcpServers": {
"sunsama": {
"command": "npx",
"args": [
"mcp-sunsama"
],
"env": {
"SUNSAMA_EMAIL": "<YOUR_SUNSAMA_EMAIL>",
"SUNSAMA_PASSWORD": "<YOUR_SUNSAMA_PASSWORD>"
}
}
}
}claude mcp add sunsama --scope user \
-e SUNSAMA_EMAIL=<YOUR_SUNSAMA_EMAIL> \
-e SUNSAMA_PASSWORD=<YOUR_SUNSAMA_PASSWORD> \
-- npx mcp-sunsama