株式会社TEMPのロゴ画像

Claude経由でNotionを操作する方法【Notion MCP】

Claude経由でNotionを操作する方法【Notion MCP】

Notion MCP Server リリース

2025年4月、 Notion 公式の MCP Server がリリースされました。

MCP Server を使うことで Claude に指示を出して Notion 上に新しいページを作成したり、特定のページにコメントを書き込ませたり、 今日のタスクを検索してもらう といったことが可能になりました。

本記事では、Claude と Notion の連携方法を、初心者にもわかりやすく紹介していきます。

Claude にタスク管理をしてもらっている実際のようす
Claude にタスク管理をしてもらっている実際のようす
本記事の内容は動画でも解説しています

MCP は例えるなら USB Type-C のようなもの

まず、MCP という技術について簡単に解説します。技術の理解は置いておいて設定方法から知りたい方は次の章まで飛ばしてください。

MCP の概念図

まず MCP とは、Model Context Protocol の略で、LLM(大規模言語モデル)に外部ツールやデータへのアクセス手段を提供するためのプロトコルです。 Claude を開発している Anthropic 社が2024年11月に提唱 しました。

ここで出てくる「プロトコル」は、聞き馴染みのない言葉かもしれませんが、日本語でいう「規格」みたいなものです。例えとして出てくるのは MCP は AI にとっての「USB-C」のようなものをイメージしてもらうと分かりやすいと思います。

MCP は USB type-C の規格のようなもの

例えば USB-C も規格の1つですが、Mac や Windows、iPhone など、さまざまなデバイスと共通の USB-C という規格で繋げることができています。USB-C という規格がメーカーはバラバラでも揃っていることで、ケーブル1本で接続することができます。MCP も同じで、共通の規格を使うことで、AI が Notion をはじめとする様々なツールと連携できるようになります。

2025年4月 Notion MCP Server が公開

Notion 公式が公開した Notion MCP サーバー も、この MCP に対応した外部ツールの一つです。

Notion API の2025年4月10日のポスト
Notion API の X アカウント にて2025年4月に公開

Notion の提供する API 機能を MCP サーバーとして動かすもので、Claude のような MCP 対応 AI(MCP クライアント)から Notion のデータベースやページを操作することができるようになります。

実際に操作している例
Notion のページの内容を Claude から取得することができる
Notion 側のデータベースに入っている情報

Claude と Notion を MCP 連携すると何ができる?

Notion データベースに入っている情報を取得する例を紹介しましたが、基本的には Notion API で操作できる範囲であれば MCP 経由で操作可能です。例えば、下記のようなことが可能です。

  • Notion 上のデータベースに対して、Claude に新しいアイテム(ページ)を作成してもらう
  • 指定した Notion ページに、Claude に代わりコメントを書き込んでもらう
  • Notion のページ内容を Claude が取得して要約し、その要約結果を返してくれる
  • 調べ物をして Notion ページに内容をまとめてもらう

Notion MCP Server を設定する

それではここからは Notion MCP Server と Claude を接続する方法について解説していきます。Claude と Notion を連携するためには、事前に以下の準備・環境が必要です。

Claude Desktopアプリ(Claude のデスクトップ版)

Claude のデスクトップアプリ版をダウンロードする

ブラウザ版の Claude では MCP 連携機能が使えないため、必ずデスクトップアプリ版を使用します。Claude for Desktop がインストールされていない場合は、 Claude 公式サイト からダウンロードしてインストールしてください。

Node.js (バージョン18以上)

Claude Desktop が MCP サーバーを動作させる際に、バックエンド(お持ちのパソコン上で)で Node.js を使用します。 Node.js は必ず v18 以上 をインストールしてください (古いバージョンではサーバーが起動しません)。

円谷のアイコン

Notion公式アンバサダー / 株式会社TEMP代表

円谷

Node.js がインストール済みかどうかは、ターミナルやコマンドプロンプトで node -v を実行すれば確認できます。v18 未満の場合は Node.js 公式サイト から最新版を導入しましょう。

Node.js がインストールされているかコマンドで確認する(画像は v20.9)
Node.js がインストールされているか確認する(画像は v20.9)

テキストエディタを準備する

Claude Desktop の設定ファイルを編集するために使用します。OS 標準のメモ帳もしくは VSCode などのエディタをご用意ください。

VSCode:無料で使用可能(筆者もVSCode を使用)

Step 1: Notion 内部インテグレーションを作成しトークンを取得する

インテグレーション取得の方法は動画でも解説しています

まずは Notion 側で、Claude からアクセスするための内部インテグレーション(Internal Integration)を作成します。ここで発行されるトークンを Claude 側の設定に利用します。

まずブラウザで NotionのMy Integrationsページ を開きます。 Notion にログインしていない場合はログインしてください。 「新しいインテグレーション」ボタンをクリック し、新しいインテグレーションを作成します。

新しいインテグレーションを作成する
Notion API インテグレーションのページ
インテグレーションに任意の名前(例:「Claude 連携用」など)を付け、連携するワークスペースを選択します。
インテグレーションを作成
内部インテグレーションシークレットが発行されるので、こちらを コピーして控えます 。後ほど Claude 側の設定で使用するので、安全な場所に保存しておいてください。
インテグレーションシークレットをコピーして控える
円谷のアイコン

Notion公式アンバサダー / 株式会社TEMP代表

円谷

こちらの設定項目は外部の人には共有しないようにしてください。こちらの値が漏れると、外部からご自身の Notion ページを操作されてしまう恐れがあります。

機能の項目では、必要なものにチェックを入れます。デフォルトでは「コンテンツを読み取る」「コンテンツを更新」「コンテンツを挿入」にチェックが入っていますが、必要に応じて「コメントの読み取り」「コメントを挿入」も ON にしましょう。ON にした項目を AI が操作できるようになります。

Step 2: Notion 側ページにインテグレーションを接続

作成したインテグレーションを、実際に操作させたい各Notionページやデータベースに「接続」として追加

対象のページを開き、右上の「•••」メニューから「接続」を選択し、先ほど作成したインテグレーションを選びます。データベースの場合も同様です。

メニュー内からインテグレーションを接続

※この手順を忘れると、Claudeからそのページにアクセスできず、APIが権限エラーを返します 。必ず操作対象のページ/データベースにインテグレーションを追加してください。

Step 3: Claude Desktopの設定ファイルにNotion MCPサーバーを登録する

次に、Claude Desktop アプリで Notion MCP サーバーを利用するための設定を行います。Claude Desktop には MCP 対応ツールを登録する設定ファイルがあり、そこに Notion 用サーバーを追記します。

Claude Desktopアプリを起動 し、 設定ファイル(claude_desktop_config.json)を開きます

設定ファイルは以下の場所にあります。

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Claude Desktop アプリのメニューから開くこともできます(例: Macではメニューバーの「Claude > 設定 > 開発者 > 構成を編集」)。

テキストエディタでこのファイルを開き、中身を編集します。
VSCode で claude_desktop_config.json のファイルを開いたようす

編集する際は下記のコードをコピーして貼り付けていただくと便利です。こちらのコードは Notion MCP Server のページからも確認できます。

{
  "mcpServers": {
    "notionApi": {
      "command": "npx",
      "args": ["-y", "github:makenotion/notion-mcp-server"],
      "env": {
        "OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer YOUR_NOTION_API_TOKEN\", \"Notion-Version\": \"2022-06-28\" }"
      }
    }
  }
}

上記の YOUR_NOTION_API_TOKEN 部分には、Step 1でコピーしたあなたの Notion インテグレーションのトークン値に置き換えます。このトークンが正しくないと Claude から Notion への認証ができないため、間違いのないように貼り付けてください 。

JSON ファイルの編集が終わったら ファイルを保存 します(Ctrl+S や ⌘+S)。カンマの付け忘れや括弧の不一致などがないよう注意しましょう。

Step 4: Claude Desktopを再起動し連携が有効か確認する

設定を反映させるため、Claude Desktop アプリを再起動して連携が有効になっているか確認します。

再起動後、チャット入力欄(プロンプト入力エリア)の右下に ハンマー(🔨)アイコン が表示されているか確認します 。このハンマーアイコンは、Claude に追加された外部ツール(MCP サーバー)がある場合に表示される「ツール一覧」ボタンです。

Claude を再起動してハンマーアイコンが表示されていれば成功
ハンマーアイコンが表示されていれば成功

ハンマーアイコンをクリックすると利用可能なツールのリストが表示されます。設定が成功していれば、その中に notionApi 関連のツール(例: API-post-search や API-patch-page など、Notion API 操作用のエンドポイント)が含まれているはずです 。これらが確認できれば Claude と Notion の連携設定は完了です。

Notion 関連の MCP ツールが表示される

万一ハンマーアイコンが見当たらない場合やツールが表示されない場合は、次のトラブルシューティングのセクションを参照してください。

Claude に Notion 操作を依頼してみよう(活用例)

設定が無事完了したら、実際にClaudeにNotion上の操作をお願いしてみましょう。Claudeはチャットボットですが、MCP連携により Notionを操作するエージェント のような働きもできるようになっています。

今日のタスクを教えてもらう

実際にタスク管理のデータベースと接続させて、今日のタスクを教えてもらいましょう。「Notionから今日のタスクを取得して教えて」というプロンプトを実行してみます。

今日のタスクを表示してくれる
Notion 側のタスクはこのようになっている(正しい情報が返ってきている)

今日のタスクに「振り込み作業」タスクを追加

新しくタスクを追加しましょう。Claude に「今日の日付で「振り込み作業」というタスクを追加して。9:00 -」とお願いしてみましょう。

実際にタスクが作成され、Notion 側のデータベースにも反映されています。

これ以外にも、

  • 昨日の議事録から要点を抽出して教えて
  • 〇〇についてリサーチした結果を Notion ページにまとめて

など、Notion API で可能な範囲であればさまざまな使い方が考えられます。

まとめ

今回は、Notion公式のMCPサーバーを使って ClaudeとNotionを連携する方法 を初心者向けに解説しました。内部インテグレーションの作成からClaude Desktopの設定ファイル編集、動作確認までの手順を一通りご紹介しました。

一見ハードルが高そうに感じますが、一度設定を済ませてしまえば AI と Notion を組み合わせたワークフロー を手に入れることができます。今後 MCP はますます重要な技術になっていくと思われます。ぜひご活用いただければと思います。

トラブルシューティング(うまくいかない場合)

設定を行ったにもかかわらずうまく動作しない場合は、次のポイントを確認してください。

ハンマーアイコンが表示されない (Claude Desktop 再起動後にツールボタンが出てこない)
  • 設定ファイルの内容に JSON の文法ミス がないか確認しましょう。特にカンマや引用符の漏れ・余分がないか見直してください。
  • Node.js が 正しくインストール されているか確認しましょう。 node -v でバージョンが表示されなかったりコマンドが見つからない場合、Node.jsのインストールがうまくいっていません。再インストールやパスの再設定を試みてください。
  • 設定ファイルを保存する場所が正しいか確認します。OS ごとの所定のパス(macOS なら上記の Library 配下、Windows なら %APPDATA% 配下)にファイルを配置できているか再チェックしてください。
ハンマーアイコンは表示されるが、指示を実行するとエラーになる
  • 設定したNotionのAPIトークンに誤りがないか確認してください。コピー漏れや余計な空白文字が入っていないかもチェックしましょう。
  • 作成したインテグレーションを対象のページ/データベースの「接続」に 追加し忘れていないか 確認してください 。この接続を行っていないと権限エラーで失敗します。
  • インテグレーションに付与した権限が不足していないか確認しましょう。ページの追加ができない場合は「Insert content」にチェックが入っているかなど、権限設定を再度見直してください。
Claude Desktopのログに EBADENGINE というエラーが出る
  • Node.js のバージョンが古すぎる可能性があります 。Node.js は v18 未満では動作しないため、最新版にアップデートしてください。
Claudeが「Request timed out」と表示して応答しない
  • 内部で起動した Notion MCP サーバーが応答していない可能性があります。ネットワーク接続やトークンの有効性などを確認し、必要に応じて Claude Desktop の再起動を試してください。
32603: Headers is not defined のエラーが出る
  • キャッシュを消して Claude を再起動してみましょう

上記の点をチェックすることで多くの場合問題が解決するはずです。設定に問題がないのにエラーが解消しない場合は、 GitHub の Issue で類似の不具合事例がないか調べてみると良いでしょう。