Skip to content

Commit 1e8cf02

Browse files
committed
Add Tasks tools with CalDAV VTODO support
7 new tools: list_task_lists, get_tasks, get_task, create_task, update_task, complete_task, delete_task. 48 integration tests.
1 parent f98a3ff commit 1e8cf02

5 files changed

Lines changed: 1206 additions & 2 deletions

File tree

PROGRESS.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,15 @@
3535
- [x] User-permission integration tests: non-admin error handling validation (2026-03-30)
3636
- [x] Calendar tools: list_calendars, get_events, get_event, create_event, update_event, delete_event (2026-03-30)
3737
- [x] Contacts tools: list_addressbooks, get_contacts, get_contact, create_contact, update_contact, delete_contact (2026-03-31)
38+
- [x] Tasks tools: list_task_lists, get_tasks, get_task, create_task, update_task, complete_task, delete_task (2026-04-08)
3839

3940
### In Progress
4041

4142
### Blocked
4243
(none)
4344

4445
### Next Up
45-
- Tasks, Deck, Notes
46+
- Deck, Notes
4647

4748
## Phases
4849

@@ -78,11 +79,12 @@
7879
| App Management | 4 | 14 |
7980
| Calendar | 6 | 44 |
8081
| Contacts | 6 | 36 |
82+
| Tasks | 7 | 48 |
8183
| User Permissions || 15 |
8284
| Server || 7 |
8385
| Permissions || 34 |
8486
| Errors || 16 |
8587
| Client || 29 |
8688
| Config || 17 |
8789
| State || 2 |
88-
| **Total** | **88** | **622** |
90+
| **Total** | **95** | **670** |

pyproject.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ executionEnvironments = [
113113
{ root = "tests/test_client_retry.py", reportAttributeAccessIssue = false, reportUnknownMemberType = false },
114114
{ root = "src/nc_mcp_server/tools/calendar.py", reportUnknownMemberType = false, reportUnknownVariableType = false, reportUnknownArgumentType = false },
115115
{ root = "src/nc_mcp_server/tools/contacts.py", reportUnknownMemberType = false, reportUnknownVariableType = false, reportUnknownArgumentType = false },
116+
{ root = "src/nc_mcp_server/tools/tasks.py", reportUnknownMemberType = false, reportUnknownVariableType = false, reportUnknownArgumentType = false },
116117
{ root = "src/nc_mcp_server/tools/users.py", reportUnknownVariableType = false, reportUnknownArgumentType = false },
117118
]
118119

src/nc_mcp_server/server.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
shares,
2121
system_tags,
2222
talk,
23+
tasks,
2324
trashbin,
2425
user_status,
2526
users,
@@ -65,6 +66,7 @@ def create_server(config: Config | None = None) -> FastMCP:
6566
shares.register(mcp)
6667
system_tags.register(mcp)
6768
talk.register(mcp)
69+
tasks.register(mcp)
6870
trashbin.register(mcp)
6971
user_status.register(mcp)
7072
versions.register(mcp)

0 commit comments

Comments
 (0)