donetick-mcp
MCP server for Donetick chores management. Provides 27 tools to control Donetick instance via Claude or other MCP clients.
README
Donetick MCP Server
An MCP server for Donetick chores management. Gives Claude and other MCP-compatible AI assistants full control over your Donetick instance — 27 tools covering chores, subtasks, labels, timers, and more.
Quick Start
uvx donetick-mcp
Claude Desktop / Claude Code
Add to your MCP config (.mcp.json, claude_desktop_config.json, etc.):
{
"mcpServers": {
"donetick": {
"command": "uvx",
"args": ["donetick-mcp"],
"env": {
"DONETICK_BASE_URL": "https://your-instance.com",
"DONETICK_USERNAME": "your_username",
"DONETICK_PASSWORD": "your_password"
}
}
}
}
Note:
DONETICK_BASE_URLcan be HTTP for local/private network instances.
Tools (27)
Chore Management
| Tool | Description |
|---|---|
list_chores |
List chores with optional filters (active, assigned user, brief/full detail) |
get_chore |
Get full chore details including subtasks and labels |
create_chore |
Create a chore — supports usernames, day names, reminders, subtasks. Defaults to assigning to anyone in the circle (round-robin) |
update_chore |
Update any fields: name, description, schedule, assignees (by username), labels (add/remove/set by name), priority, notifications |
delete_chore |
Delete a chore (creator only) |
list_archived_chores |
List archived/hidden chores |
Chore Actions
| Tool | Description |
|---|---|
complete_chore |
Mark a chore as done |
skip_chore |
Skip without completing — schedules next occurrence for recurring chores |
archive_chore |
Soft-delete / hide a chore |
unarchive_chore |
Restore an archived chore |
approve_chore |
Approve a completion that requires approval |
reject_chore |
Reject a completion that requires approval |
update_due_date |
Quick reschedule without a full update |
Timer
| Tool | Description |
|---|---|
start_chore_timer |
Start time tracking |
pause_chore_timer |
Pause time tracking |
Subtasks
| Tool | Description |
|---|---|
create_subtask |
Add a checklist item to a chore |
delete_subtask |
Remove a subtask |
update_subtask_completion |
Mark a subtask complete/incomplete |
convert_chore_to_subtask |
Convert a standalone chore into a subtask of another (deletes the original) |
Labels
| Tool | Description |
|---|---|
list_labels |
List all labels in the circle |
create_label |
Create a new label (name + optional hex color) |
update_label |
Rename or recolor a label |
delete_label |
Delete a label (removes from all chores) |
Labels can also be managed directly on chores via
update_choreusingadd_label_names,remove_label_names, orset_label_names.
Users & History
| Tool | Description |
|---|---|
list_circle_members |
List all members with IDs, roles, and points |
get_user_profile |
Current user's profile, points, and settings |
get_chore_history |
Completion history — for one chore or all (with pagination) |
get_chore_details |
Chore stats: total completions, average duration, recent history |
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
DONETICK_BASE_URL |
Yes | — | Donetick instance URL |
DONETICK_USERNAME |
Yes | — | Donetick username |
DONETICK_PASSWORD |
Yes | — | Donetick password |
LOG_LEVEL |
No | INFO |
DEBUG, INFO, WARNING, ERROR |
RATE_LIMIT_PER_SECOND |
No | 10.0 |
API rate limit |
RATE_LIMIT_BURST |
No | 10 |
Burst capacity |
Create Chore Examples
Simple one-time chore:
{"name": "Fix leaky faucet", "due_date": "2025-11-10", "priority": 3}
Recurring chore on specific days:
{"name": "Take out trash", "days_of_week": ["Mon", "Thu"], "time_of_day": "19:00", "usernames": ["Alice"]}
With subtasks and reminders:
{"name": "Weekly review", "frequency_type": "weekly", "subtask_names": ["Check email", "Update notes"], "remind_minutes_before": 15}
If no usernames provided, the chore is assigned to everyone in the circle with round-robin rotation.
Alternative Installation
Docker
git clone https://github.com/danielrosehill/donetick-mcp.git
cd donetick-mcp
cp .env.example .env # edit with your credentials
docker-compose up -d
pip
pip install donetick-mcp
donetick-mcp # requires env vars set
Development
git clone https://github.com/danielrosehill/donetick-mcp.git
cd donetick-mcp
python3 -m venv venv && source venv/bin/activate
pip install -e ".[dev]"
pytest # 200 tests, requires DONETICK_* env vars
License
MIT
Links
- Donetick — Open source chores management
- PyPI Package
- MCP Protocol
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.