Notion MCP logo

Notion MCP

by danhilse

Manages a simple Notion todo database through Claude with tools for adding, viewing, and completing tasks.

Install Notion MCP

Pick your client, then add it in one click or paste the config.

No confirmed install command yet

We only publish a config when the install details come from the project itself — its README, its docs, or a verified owner. We haven’t found those for danhilse/notion_mcp, and we’d rather show nothing than a guess you’d paste into your client.

Open setup steps on GitHub

Overview

danhilse/notion_mcp MCP server connects Claude to a Notion database for managing a personal todo list. It exposes operations to add tasks, list all tasks, filter for today’s tasks, and mark tasks complete through Notion’s API. Reach for it when your database uses the supported Task, When, and Checkbox properties; other schemas require code changes.

Use cases

  • Add personal todos to a Notion database through Claude
  • View all tasks stored in a simple Notion todo list
  • Filter Notion tasks scheduled for today
  • Mark completed tasks in Notion

Key features

  • Add new todo items
  • List all todos
  • Show today’s tasks
  • Mark tasks complete
  • Use Notion API credentials from environment variables

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

21/21 checks healthy over the last 85d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars209Stargazers on the source repository.
Last commit1y agoMost recent push to the default branch.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How Notion MCP works

What danhilse/notion_mcp MCP server does

danhilse/notion_mcp MCP server provides a small MCP interface for a Notion-based personal todo list. It is designed around a database with three properties: a Task title, a When select field containing only “today” and “later,” and a Checkbox completion field.

The project is intentionally narrow in scope. It is suitable for users who want Claude to work with this specific style of Notion task database, or for developers looking for a starting point for a custom Notion MCP integration. It does not present itself as a general-purpose Notion database connector.

How it works

The server uses Notion’s API to read and update the configured database. Claude Desktop starts the MCP process using Python, and the process waits for MCP requests. The Notion integration must have access to the target database before the server can read or modify tasks.

A typical interaction can list every todo, show tasks scheduled for today, create a task with either supported timing value, or update a task’s checkbox to mark it complete.

Setup and configuration

Python 3.10 or newer, a Notion account, a Notion integration, and a compatible Notion database are required. Create an integration in Notion, copy its API key, and share the todo database with that integration through the database’s connections settings.

Configuration is supplied through a .env file containing:

  • NOTION_API_KEY: the Notion integration API key.
  • NOTION_DATABASE_ID: the database identifier used by the server.

The documented local setup creates a Python virtual environment and installs the project in editable mode with uv pip install -e .. Claude Desktop can then be configured to run python -m notion_mcp from the project’s virtual environment, with the repository as its working directory. The same module can also be started manually from the project directory when the virtual environment is active.

Tools and capabilities

The danhilse/notion_mcp MCP server supports four task-oriented operations:

  • Add a new todo item.
  • View all todo items.
  • View tasks scheduled for today.
  • Check off a todo as completed.

These operations map to the fixed database structure rather than exposing arbitrary Notion pages, properties, or database queries. Scheduling is limited to the two values supported by the example schema: “today” and “later.”

Limitations and notes

The danhilse/notion_mcp MCP server is a personal project with basic error handling and a specific database model. It does not support complex schemas, additional properties, custom fields, recurring tasks, priorities, or tags. A different Notion database structure will likely require edits to server.py, including task creation, task formatting, and possibly the MCP input schema.

The repository documents Claude Desktop as its supported client context. The Notion database must be shared with the integration, and the configured API key and database ID must be available to the running process. The project is released under the MIT License.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Notion MCP

Use Python 3.10 or newer, create a virtual environment, activate it, and run `uv pip install -e .` from the cloned project directory.

Yes. Configure Claude Desktop to run the project’s virtual-environment Python executable with `-m notion_mcp` and set the project directory as its working directory.

It uses `NOTION_API_KEY` for the Notion integration key and `NOTION_DATABASE_ID` for the target database identifier.

The documented structure has a Task title property, a When select property with `today` and `later` options, and a Checkbox completion property.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewNotion MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/danhilse-notion-mcp?style=directory)](https://allmcps.com/mcp/danhilse-notion-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/danhilse-notion-mcp"><img src="https://allmcps.com/api/badge/danhilse-notion-mcp?style=directory" alt="Notion MCP on AllMCPs" /></a>