mcpField
N
Notion MCP Integration

Notion MCP Integration

ローカル
danhilse.comメモリ・ナレッジ20997 週間前に更新

Notion MCP Integration について

Claude から Notion API を通じて個人のToDoリストを読み取り、管理するためのシンプルなMCPサーバーです。作者自身の最小限のデータベース構成に特化しているため、他の利用者は通常コードの修正が必要です。

主な機能

  1. 01ToDo の追加
  2. 02すべての ToDo の表示
  3. 03今日のタスクの表示
  4. 04タスクの完了チェック

活用シーン

  1. 01Claude を通じた今日のタスクの確認
  2. 02自然言語による Notion の ToDo データベースへのタスク追加

MCP 対応

本サーバーは MCP サーバーとして動作し、Claude Desktop から起動されて Notion API 経由で ToDo データベースを読み書きします。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Notion MCP Integration

Notion の API と連携し、Claude を通じて個人用の ToDo リストを管理するシンプルな Model Context Protocol(MCP)サーバーです。Notion でのシンプルな ToDo リストの設定に特化した基本的な実装です。

README の画像

重要な注意事項

これは、プロパティが 3 つだけのシンプルな Notion の ToDo リスト向けに設計された、特定のユースケースに特化した個人プロジェクトです。

  • Task(タイトル)
  • When(選択肢が「today」と「later」の 2 つだけのセレクト)
  • Checkbox(完了したかどうかを示すチェックボックス)

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 データベースを開きます
    • 「...」メニュー →「Add connections」をクリックします
    • インテグレーションを選択します
  3. .env ファイルを作成します。

NOTION_API_KEY=your-api-key-here
NOTION_DATABASE_ID=your-database-id-here
  1. Claude Desktop を設定します。
{
  "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 の起動時にサーバーが起動します
  • 手動でサーバーを管理する必要はありません
  • Claude を終了するとサーバーも停止します

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

使い方

Claude を通じて実行する基本的なコマンド:

  • 「すべての ToDo を表示して」
  • 「今日のリストには何がある?」
  • 「今日の ToDo を追加して:メールを確認」
  • 「後で取り組むタスクを追加して:プロジェクトを確認」

制限事項

  • 特定の Notion データベース構造でのみ動作します
  • 複雑なデータベーススキーマには対応していません
  • タスクのスケジュール設定は「today」または「later」に限られます
  • 追加プロパティやカスタムフィールドには対応していません
  • エラー処理は基本的なものです
  • 繰り返しタスク、優先度、タグなどの高度な機能はありません

カスタマイズ

異なるデータベース構造で使用する場合は、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 License — 自己責任でご使用ください

謝辞

  • Claude Desktop で動作するように構築されています
  • Notion の API を使用しています

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。