Notion MCP を Claude Code に連携|設定手順と活用例まで
Notion をターミナルの Claude Code から直接読み書きしたい開発者向けに、Notion MCP の接続方法を整理しました。ブラウザ版チャットのコネクターとは別に、Claude Code では claude mcp add コマンド一発でワークスペースをツールとして登録できます。本記事ではリモート MCP とローカル API トークンの二方式の違い、認証手順、実際の開発ワークフローでの使い方、そして権限まわりの落とし穴までをまとめます。
Notion MCP は Claude Code に リモート MCP(OAuth) か ローカル MCP(API トークン) の 2 方式で登録でき、手軽さ優先ならリモート方式が最短だとわかる。claude mcp add で接続すればターミナルから Notion のページ検索・作成・更新をツールとして呼び出せ、タスク同期や議事録整形を自動化できる。接続時は付与するページ範囲を絞ることが安全設計の要になる。
Contents (11)
Notion MCP と Claude Code 連携とは
MCP(Model Context Protocol)は、AI クライアントに外部ツールやデータへの標準的なアクセス手段を与えるプロトコルです。Notion は公式に MCP サーバーを提供しており、これを Claude Code に登録すると、ターミナル上の対話から Notion のページ検索・作成・更新といった操作をツール呼び出しとして実行できます。
ブラウザ版 Claude.ai の「コネクター」がチャット中心のナレッジワーカー向けであるのに対し、Claude Code 連携は リポジトリ操作と Notion を同じ対話の中で扱える 点が最大の利点です。たとえば「Notion の仕様ページを読んで、その通りにコードを直して」といった指示がひとつのセッションで完結します。
2 つの接続方式の違い
Claude Code から Notion MCP を使う方法は大きく 2 系統あります。
| 項目 | リモート MCP(OAuth) | ローカル MCP(API トークン) |
|---|---|---|
| 接続先 | Notion ホスト型エンドポイント | ローカルで npx 起動 |
| 認証 | ブラウザで OAuth 承認 | ntn_ で始まるトークンを自己管理 |
| 設定難度 | 低(コマンド1行+承認) | 中(トークン発行・環境変数設定) |
| 向いている人 | まず動かしたい人 | 権限や挙動を細かく制御したい人 |
初めて試すならリモート MCP が圧倒的に楽です。一方、社内ポリシーで外部ホスト接続が制限される場合や、特定インテグレーションの権限だけを厳密に絞りたい場合はローカル MCP が適します。
出典: Claude Code から Notion を操作する 2 つの連携方法(Zenn)
リモート MCP(OAuth)で接続する手順
最短で動かせる推奨ルートです。以下の順に進めます。
- ターミナルで対象プロジェクトのディレクトリに移動する。
claude mcp add --transport http notion https://mcp.notion.com/mcpを実行して Notion のリモート MCP を登録する。- Claude Code を起動し、
/mcpコマンドで登録済みサーバー一覧にnotionが表示されることを確認する。 - 認証が求められたらブラウザが開くので、Notion にログインして OAuth 認証を承認する。
- 承認時に アクセスを許可するページ範囲を選択 し、必要な範囲だけに絞る。
- ターミナルに戻り、「Notion で〇〇というページを検索して」と指示してツールが呼ばれれば接続完了。
OAuth 方式はトークンをファイルに書かないため、鍵の漏洩リスクを最小化できます。接続スコープはあとから Notion 側の設定でいつでも見直せます。
ローカル MCP(API トークン)で接続する手順
外部ホストを介さず、npx で MCP サーバーを起動する方式です。
Step 1: インテグレーションを作成する
Notion の My integrations で新規インテグレーションを作成し、ntn_ で始まる Internal Integration Token を発行します。
Step 2: 対象ページに接続を許可する
操作したい Notion のページやデータベースを開き、右上メニューの「接続」から作成したインテグレーションを追加します。この共有を忘れると、トークンがあってもページが見えません。
Step 3: Claude Code に登録する
以下のように環境変数でトークンを渡してローカル MCP を追加します。
claude mcp add notion \
-e OPENAPI_MCP_HEADERS='{"Authorization":"Bearer ntn_あなたのトークン","Notion-Version":"2022-06-28"}' \
-- npx -y @notionhq/notion-mcp-server
トークンはチャット欄に直接貼り付けず、環境変数経由で扱います。万一漏洩した際は Notion 側で速やかに再生成してください。
出典: Claude Code × Notion MCP 連携の実践ガイド(fyve)
接続できたか確認する
登録後は Claude Code のセッション内で /mcp を実行し、notion サーバーが connected 状態か、利用可能なツール(検索・ページ取得・作成など)が並んでいるかを確認します。表示されない場合は、リモート方式なら OAuth 承認の未完了、ローカル方式ならトークンの誤りかページ共有漏れが典型的な原因です。
簡単な動作確認として「自分の Notion から最近更新したページを 3 件教えて」と尋ね、正しく一覧が返れば連携は機能しています。
開発現場での活用例
Claude Code に Notion MCP をつなぐと、コードとドキュメントを横断する自動化が可能になります。
- 仕様駆動の実装: Notion の仕様ページを読み込ませ、その内容に沿ってコードを修正させる。
- タスク同期: Notion のタスクデータベースを読み取り、GitHub Issue へ変換・同期させる。
- 議事録の整形: 打ち合わせメモを渡し、決定事項と ToDo に構造化して Notion ページへ書き戻す。
- 横断検索: 散在するナレッジを Notion 内で検索させ、実装の参考情報として引用させる。
とくにタスク同期は反復作業を削減できるため、チーム開発で効果が大きい活用例です。
出典: Notion のタスクを GitHub Issue へ自動同期(Future Tech Blog)
権限とセキュリティの注意点
Notion MCP は接続したユーザーやインテグレーションの権限をそのまま引き継ぎます。安全に運用するための要点は次の通りです。
- ページ範囲を絞る: OAuth 承認時やインテグレーション共有時に、必要なページ・データベースだけを対象にする。ワークスペース全体を無条件に許可しない。
- トークンを平文で扱わない: API トークンは環境変数で渡し、リポジトリや会話にコミットしない。
- 書き込み操作は確認する: ページ更新・削除を伴う指示は、実行前に対象を明示させて誤操作を防ぐ。
- 不要になったら失効させる: 使わなくなったインテグレーションやトークンは Notion 側で速やかに無効化する。
これらを守れば、開発効率を上げつつ情報漏洩や誤削除のリスクを抑えられます。
まとめ
Notion MCP を Claude Code に連携すると、ターミナルからコードとナレッジを一体で扱えるようになります。まずはリモート MCP(OAuth)で最短接続を試し、細かな権限制御が必要になったらローカル MCP(API トークン)へ移行するのが実務的な進め方です。導入時は付与するページ範囲を最小限に絞り、トークン管理を徹底することが安全運用の前提となります。