Notion について
Notion API 向け MCP サーバーのフォークで、通信方式を Stdio から Server-Sent Events(SSE)に変更しています。MCP クライアントから連携済みの Notion ページやデータベースにアクセスでき、公開する API の範囲は限定されています。
主な機能
- 01MCP 経由の Notion API アクセス
- 02SSE トランスポート
- 03ページ内容の取得と作成
- 04ページへのコメント追加
- 05npm と Docker によるセットアップ
活用シーン
- 01ID を指定した Notion ページの取得
- 02親ページ配下へのページ作成
- 03Notion ページへのコメント追加
MCP 対応
Notion API の一部機能を MCP クライアントに公開します。このフォークは Stdio の代わりに Server-Sent Events(SSE)を使用し、npm または Docker で連携を設定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ContexaAI で数分でデプロイして使い始める
重要なお知らせ
This repository is a fork of the official Notion MCP server available on NPM.
The primary modification is the replacement of the transport mechanism from Stdio to Server-Sent Events (SSE).
Notion MCP サーバー
このプロジェクトは、Notion API 用の MCP サーバーを実装しています。
インストール
1. Notion でのインテグレーションの設定:
https://www.notion.so/profile/integrations にアクセスし、新しい内部インテグレーションを作成するか、既存のものを選択します。

公開する Notion API の範囲は制限されています(たとえば、MCP 経由でデータベースを削除することはできません)が、LLM に公開することでワークスペースのデータにリスクが生じる可能性はゼロではありません。セキュリティを重視するユーザーは、インテグレーションの Capabilities をさらに設定することをおすすめします。
たとえば、「Configuration」タブで「Read content」アクセスのみを付与すると、読み取り専用のインテグレーショントークンを作成できます。

2. コンテンツをインテグレーションに接続:
関連するページとデータベースがインテグレーションに接続されていることを確認します。
接続するには、ページにアクセスし、3 つのドットをクリックして、「Connect to integration」を選択します。

3. クライアントに MCP 設定を追加:
npm を使用する場合:
以下を .cursor/mcp.json または claude_desktop_config.json(MacOS:~/Library/Application\ Support/Claude/claude_desktop_config.json)に追加します。
{
"mcpServers": {
"notionApi": {
"command": "npx",
"args": ["-y", "@notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}
Docker を使用する場合:
Docker で MCP サーバーを実行する方法は 2 つあります。
オプション 1:公式 Docker Hub イメージを使用する:
以下を .cursor/mcp.json または claude_desktop_config.json に追加します。
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "OPENAPI_MCP_HEADERS",
"mcp/notion"
],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\":\"Bearer ntn_****\",\"Notion-Version\":\"2022-06-28\"}"
}
}
}
}
この方法では:
- 公式 Docker Hub イメージを使用します
- 環境変数を使って JSON のエスケープを適切に処理します
- より信頼性の高い設定方法を提供します
オプション 2:Docker イメージをローカルでビルドする:
Docker イメージをローカルでビルドして実行することもできます。まず、Docker イメージをビルドします。
docker-compose build
次に、以下を .cursor/mcp.json または claude_desktop_config.json に追加します。
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"OPENAPI_MCP_HEADERS={\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\"}",
"notion-mcp-server"
]
}
}
}
ntn_**** をインテグレーションシークレットに置き換えるのを忘れないでください。デベロッパーポータルのインテグレーション設定タブで確認できます。
使用例
- 次の指示を使用します。
Comment "Hello MCP" on page "Getting started"
AI はタスクを達成するために、v1/search と v1/comments の 2 つの API 呼び出しを適切に計画します。
- 同様に、次の指示を使用すると、「Development」親ページに「Notion MCP」という名前の新しいページが追加されます。
Add a page titled "Notion MCP" to page "Development"
- コンテンツ ID を直接参照することもできます。
Get the content of page 1a6b35e6e67f802fa7e1d27686f017f2
開発
ビルド
npm run build
実行
npx -y --prefix /path/to/local/notion-mcp-server @notionhq/notion-mcp-server
公開
npm publish --access public
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。