An MCP server that gives Claude the one thing it's been missing: the ability to follow up.
Quick Start • Features • How It Works • Configuration • Contributing
Claude is incredibly smart. It can analyze data, write code, draft strategies, and reason through complex problems.
But it can't remind you of anything.
No "follow up on this in 3 hours." No "check competitor pricing tomorrow at 9am." No "ping me every Monday to review campaign performance."
This MCP server fixes that.
🔔 One-Time Reminders — "Remind me to review the Q3 report in 2 hours"
🔁 Recurring Reminders — "Every Monday at 9am, remind me to check ad spend"
📅 Scheduled Follow-Ups — "Tomorrow at 3pm, ask me about the shipping delay"
⏱️ Natural Language Time Parsing — Just say when. Claude understands.
🔌 MCP Native — Works with Claude Desktop, Claude.ai, and any MCP-compatible client
🏢 Organization-Ready — Deploy once, use across your entire team
- Claude Desktop or any MCP-compatible client
- Node.js 18+ (or Python 3.10+, depending on implementation)
# Clone the repository
git clone https://github.com/millbuilder/reminder-service.git
cd reminder-service
# Install dependencies
npm install
# Start the MCP server
npm startAdd the following to your Claude Desktop MCP configuration (claude_desktop_config.json):
{
"mcpServers": {
"reminder-service": {
"command": "node",
"args": ["/path/to/reminder-service/index.js"]
}
}
}Restart Claude Desktop. Done. You now have a Claude that remembers.
This project implements a Model Context Protocol (MCP) server that exposes reminder management tools to Claude. When connected, Claude gains access to:
| Tool | Description |
|---|---|
create_reminder |
Set a one-time or recurring reminder |
list_reminders |
View all active reminders |
cancel_reminder |
Remove a specific reminder |
snooze_reminder |
Postpone a reminder |
┌─────────────┐ MCP Protocol ┌──────────────────┐
│ Claude │ ◄──────────────────► │ Reminder Server │
│ (Desktop/ │ │ │
│ Claude.ai) │ │ ┌────────────┐ │
└─────────────┘ │ │ Scheduler │ │
│ └────────────┘ │
│ ┌────────────┐ │
│ │ Storage │ │
│ └────────────┘ │
└──────────────────┘
When a reminder is due, the server triggers a notification through Claude's conversation context, delivering the reminder exactly when you need it.
Once connected, just talk to Claude naturally:
You: Remind me in 30 minutes to check the deployment status.
Claude: ✅ Reminder set for 2:45 PM — "Check the deployment status"
You: Every Friday at 5pm, remind me to submit my weekly report.
Claude: ✅ Recurring reminder created — Every Friday at 5:00 PM: "Submit weekly report"
You: What reminders do I have?
Claude: You have 3 active reminders:
- ⏰ Today 2:45 PM — Check the deployment status
- 🔁 Fridays 5:00 PM — Submit weekly report
- 📅 Tomorrow 9:00 AM — Review competitor pricing
You: Cancel the deployment reminder.
Claude: ✅ Reminder cancelled.
| Variable | Description | Default |
|---|---|---|
REMINDER_STORAGE |
Storage backend (memory, sqlite, json) |
json |
REMINDER_DB_PATH |
Path to persistent storage file | ./reminders.db |
REMINDER_CHECK_INTERVAL |
How often to check for due reminders (ms) | 60000 |
REMINDER_TIMEZONE |
Default timezone for reminders | UTC |
- Memory — Fast, no persistence. Good for testing.
- JSON — File-based persistence. Simple and portable.
- SQLite — Database-backed. Best for teams and production use.
Want to deploy this across your organization? The reminder service can run as a shared server:
# Run as a background service
npm run start:daemon
# Or use Docker
docker build -t reminder-service .
docker run -d -p 3000:3000 reminder-serviceConfigure each team member's Claude Desktop to point to the shared instance. Reminders are scoped per user — everyone gets their own reminder space.
- Core reminder CRUD (create, read, update, delete)
- One-time and recurring reminders
- Natural language time parsing
- Persistent storage (JSON + SQLite)
- Slack notification integration
- Email notification fallback
- Calendar sync (Google Calendar / Outlook)
- Team-wide shared reminders
- Web dashboard for reminder management
- Claude.ai native integration (when MCP is supported)
We'd love your help making this better. Whether it's a bug fix, a new feature, or just better docs — all contributions are welcome.
# Fork the repo, then:
git checkout -b feature/your-feature
# Make your changes
npm test
git commit -m "Add: your feature description"
git push origin feature/your-feature
# Open a Pull RequestYour best application to work with us? A pull request.
See <CONTRIBUTING.md> for detailed guidelines.
This project was built at The Customization Group — a global print-on-demand company producing up to 2.5 million personalized products per day, shipped to 170+ countries.
We're 800 people running 50+ web properties, and AI is embedded in how we operate — from engineering to customer service to finance. This reminder service is one of dozens of internal AI tools we've built to close the gap between "AI is impressive" and "AI runs our operations."
We believe the real AI revolution isn't about smarter models — it's about the thousands of small, practical tools that make AI actually useful in daily work. And the fastest way to get there is to build them and share them.
If you're the kind of person who sees a missing feature and ships a fix — we want to talk to you.
We're hiring engineers, product people, and operations thinkers across Europe (Cologne + remote).
- 🏭 Real scale: 50+ live web properties, millions of daily transactions
- 🧪 Real experimentation: ship AI tools that go live this week, not this quarter
- 🚫 No innovation theater: build → ship → measure → iterate
This project is licensed under the MIT License — use it, fork it, improve it.
Built with ❤️ and Claude Code by the team at The Customization Group