todolist-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@todolist-mcpcreate a task Buy milk with priority high"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TodoList MCP Server
Enhanced fork of the original MCP by ispyridis/todolist-mcp. Extended with 16 tools, backup/restore, stats, contract tests, and Diataxis documentation.
MCP server for managing ToDoList .tdl files. Tested with ToDoList 9.2.4.

Differences from the original
Original | This fork |
10 tools | 16 tools (complete_task, get_task_stats, backup_tdl, restore_tdl, delete_task, add_comment) |
No tests | 192 tests (80 unit + 112 contract MCP) |
No type checking | mypy + ruff + pyright clean |
Monolith | src/ modular (models, manager, tools) |
No docs | Diataxis (tutorial, how-to, explanation, reference) |
Related MCP server: Coding Todo Server
Quick start
git clone <repo-url>
cd todolist-mcp
python -m venv venv
venv\Scripts\pip install -r requirements.txt
python main.pyConfiguration
The server resolves the .tdl file with this priority:
$TODOLIST_FILE— environment variable (set by the MCP client)mcp_server.ini— local file withactive = yes/notoggle~/todolist.tdl— default fallback
MCP client
{
"mcpServers": {
"todolist": {
"command": "python",
"args": ["path/to/todolist-mcp/main.py"],
"env": {
"TODOLIST_FILE": "path/to/your-file.tdl"
}
}
}
}Local development
# mcp_server.ini
[server]
active = yes
tdl_file = test-contract/test_contract.tdlDocumentation
Document | Type | Contents |
Tutorial | From zero to first command in 5 steps | |
How-to | Recipes: create, search, comment, backup... | |
Explanation | Architecture, design decisions, .tdl format | |
Reference | Complete 16-tool API with all parameters |
Project structure
todolist-mcp/
├── main.py # Entry point
├── config.json.example # MCP config template
├── mcp_server.ini.example # Local override template
├── pyproject.toml # mypy + ruff + pyright
├── requirements.txt
├── src/
│ ├── models.py # Pydantic models
│ ├── manager.py # ToDoListManager (XML, CRUD, stats)
│ └── tools.py # 16 @mcp.tool() handlers
├── test/ # 80 unit tests
├── test-contract/ # 112 MCP contract tests
├── docs/
│ └── diataxis/ # Diataxis documentation
├── .agent/skills/
│ └── todolist-mcp/ # Agent skill
└── README.mdTests
pytest test/ test-contract/ -q # 192 tests
mypy src/ main.py test/ test-contract/ # Type checking
ruff check src/ main.py test/ test-contract/ # LintingLicense
Apache License 2.0 — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
8 MCP servers, 104+ tools: memory, social, PDF, email, images, calendar, scheduler, files.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Create, list, and complete todo items through MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that provides tools for managing todo items, including creation, updating, completion, deletion, searching, and summarizing tasks.7 npm46MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that provides tools and resources for managing a coding project's todo list, allowing users to view, add, update, and delete todo items with details like priority, status, and tags.1-
- FlicenseNot gradedqualityDmaintenanceThis MCP server provides tools to manage a todo list with CRUD operations, enabling listing, creating, updating, and deleting todos.-
- AlicenseNot gradedqualityAmaintenanceMCP server that wraps TaskWarrior command-line tool. Provides 22 tools for task management, GTD workflow, and habit tracking.9 npm9MIT