Notion MCP

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Integrations

  • Allows to add new todo items, view all todos, view today's tasks, and check off tasks as complete in a Notion database through Claude

Notion MCP統合

NotionのAPIと統合し、Claudeを通して個人のToDoリストを管理するためのシンプルなModel Context Protocol(MCP)サーバーです。これは、Notionで私のミニマリストなToDoリスト設定に合わせて特別にカスタマイズした基本的な実装です。

重要な注意事項

これは、非常に特殊なユースケース、つまり、次の 3 つのプロパティだけを持つシンプルな Notion ToDo リスト向けに設計された個人的なプロジェクトです。

  • タスク(タイトル)
  • いつ(「今日」または「後で」の 2 つのオプションのみ選択してください)
  • チェックボックス(完了したらマーク)

Notionデータベースの例

これを独自の Notion 統合の開始点として使用できますが、特定のデータベース構造と要件に合わせてコードを変更する必要がある可能性があります。

特徴

  • 新しいToDo項目を追加する
  • すべてのToDoを表示
  • 今日のタスクを表示
  • タスクを完了としてチェックする

前提条件

  • Python 3.10以上
  • Notionアカウント
  • Notion統合(APIキー)
  • 上記の構造と完全に一致する Notion データベース(または構造に合わせてコードを変更する意思)

設定

  1. リポジトリをクローンします。
git clone https://github.com/yourusername/notion-mcp.git cd notion-mcp
  1. Python 環境をセットアップします。
python -m venv .venv source .venv/bin/activate # On Windows use: .venv\Scripts\activate uv pip install -e .
  1. Notion 統合を作成します。
  2. 統合によりデータベースを共有します。
    • NotionでToDoデータベースを開く
    • 「…」メニュー→「接続を追加」をクリック
    • 統合を選択してください
  3. .envファイルを作成します。
NOTION_API_KEY=your-api-key-here NOTION_DATABASE_ID=your-database-id-here
  1. Claude デスクトップを設定します。
{ "mcpServers": { "notion-todo": { "command": "/path/to/your/.venv/bin/python", "args": ["-m", "notion_mcp"], "cwd": "/path/to/notion-mcp" } } }

サーバーの実行

サーバーは 2 つの方法で実行できます。

  1. コマンドラインから直接:
# From the project directory with virtual environment activated python -m notion_mcp
  1. Claude Desktop 経由で自動的に (推奨):
  • claude_desktop_config.jsonで正しく設定されていれば、Claude の起動時にサーバーが起動します。
  • 手動によるサーバー管理は不要
  • クロードが閉じられるとサーバーが停止します

注意: 直接実行する場合、エラーが発生しない限り、サーバーは出力を表示しません。これは、MCP コマンドを待機しているため正常な動作です。

使用法

クロード経由の基本コマンド:

  • 「私のToDoをすべて表示」
  • 「今日のリストには何がある?」
  • 「今日のToDoを追加: メールをチェック」
  • 「後で実行するためのタスクを追加: プロジェクトを確認する」

制限事項

  • 特定のNotionデータベース構造でのみ動作します
  • 複雑なデータベーススキーマをサポートしていない
  • 「今日」または「後で」のタスクスケジュールに制限されます
  • 追加のプロパティやカスタムフィールドはサポートされていません
  • 基本的なエラー処理
  • 定期的なタスク、優先度、タグなどの高度な機能はありません

カスタマイズ

これを異なるデータベース構造で使用する場合は、 server.pyファイルを変更する必要があります。特に次の点に注意してください。

  • データベースのプロパティに一致するcreate_todo()関数
  • データ構造を処理するためのcall_tool()の todo フォーマット
  • 異なるオプションが必要な場合のlist_tools()の入力スキーマ

プロジェクト構造

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

ライセンス

MITライセンス - 自己責任で使用してください

謝辞

  • Claude Desktopで動作するように構築
  • NotionのAPIを使用
-
security - not tested
A
license - permissive license
-
quality - not tested

Notion の API と統合して、Claude を通じて個人の ToDo リストを管理するシンプルな Model Context Protocol (MCP) サーバー。

  1. Important Note
    1. Features
      1. Prerequisites
        1. Setup
          1. Running the Server
            1. Usage
              1. Limitations
                1. Customization
                  1. Project Structure
                    1. License
                      1. Acknowledgments
                        ID: d3sukekngu