Done Bear
by donebear.com in Productivity & SaaS
Local-first task manager: create, edit, and complete tasks, projects, and checklists via MCP.
https://mcp.donebear.com/mcp
Last 30 days
- Uptime
- 100%
- Response time
- 499 ms typical, 726 ms slowest 5%
- Last check
- 3 h ago
- Next check
- in 3 h
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"done-bear": {
"type": "http",
"url": "https://mcp.donebear.com/mcp"
}
}
}17 tools
- guide
Read Done Bear's guide for one topic: what the data means, how it relates to the rest of the product, and how to use it well. Load a topic before doing that kind of work for the first time in a session. - `views`: Placing a task in Inbox/Today/Upcoming/Anytime/Someday, reading a
- get_context
Get a snapshot of the current workspace: task counts per view, recent open tasks, and every project, label, team and member. This is the tool that answers what is in the workspace and resolves a project, label, team or member by name — there is no separate list tool for those. Us
- task_list
List tasks in the workspace, most recently updated first. Completed tasks are ordered by completion time, newest first. Filter by view (inbox, today, upcoming, anytime, someday, logbook, trash) and/or state (open, done, archived, all); `search` ranks matches within that filter. `
- task_show
Get full details for a single task: its fields, labels and checklist items, by workspace-scoped task number. Add `include` for the parts that cost extra reads: `["comments"]` for the discussion thread (oldest first, with author and whether each was edited) and `["attachments"]` f
- task_add
Create a new task. An explicit `when` selects its start placement: today, inbox, upcoming, anytime, or someday; upcoming schedules tomorrow. Without `when`, a `deadline` or omitted `timezone` selects anytime first. Otherwise, a `project` or `team` selects inbox; an unfiled task s
- task_edit
Update fields on one task (`task`) or on several at once (`tasks`, max 50). Only the provided fields are changed; omitted fields are left untouched. To remove a value, list the field in `clear` (e.g. `clear: ["deadline"]`). Notes replace the existing notes (no append). `assignee`
- task_agent_get
Read the task-agent identity bound to this connection's existing API key in one explicit workspace. Returns only key metadata and the exact agent UUID or null; an inactive agent includes disabledAt. Requires an API-key connection and current workspace membership. Does not registe
- task_agent_register
Explicitly register one assignable task agent for this connection's existing key in one workspace, after the user approves that durable binding. Requires a write-scoped API key restricted to exactly this workspace and an owner/admin membership. Read task_agent_get first and pass
- task_done
Mark a task as complete, or several at once with `tasks` (max 50). They move to the Logbook view. A set of 50 is undone one task_reopen call at a time, so confirm the list with the user first.
- task_reopen
Reopen a completed task, or several at once with `tasks` (max 50). Each returns to its previous view.
- task_archive
Archive a task, or several at once with `tasks` (max 50). They move to the Trash view, out of every working list, and stay readable there (task_list `view: "trash"`). Archiving is not completing: use task_done for work that was finished, and task_archive only for tasks the user w
- project
Create or change a project. `action: "add"` creates one (name required). `action: "edit"` updates the named project: only the fields given change, and an empty string clears description or target_date. `action: "join"` puts it in the caller's Your projects sidebar list and `actio
- search
Search tasks across the workspace. Ranked lexical search over title and description: exact and prefix matches rank first, then word-boundary, substring, and fuzzy matches, with recency and status factored in. Multi-word queries match in any order. Searches every state by default,
- checklist
Change the checklist on a task. `action: "add"` appends items, unchecked, after the existing ones: pass every title for a multi-item list in one call (`titles` keeps the given order, while parallel single adds land in arrival order). `action: "edit"` renames an item and/or checks
- comment
Write on a task's comment thread. `action: "add"` posts a comment, attributed to the connected user and visible to everyone in the workspace, so write it as a message to the user's teammates rather than a note to the user; nobody is notified. `action: "edit"` rewrites one of your
- attachment
Add a file to a task or remove one. `action: "add"` fetches the given HTTPS `url`: the server downloads it, verifies its size and type, and stores it, so the model never sends file bytes. Pass a stable idempotency_key and reuse it for retries so a lost response cannot upload the
- label_create
Create a new label in the workspace and return its id. Only creates the label: to put it on a task, pass it to task_add `labels` or task_edit `add_labels` afterwards (both take the title). Titles are not unique, so a second call with the same title makes a duplicate — check the l
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 3 h ago | Passed | 200 | 823 ms |
| 12 h ago | Passed | 200 | 726 ms |
| 21 h ago | Passed | 200 | 471 ms |
| 29 h ago | Passed | 200 | 499 ms |