notion_mcp
Author: danhilse
Description: A simple Model Context Protocol (MCP) server that lets Claude read and manage a minimalist Notion todo list.
Stars: 190
Forks: 46
License: MIT License
Category: Specialized
Overview
Installation
1. Clone the repository
git clone https://github.com/danhilse/notion_mcp.git && cd notion_mcp2. Create and activate a Python virtual environment (recommended)
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate3. Install dependencies
pip install -r requirements.txt4. Configure environment variables (add them to ~/.bash_profile, .env, or your hosting dashboard)
export NOTION_API_KEY="<your_integration_secret>"
export NOTION_DATABASE_ID="<todo_database_id>"
# Optional MCP config
export MCP_PORT=8000
export MCP_AUTH_TOKEN="<shared_secret_if_required>"5. Run the MCP server locally
python main.py # or whatever the entry file is, often app.py / server.py
# The service will start on http://localhost:8000 (override with MCP_PORT)6. Deploy (optional)
• Docker: docker build -t notion_mcp . && docker run -e NOTION_API_KEY=... -e NOTION_DATABASE_ID=... -p 80:8000 notion_mcp
• Render/Fly/Heroku: point to the repo, add the same env-vars, set the start command to "python main.py"
01
Add new todo items
Create and add a new task to the Notion todo database.
02
View all todos
Retrieve and display every task stored in the Notion todo database.
03
View today's tasks
Retrieve and display only the tasks scheduled for "today" in the Notion todo database.
04
Check off a task as complete
Mark a specified task's checkbox property as completed in the Notion todo database.
License: MIT License
Updated 7/15/2025