List all todos from your Notion database
List todos scheduled for today from your Notion database
Create a new todo item in your Notion database
Mark a todo item as complete in your Notion database
Notion Todo Manager is a simple integration that connects Claude to your personal Notion todo list. It allows you to view, add, and complete tasks directly through Claude's interface, making task management more conversational and accessible. This integration is designed for a minimalist todo list setup in Notion with a specific structure, focusing on today's tasks versus future tasks. While simple in design, it provides a seamless way to interact with your Notion database without leaving your Claude conversation.
Notion Todo Manager is a Model Context Protocol (MCP) server that integrates Claude with Notion's API to manage a personal todo list. This integration allows you to interact with your Notion todo database through natural language conversations with Claude.
Before setting up this integration, you'll need:
git clone https://github.com/danhilse/notion_mcp.git
cd notion_mcp
python -m venv .venv
source .venv/bin/activate # On Windows use: .venv\Scripts\activate
uv pip install -e .
Create a Notion integration
Share your database with the integration
Create a .env
file in the project directory
NOTION_API_KEY=your-api-key-here
NOTION_DATABASE_ID=your-database-id-here
Add the following to your Claude Desktop configuration:
{
"mcpServers": {
"notion-todo": {
"command": "/path/to/your/.venv/bin/python",
"args": ["-m", "notion_mcp"],
"cwd": "/path/to/notion-mcp"
}
}
}
Replace /path/to/your/.venv/bin/python
with the actual path to the Python executable in your virtual environment, and /path/to/notion-mcp
with the actual path to the cloned repository.
Once the integration is set up, you can interact with your Notion todo list through Claude using natural language commands such as:
The integration will handle these requests by communicating with your Notion database and returning the results to Claude, which will then present them to you in a readable format.
This integration is designed for a specific Notion database structure. If your database has a different structure, you'll need to modify the code to match your setup:
server.py
file in the src/notion_mcp/
directorycreate_todo()
function to match your database propertiescall_tool()
to handle your data structurelist_tools()
if you want different optionsIf you encounter issues:
.env
file contains the correct API key and database ID