Skip to main content

TodoList MCP Server

A Model Context Protocol (MCP) server for managing todo lists with intelligent task tracking and auto-clear functionality.

Features

  • In-memory todo storage with session-based persistence
  • Intelligent auto-clear - automatically clears completed tasks
  • Task validation with duplicate ID prevention
  • Priority levels (high, medium, low) and status tracking
  • MCP-compliant tools for seamless integration

Installation

Requirements

  • Python 3.12+
  • Poetry (recommended) or pip

Setup

# Clone the repository
git clone https://github.com/hicaosen/todolist.git
cd todolist

# Install dependencies
poetry install
# or with pip
pip install -e .

Usage

Running the Server

# Using the installed script
todolist-mcp-server

# Or directly with Python
python -m src.server

MCP Tools

The server provides two main tools:

todo_read

Returns the current todo list. Use frequently to track progress.

# No parameters required
todos = todo_read()

todo_write

Creates and manages todo items. Use for complex multi-step tasks.

todos = [
    {
        "id": "task-1",
        "content": "Implement user authentication",
        "priority": "high",
        "status": "pending"
    },
    {
        "id": "task-2", 
        "content": "Write unit tests",
        "priority": "medium",
        "status": "in_progress"
    }
]
todo_write(todos)

Todo Item Structure

Each todo item must contain:

  • id: Unique string identifier
  • content: Task description (non-empty string)
  • priority: One of "high", "medium", "low"
  • status: One of "pending", "in_progress", "completed"

Auto-Clear Behavior

When all todos reach "completed" status, the list automatically clears to maintain a clean workspace.

Development

Code Quality Tools

# Lint code
ruff check

# Format code
ruff format

# Type checking
pyright

Project Structure

todolist/
├── src/
│   ├── __init__.py
│   └── server.py          # Main MCP server implementation
├── pyproject.toml         # Project configuration
├── poetry.lock           # Dependency lock file
└── README.md

Configuration

The server uses the following configuration:

  • Line length: 88 characters
  • Python version: 3.12+
  • Code style: Ruff with comprehensive rule set
  • Type checking: Pyright with strict mode

License

This project is licensed under the MIT License.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting
  5. Submit a pull request

Support

For issues and questions, please use the GitHub issue tracker.

Metadata

Release files for todolist-mcp-server 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for todolist-mcp-server 0.1.1
File Size Uploaded Provenance
todolist_mcp_server-0.1.1.tar.gz 5.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for todolist-mcp-server 0.1.1
File Interpreter ABI Platform
todolist_mcp_server-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 11.3 kB

Release files / todolist_mcp_server-0.1.1.tar.gz

Download URL todolist_mcp_server-0.1.1.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
7194503610548b7c5d3908aded7680526eaf302f0ed81c0756007bdf68df114f
BLAKE2b-256 checksum
How to use checksums
71ae8278d0b562da48ede045a84d5e7d329b19dc85dec3113eaaf18302fcfaa4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2

Release files / todolist_mcp_server-0.1.1-py3-none-any.whl

Download URL todolist_mcp_server-0.1.1-py3-none-any.whl
Size 5.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3f352b1829738690891bff160a622ea2b4d816530d616a5f45882a68e0e70a8e
BLAKE2b-256 checksum
How to use checksums
4ff229b714a2001238ad7cac9803f4b3567cffe2d7ac584183815f79ece8f4cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.3 CPython/3.12.3 Linux/6.6.87.2-microsoft-standard-WSL2

Security for todolist-mcp-server 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page