Simple Notion MCP Server について
Simple Notion MCP Serverは、AIアシスタントからNotionページを取得するMCPサーバーです。ページを大きなJSONではなく、リッチテキストの書式を保ったMarkdownとして返します。
主な機能
- 01NotionページのMarkdown変換
- 02太字、斜体、取り消し線、コードの保持
- 03入れ子になったページブロックの再帰取得
- 04ページIDによるページ取得
活用シーン
- 01AIアシスタント経由でのNotionページ閲覧
- 02Markdown形式でのページ内容の処理
MCP 対応
MCPクライアントに`get_page`ツールを公開し、Notionページを取得してMarkdownで返します。利用にはNotionインテグレーションのトークンが必要で、対象ページをそのインテグレーションと共有します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
シンプルな Notion MCP サーバー
概要
このプロジェクトは、AI アシスタントと Notion API の橋渡しをする Model Context Protocol(MCP)サーバーを実装します。大きな JSON の塊を返す公式の Notion MCP サーバーとは異なり、このサーバーは Notion ページを Markdown としてレンダリングするため、LLM が効率よく処理して理解できます。
機能
- Markdown レンダリング:Notion ページを読みやすく整った Markdown 形式に変換します
- リッチテキスト対応:太字、斜体、取り消し線、コード要素の書式を保持します
セットアップ
- Notion インテグレーションを作成し、https://www.notion.so/my-integrations から API トークンを取得します
- トークンを環境変数として設定します:
export NOTION_TOKEN=your-notion-api-token
または、プロジェクト内に .env ファイルを作成して、次のように設定できます:
NOTION_TOKEN=your-notion-api-token
- アクセスする Notion ページをインテグレーションと共有してください
使用方法
VS Code での使用
設定 JSON ファイルに次の内容を追加します:
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "notion_token",
"description": "Notion API Token",
"password": true
}
],
"servers": {
"notion": {
"command": "npx",
"args": [
"-y",
"@larryhudson/simple-notion-mcp-server"
],
"env": {
"NOTION_TOKEN": "${input:notion_token}"
}
}
}
}
}
Claude またはその他の MCP 互換アプリケーションでの使用
MCP 設定 JSON ファイルに次の内容を追加します:
{
"mcpServers": {
"notion": {
"command": "npx",
"args": ["-y", "@larryhudson/simple-notion-mcp-server"],
"env": {
"NOTION_TOKEN": "<YOUR_NOTION_API_TOKEN>"
}
}
}
}
利用可能なツール
get_page
Notion ページを ID で取得し、Markdown としてレンダリングします。
パラメーター:
page_id:取得する Notion ページの ID
例:
{
"page_id": "83c75a5b7a324be29d454536f2345678"
}
仕組み
サーバーは次の手順で Notion ページを処理します:
- Notion API を使用してページのメタデータを取得します
- ページ内のすべてのブロックを取得します(子ブロックも再帰的に取得します)
- 構造と書式を保ちながら、ブロックを Markdown に整形します
- ページを整った Markdown 形式で返します
技術的な詳細
使用している技術:
- Model Context Protocol(MCP):AI アシスタントが外部ツールと連携できるようにするフレームワーク
- Notion API Client:Notion との通信に使用する公式クライアント
- TypeScript:型安全性と開発者体験の向上に使用します
開発
Model Context Protocol インスペクターを使って、サーバーを試すことができます:
npx @modelcontextprotocol/inspector npx tsx src/index.ts
制限事項と今後の改善
- 現在はページの取得のみをサポートしています(更新や作成には対応していません)
- 今後のアップデートで画像の処理を改善できる可能性があります(例:画像を base64 画像ブロックとしてレンダリングする)
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。