danhilse/notion_mcp

šŸ› ļø Other Tools and Integrations🟢 Verified Active
0 Views
0 Installs

šŸ ā˜ļø - Integrates with Notion's API to manage personal todo lists

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "danhilse-notion-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "danhilse-notion-mcp"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

Notion MCP Integration

A simple Model Context Protocol (MCP) server that integrates with Notion's API to manage my personal todo list through Claude. This is a basic implementation tailored specifically for my minimalist todo list setup in Notion.

Important Note

This is a personal project designed for a very specific use case: my simple Notion todo list that has just three properties:

  • Task (title)
  • When (select with only two options: "today" or "later")
  • Checkbox (marks if completed)

Example Notion Database

While you can use this as a starting point for your own Notion integration, you'll likely need to modify the code to match your specific database structure and requirements.

Features

  • Add new todo items
  • View all todos
  • View today's tasks
  • Check off a task as complete

Prerequisites

  • Python 3.10 or higher
  • A Notion account
  • A Notion integration (API key)
  • A Notion database that matches the exact structure described above (or willingness to modify the code for your structure)

Setup

  1. Clone the repository:
git clone https://github.com/yourusername/notion-mcp.git
cd notion-mcp
  1. Set up Python environment:
python -m venv .venv
source .venv/bin/activate  # On Windows use: .venv\Scripts\activate
uv pip install -e .
  1. Create a Notion integration:

  2. Share your database with the integration:

    • Open your todo database in Notion
    • Click "..." menu → "Add connections"
    • Select your integration
  3. Create a .env file:

NOTION_API_KEY=your-api-key-here
NOTION_DATABASE_ID=your-database-id-here
  1. Configure Claude Desktop:
{
  "mcpServers": {
    "notion-todo": {
      "command": "/path/to/your/.venv/bin/python",
      "args": ["-m", "notion_mcp"],
      "cwd": "/path/to/notion-mcp"
    }
  }
}

Running the Server

The server can be run in two ways:

  1. Directly from the command line:
# From the project directory with virtual environment activated
python -m notion_mcp
  1. Automatically through Claude Desktop (recommended):
  • The server will start when Claude launches if configured correctly in claude_desktop_config.json
  • No manual server management needed
  • Server stops when Claude is closed

Note: When running directly, the server won't show any output unless there's an error - this is normal as it's waiting for MCP commands.

Usage

Basic commands through Claude:

  • "Show all my todos"
  • "What's on my list for today?"
  • "Add a todo for today: check emails"
  • "Add a task for later: review project"

Limitations

  • Only works with a specific Notion database structure
  • No support for complex database schemas
  • Limited to "today" or "later" task scheduling
  • No support for additional properties or custom fields
  • Basic error handling
  • No advanced features like recurring tasks, priorities, or tags

Customization

If you want to use this with a different database structure, you'll need to modify the server.py file, particularly:

  • The create_todo() function to match your database properties
  • The todo formatting in call_tool() to handle your data structure
  • The input schema in list_tools() if you want different options

Project Structure

notion_mcp/
ā”œā”€ā”€ pyproject.toml
ā”œā”€ā”€ README.md
ā”œā”€ā”€ .env                   # Not included in repo
└── src/
    └── notion_mcp/
        ā”œā”€ā”€ __init__.py
        ā”œā”€ā”€ __main__.py
        └── server.py      # Main implementation

License

MIT License - Use at your own risk

Acknowledgments

  • Built to work with Claude Desktop
  • Uses Notion's API

Related MCP Servers

modelcontextprotocol/server-everythingVerified

šŸ“‡ šŸ  - MCP server that exercises all the features of the MCP protocol

šŸ› ļø Other Tools and Integrations1 views
0xMassi/webclaw

šŸ¦€ šŸ  šŸŽ 🐧 - Web content extraction for AI agents. 10 tools: scrape, crawl, map, batch, extract, summarize, diff, brand, search, research. TLS fingerprinting bypasses anti-bot without a browser. 67% fewer tokens than raw HTML. npx create-webclaw auto-configures Claude, Cursor, Windsurf, Codex, OpenCode.

šŸ› ļø Other Tools and Integrations0 views
2niuhe/plantuml_web

šŸ šŸ  ā˜ļø šŸŽ 🪟 🐧 - A web-based PlantUML frontend with MCP server integration, enable plantuml image generation and plantuml syntax validation.

šŸ› ļø Other Tools and Integrations0 views
2niuhe/qrcode_mcp

šŸ šŸ  šŸŽ 🪟 🐧 - A QR code generation MCP server that converts any text (including Chinese characters) to QR codes with customizable colors and base64 encoding output.

šŸ› ļø Other Tools and Integrations0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Active

Recent health check succeeded.

Last checked: 7/28/2026, 9:23:24 PM

Unclaimed listing (imported or pending owner verification). Claim it →
ā˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.