🙌

Claude DesktopとNotionをMCPで連携させていろいろ試してみた🙌

に公開

Claude DesktopとNotionをMCPで連携させていろいろ試してみた

はじめに

こんにちは、令和トラベル miisan です。

MCPが注目されている昨今、Notionの公式MCPサーバーが公開されたので、まずは使っておこう!ということで、早速試してみました👀
セットアップに関する先人の知恵はたくさんあると思うので、少し実例を交えながら紹介してみます。

この記事では、Claude DesktopとNotionをMCPで連携させる方法と、それを使った実践例をご紹介します。

MCPとはそもそもなんじゃ?

MCP(Model Context Protocol)は、AIモデルが外部リソースにアクセスするための標準的なプロトコルです。従来のAIモデルは、トレーニングデータの範囲でしか応答できませんでしたが、MCPを利用することで、リアルタイムのデータやプライベートなデータにアクセスできるようになります。

簡単に言えば、AIに「手足」を与えるようなもので、例えばClaudeがNotionのデータベースを検索したり、更新したりできるようになります。

MCPの主な特徴としては

  • AIモデルが外部のツールやAPIを利用できるようになる
  • プライベートデータへのアクセスが可能になる
  • リアルタイムの情報を取得できる
  • 特定のタスクを実行するための能力が拡張される

MCPについてさらに詳しく知りたい方は、以下を参考にしてください。

Notion MCPサーバーで何ができるの?

ここから本題。Notion MCPサーバーで何ができるのか?
結論、Notion MCPサーバーを利用すると、Claude DesktopからNotionのデータにアクセスしたり操作したりすることができます。

主な機能としては、

  1. データベースの検索・クエリ:Notionのデータベースから特定の条件に合うデータを検索できる
  2. ページの作成・更新:新しいNotionページを作成したり、既存のページを更新できる
  3. ブロックの操作:ページ内のブロック(テキスト、リスト、コードなど)を追加・編集・削除できる
  4. コメントの取得・作成:ページやブロックに付けられたコメントを取得したり、新しいコメントを追加したりできる

といったことが可能になります。

Let's setting!!

事前準備

Node.jsのバージョンの確認

まずは、Node.jsのバージョンを確認しましょう。Notion MCPサーバーを動かすにはNode.js v18以上が必要です。

node -v

もし古いバージョンだった場合は、Node.jsの公式サイトから最新版をダウンロードしてインストールしましょう。

Notion統合の設定

  1. Notion Developer Portalにアクセス
  2. 「+ New integration」をクリック
  3. 統合の名前(例:「My MCP Integration」)を入力
  4. 関連するワークスペースを選択
  5. Type=Internalを選択し、必要であればLogoも設定する
  6. 「Save」をクリック
  7. 生成されたシークレットトークンをメモ(これがNOTION_API_KEYになります)

Claude Desktopでの設定

  1. Claude Desktopを開く
  2. 設定(歯車アイコン)をクリック
  3. 「開発者」タブを選択
  4. 「構成を編集」をクリック
  5. claude_desktop_config.json ファイルを編集する(既存設定とは別で追加する)
claude_desktop_config.json
{
    "mcpServers": {
      "notionApi": {
        "command": "npx",
        "args": ["-y", "@notionhq/notion-mcp-server"],
        "env": {
          "OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer NOTION_API_KEY\", \"Notion-Version\": \"2022-06-28\" }"
        }
      }
    }
  }

これで、Claude DesktopからNotionのMCPサーバーに接続できるようになります。
設定が終わるとClaudeの「設定 > 開発者タブ」に追加されていることを確認できます👀

そしてきちんと設定が完了すると、キャプチャのようにハンマーマークが追加されます🔨

Notionにインテグレーションを接続

最後に、Notionページでインテグレーションを接続します。

ポイント

ファイルを保存しただけでは反映されず、動作しません😢

エラーが繰り返し発生する場合は、設定や前提条件のどこかに誤りがある可能性があります。
私はEBADENGINEが鳴り止まなかったのですが、原因はNode.jsのバージョンが古かったという単純なミスでした。

エラーログもClaudeの「設定 > 開発者タブ」から閲覧できます。
エラー内容が分からなくても、ChatGPTなどにエラーログについて尋ねれば、解決策が見つかることが多いでしょう。私が説明するよりきっと有益な情報を得られます。笑

実践例

ここまでまとめてきた内容を理解し、いくつか活用してみました。

  • 「今週のタスクをまとめて」と頼むと、NotionのタスクデータベースからデータをClaudeが取得して要約
  • 「会議の議事録を作成して」と言うと、Claudeが適切なテンプレートでNotionページを作成
  • 「Notion上の仕様書からテスト設計して」と聞くと、テスト観点を整理し、テスト設計書を作成

タスクの取得

Notionの個人タスク管理用のデータベースがあるので、Claudeに「今日のタスク、スケジュールを教えて」と尋ねると、Claudeは以下のような処理を行いました。

  1. NotionのAPIを通じてデータベースを検索
  2. 実行日範囲に該当するタスクをフィルタリング
  3. 結果を整形して表示

感想)複数の場所に分散したタスクをまとめるような用途には有効そうですが、必ずしもClaudeを使う必要はないかもしれない...と感じました。(実際に連携できているかのテスト用途の実践例くらいの感覚)

議事録作成

ちょうど社内で、月に一度の全社定例会議があったので、それを題材に試してみました。
Google MeetやGeminiの書き起こし機能で十分かもしれませんが、あくまで主題は「Claude DesktopとNotionをMCPで連携させて模索する」という前提なので、

  • Geminiで議事録内容を文字起こし
  • 文字起こしした内容をClaudeに連携させる

その上で、「「20250411_締め会」という名前のNotionページを作成し、内容のサマリと会話内容を会議メモとして作成して」とClaudeに指示しました。

  1. Notionに新しいページを作成
  2. 適切なテンプレート(日付、参加者、アジェンダなどのセクション)を適用
  3. 作成したページへのリンクを返す

感想)議事録のサマリ・重要観点のまとめとしては非常に的確なアウトプットが出てきました!詳細はお見せできませんが、普通に精度が高くて会議終わりにすぐに良質なサマリがNotionに上がっている状態を作れたので、Notion文化の弊社では良いかも!と思えました👀

仕様書を連携しテスト観点を整理する

Notion文化の弊社なので、Notionを連携して次のアウトプットに繋げることができると良いなと思い、仕様書からテスト設計のアウトプットを期待することにしました。
直近のリリース案件の中からそこまで大きすぎない案件を選び、試してみました。
旅行予約をキャンセルする時のキャンセル理由に関する追加案件がちょうどあったので、こちらの案件で試してみました。

「Aページの仕様内容やKPI、設計思想を理解し、FigmaのBにasis/tobeのフローがあるのでNotionページとFigmaの内容を考慮した上で、新しく「テスト設計_ホテルキャンセル」ページを作成し、テスト観点を作成してください。」と質問しました。

  1. 「テスト設計_ホテルキャンセル」ページを作成
  2. テスト設計書ドキュメンテーションが出力される

感想)正直、初速としてはほぼ完璧でした。Notion内に十分な情報があるということが前提だったので、影響範囲の特定や過去議論まで含めたテスト設計書をある程度のレベルで叩き出してきました。いわゆるテストケースレビューをしている感覚で、コメントを残し手直しすればFIXできます。大幅に時間短縮できました🎉
そしてこの修正やコメント含め、Claude上で完結させることも可能です🙆‍♀️
また、Slack情報に関するコンテキストもインプット情報に入れていたため、なぜその仕様になったのか?など、過去にやり取りしていたスレッド情報まで出力してくれて手厚かったです🥺

詳細の中身まではお見せできませんが、出力構造だけ明記しておきます。

テスト設計書 - ホテルキャンセル理由画面追加
  • テスト概要
    • テスト目的
    • テスト範囲
  • テスト観点 (※IDと項目と期待値のテーブル構造によるアウトプット)
    • 2.1 機能テスト
    • 2.2 UI/UXテスト
    • 2.3 データ保存・連携テスト
    • 2.4 エッジケーステスト
  • テストケース詳細
    • 3.1 キャンセル理由選択画面のテストケース
    • 3.2 キャンセル完了画面のテストケース
    • 3.3 エラーハンドリングテストケース
  • テスト環境
  • デバイス
  • データ反映
    • 社内システム
    • マーケティング分析システム
  • テスト実施スケジュール
  • 参考資料

まとめ

NotionのMCPの公開に合わせて、今週試行錯誤しましたが、Notionによるドキュメント文化のある環境だと、かなり有効な活用方法があると感じました。

Claude DesktopとNotionをMCPで連携させることで、AIにNotionのコンテンツを読み書きする能力を持たせることができるだけでなく、実際の業務支援ツールとしての活用が可能になりそうです。

特に

  • 情報の検索・集約
  • コンテンツの作成・更新の自動化
  • データ分析や要約
  • ワークフロー全体の効率化

これらの用途において、特に威力を発揮しそうです!

設定は少し手間がかかってしまう方もいるかもしれませんが、一度環境を整えれば、非常に便利なツールになります。
私はClaude派なので、今回はClaudeでのトライアルを行ってみましたが、他でも連携可能なので、ぜひみなさんも色々試してみてください!

参考リンク

令和トラベル Tech Blog

Discussion