> don_kitchen
// TODO: write witty tagline
cd /projects

milk-mcp

"Teaching Claude to remember."

━━━

Claude Code sessions are temporary. Close the window, and everything you discussed - the decisions you made, the tasks you identified, the context you built up - vanishes. Next session, you start from scratch.

I use Remember The Milk obsessively. Have for years. It's the one productivity tool that never got replaced. So when I needed persistent memory for Claude Code, the solution was obvious: make RTM the external brain.

What It Does

milk-mcp is an MCP (Model Context Protocol) server that connects Claude Code to your Remember The Milk account. For each project, it creates five lists:

  • TODO - what's active right now
  • Backlog - deferred work
  • Bugs - logged with reproduction steps
  • Decisions - architectural choices with the reasoning that led to them
  • Context - the handoff note from last session

How It Works

Starting a session is just: "Let's work on [project]." Claude calls rtm_session_start, reads your open TODOs and the latest context note, and picks up where you left off.

Ending a session is just: "Let's wrap up." Claude writes a handoff summary, saves it to RTM, and next-you will actually know what happened.

The Decisions list is the part I use most. I can't count the number of times a past-me made an architectural call that present-me thought was wrong, only to dig into it and find there was a very good reason. Now Claude logs those decisions with rationale, and neither of us has to relitigate them.

Available Tools

The MCP server exposes these tools to Claude:

  • rtm_setup_project - Create the five standard lists for a new project
  • rtm_session_start - Load context and TODOs at session start
  • rtm_session_end - Write handoff note for next session
  • rtm_add_task - Add a TODO item
  • rtm_add_backlog - Add a backlog item
  • rtm_add_bug - Log a bug with details
  • rtm_complete_task - Mark a task as done
  • rtm_log_decision - Record an architectural decision
  • rtm_get_todos - List open TODO items
  • rtm_get_bugs - List open bugs
  • rtm_get_decisions - Review past decisions
  • rtm_get_context - Read the last handoff note
  • rtm_list_projects - List all milk-mcp projects

Setup

You'll need a Remember The Milk account (free tier works fine) and API credentials. No cloning required - everything runs via npx.

# Authenticate with RTM
npx milk-mcp auth

# Add the MCP server to Claude Code
claude mcp add milk-mcp -- npx milk-mcp

# Restart Claude Code

That's it. Five minutes, and Claude has persistent memory.

Automatic Session Management

For hands-free session handling, add instructions to your ~/.claude/CLAUDE.md file. Claude will automatically start sessions when you begin working and save context when you wrap up - using the current folder name as the project name.

This means you can just say "let's wrap up" and Claude knows to call rtm_session_end with a summary of what was accomplished. Next time you open the project, it picks up right where you left off.

Why RTM

Partly because I already had the account. But also because the RTM API is genuinely solid, the free tier is more than enough, and there's something satisfying about a 20-year-old task manager becoming the external brain for a state-of-the-art AI coding assistant.

Also, the name was right there. You can't not call it milk-mcp.

Get Started

Open source, MIT licensed. Check out the GitHub repo for full documentation.

npx milk-mcp