更新日: ・ 自動化ノートの管理人

Claude CodeからNotionを読み書きできるようにする(Notion MCPのつなぎ方)

「Notionのタスクを見て、今日やることをまとめて」「この内容を家計メモのページに書き足して」。Claude Codeにこう頼めるようになると、Notionで管理している家の用事を、話しかけるだけで動かせるようになります。そのための窓口が「Notion MCP」です。

この記事では、Claude CodeにNotion MCPをつなぐ手順と、実際に使ってみて分かった注意点をまとめます。

Notion MCPとは

MCP(Model Context Protocol)は、AIが外部のサービスを操作するための共通のつなぎ方です。Notionは公式のMCPサーバーを公開していて、そのURLは https://mcp.notion.com/mcp です。Claude Codeにこれを登録すると、会話の中で「このページを読んで」「このデータベースに1行足して」と頼めるようになります。

自分でプログラムを書く必要はありません。登録とログインの2つの手順で使い始められます。

つなぐまでの流れ

  1. 1. コマンドで登録claude mcp add で、Notion MCPのURLを登録する
  2. 2. ブラウザでログイン/mcp から、Notionのアクセスを許可する
  3. 3. 試しに読ませるページを1つ要約させて、つながったかを確かめる
Claude Codeの公式ドキュメントとNotionの公式ドキュメントの手順をもとに整理したものです。

手順1: コマンドで登録する

ターミナルで次のコマンドを実行します。Notionの公式ドキュメントに載っている、Claude Code向けのコマンドそのままです。

claude mcp add --transport http notion https://mcp.notion.com/mcp

途中の notion は、自分で付ける呼び名です。あとで権限の設定などに使うので、短く分かりやすい名前にしておきます。

このコマンドで登録すると、今いるフォルダ(プロジェクト)の中だけで使える設定になります。使える範囲は --scope で変えられます。

--scope の値使える範囲設定の保存先
local(指定しないとき)今のプロジェクトだけホームフォルダの .claude.json
userすべてのプロジェクトホームフォルダの .claude.json
project今のプロジェクトだけ(設定ファイルを共有できる)プロジェクトの .mcp.json

家の用事を自動化するなら、どのフォルダで作業していても使えるように user にしておくと便利です。

claude mcp add --transport http notion --scope user https://mcp.notion.com/mcp

手順2: ブラウザでログインする

登録しただけでは、まだNotionの中身は読めません。Claude Codeを起動して /mcp と入力し、一覧から notion を選ぶと、ブラウザが開いてNotionへのログインと許可の画面になります。使うワークスペースを選んで許可すれば完了です。ターミナルから claude mcp login notion を実行しても同じことができます。

ログインの情報はClaude Code側に保存され、期限が来ると自動で更新されます。そのため、毎回ログインし直す必要はありません。

つながったら、「Notionで『買い物メモ』というページを探して、中身を3行で要約して」のように頼んでみてください。ページの中身が返ってくれば成功です。

claude.aiでNotionをつないでいる場合

ブラウザ版のclaude.aiで、すでにコネクタとしてNotionを追加しているなら、上の手順は要らないかもしれません。Claude Codeの公式ドキュメントによると、claude.aiのアカウントでClaude Codeにログインしていれば、claude.aiで追加したコネクタはClaude Codeでも自動で使えます。/mcp の一覧に、claude.aiから来たことを示す表示付きで並びます。

両方で登録すると同じNotionが2つ並んでしまうので、どちらか一方にしておくと迷いません。

APIの「インテグレーション」との違い

NotionをプログラムからAPIで操作する方法もあります。こちらは「インテグレーション(コネクト)」を作って、その秘密の鍵(トークン)で動かします。どちらを使うかは、用途で選ぶのがおすすめです。

Notion MCPAPI(インテグレーション)
誰の権限で動くかログインした自分インテグレーション
読み書きできる範囲自分が見られるページ「コネクトを追加」したページとその下の階層
ログインブラウザでの許可が必要トークンを設定するだけ
向いている使い方会話で頼む、内容に応じて判断させる決まった処理を毎回同じように動かす

Notionの公式ドキュメントでは、MCPは許可したワークスペースの中で「自分がアクセスできる内容を読み書きできる」と説明されています。ページごとに接続を追加しなくてよいので手軽ですが、そのぶん触れる範囲が広いことは覚えておきましょう。また、許可の手続きはブラウザでの操作が前提で、対話なしでの許可にはまだ対応していないと書かれています。毎日の自動実行で使う場合も、最初の1回は自分の手でログインしておく必要があります。

APIのほうでよくある「IDは合っているのに見つからない」というエラーについては、Notion APIが「object_not_found(404)」を返すときの確認手順にまとめました。

使ってみて分かった注意点

書き込む場所を決めておく

MCPは自分と同じ範囲に書き込めます。頼み方があいまいだと、思っていないページに書き足されることがあります。「この親ページの下にだけ新しいページを作って」のように、書き込む場所をはっきり伝えるのが安全です。毎回同じ注意を書くのが面倒なら、Claude Codeが毎回読む CLAUDE.md というメモに書いておくと、言わなくても守ってくれるようになります。

書いたら読み返させる

私の環境では、書き込みの方法によって、改行が「\n」という2文字のまま入ってしまったことがありました。日本語の一部が別の字になっていたこともあります。どちらも、書き込んだ直後にもう一度そのページを読ませれば気づけます。「書いたらページを読み返して、崩れていないか確かめて」と頼んでおくと安心です。

大きなページは読む範囲を絞る

ページやデータベースが大きいと、読み込むだけで時間がかかり、使える量(トークン)も多く使います。「今週の期限のタスクだけ」のように、必要な範囲を指定して頼むと速く終わります。

まとめ

ページやデータベースのIDが必要になったときは、NotionのID取り出しツールを使うと、URLを貼るだけで取り出せます。