# 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.