83 lines
1.6 KiB
Markdown
83 lines
1.6 KiB
Markdown
# todo-mcp
|
|
|
|
A todo CLI with a built-in [MCP](https://modelcontextprotocol.io/) server.
|
|
The main idea is that you can tell an MCP-compatible AI assistant "add this to
|
|
todo" while you're in the middle of something else, and it just works.
|
|
|
|
Todos are stored in a local SQLite database and can be organized with
|
|
priorities, tags, and automatic git project association.
|
|
|
|
## Install
|
|
|
|
Requires Rust 1.85+ (edition 2024).
|
|
|
|
```sh
|
|
cargo install --path .
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Set `TODO_DB` to override the default database path (`~/.local/share/todo/todos.db`).
|
|
|
|
## Usage
|
|
|
|
```sh
|
|
# add a todo
|
|
todo-mcp add "fix the login bug"
|
|
|
|
# add with priority and tags
|
|
todo-mcp add "refactor auth module" -p high -t backend -t tech-debt
|
|
|
|
# add without associating to the current git repo
|
|
todo-mcp add "something general" --no-project
|
|
|
|
# list open todos
|
|
todo-mcp ls
|
|
|
|
# list todos for the current repo only
|
|
todo-mcp ls --here
|
|
|
|
# filter by tag or priority
|
|
todo-mcp ls -t backend
|
|
todo-mcp ls -p critical
|
|
|
|
# search
|
|
todo-mcp ls -s "auth"
|
|
|
|
# mark as done
|
|
todo-mcp done 3
|
|
|
|
# edit text, priority, or tags
|
|
todo-mcp edit 3 "updated description"
|
|
todo-mcp edit 3 -p low
|
|
todo-mcp edit 3 -t new-tag --untag old-tag
|
|
|
|
# remove permanently
|
|
todo-mcp rm 3
|
|
|
|
# show all tags in use
|
|
todo-mcp tags
|
|
|
|
# clean up completed todos
|
|
todo-mcp purge
|
|
```
|
|
|
|
## Claude Setup
|
|
|
|
todo-mcp ships with an MCP server that lets Claude manage your todos. Add this
|
|
to your Claude MCP config:
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"todo": {
|
|
"command": "todo-mcp",
|
|
"args": ["mcp-serve"]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
This gives Claude access to all todo operations — adding, listing, completing,
|
|
editing, removing, and purging.
|