todo-mcp
README.md
# todo-mcp
A simple todo list [MCP](https://modelcontextprotocol.io) server written in TypeScript. It exposes tools for managing a todo list to any MCP client (Claude Desktop, Claude Code, etc.). Todos are persisted to a JSON file on disk.
## Tools
| Tool | Description |
| --- | --- |
| `add_todo` | Add a new item (`text`) |
| `list_todos` | List items, optional `filter`: `all` \| `active` \| `completed` |
| `complete_todo` | Mark an item done/undone (`id`, optional `done`) |
| `delete_todo` | Delete an item (`id`) |
| `clear_completed` | Remove all completed items |
## Setup
```bash
npm install
npm run build
```
This compiles to `build/index.js`. By default todos are stored in `~/.todo-mcp.json`; override with the `TODO_FILE` environment variable.
## Connecting a client
### Claude Code
```bash
claude mcp add todo -- node /Users/mansi/Documents/MCP/todo-list/build/index.js
```
### Claude Desktop
Add to `claude_desktop_config.json`
(`~/Library/Application Support/Claude/claude_desktop_config.json` on macOS):
```json
{
"mcpServers": {
"todo": {
"command": "node",
"args": ["/Users/mansi/Documents/MCP/todo-list/build/index.js"]
}
}
}
```
Restart the client, then ask it to add, list, or complete todos.
## Development
```bash
npm run dev # tsc --watch
```
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues