Notion 公式の AI 機能(月額10ドル)に課金している人、多いと思います。が、Claude API + Notion API で自分専用にカスタマイズされた AIを作れます。月3,000円程度のコストで、公式以上に自分仕様にできる方法を共有します。
なぜ自作するか
Notion 公式 AI の限界
- 過去のページを横断的に参照する精度が中途半端
- 自分の業務文脈を学習させづらい
- 出力フォーマットを自分仕様にできない
- 料金は容量無制限ではあるが、月額10ドル/ユーザー
Claude + Notion API 自作のメリット
- system prompt で「自分の業務」「過去のドキュメント」を厳密に教えられる
- 出力フォーマットを完全自由に
- Claude Pro 契約者なら追加コストなし(APIは使った分だけ)
- Skills と組み合わせて、業務単位の AI を量産可能
システム構成
シンプルな構成:
- 入力:Notion 上のテンプレートページに「質問」「対象ページのURL」を記入
- 処理:定期的に動く Python スクリプト(GitHub Actions で5分ごとにポーリング)
- 出力:そのページの下部に Claude が回答を追記
実装:100行で完成
必要なもの
- Notion API トークン(Notion 設定から発行)
- Anthropic API キー(Claude)
- Python 3.10 以上
- GitHub Actions(無料枠で十分)
主要なコード
import os
from notion_client import Client as NotionClient
import anthropic
notion = NotionClient(auth=os.environ["NOTION_TOKEN"])
claude = anthropic.Anthropic(api_key=os.environ["ANTHROPIC_API_KEY"])
# 「未処理」ステータスの質問ページを取得
queries = notion.databases.query(
database_id=os.environ["DB_ID"],
filter={"property": "Status", "select": {"equals": "未処理"}}
).get("results")
for page in queries:
question = get_text(page["properties"]["Question"])
context_url = get_text(page["properties"]["ContextURL"])
# 参照ページの本文を取得
context = fetch_notion_page_content(context_url)
# Claude に問い合わせ
response = claude.messages.create(
model="claude-sonnet-4-7",
max_tokens=2000,
system="""
あなたは私の業務アシスタントです。
回答は以下の構造で:
1. 結論(1〜2行)
2. 根拠(参照ページから引用)
3. 補足や次のアクション
""",
messages=[{
"role": "user",
"content": f"参考ページ:n{context}nn質問:n{question}"
}]
)
answer = response.content[0].text
# ページに回答を追記、ステータス更新
notion.blocks.children.append(
block_id=page["id"],
children=[paragraph_block(answer)]
)
notion.pages.update(
page_id=page["id"],
properties={"Status": {"select": {"name": "完了"}}}
)
運用フロー
- Notion で「質問テンプレ」ページに質問を書く
- 参照ページの URL を指定
- 5分以内に Claude が回答を追記
- 必要に応じて深掘り質問を追加
応用:用途別のスキル分岐
1つのスクリプトで複数の用途を捌くため、Notion のセレクトプロパティで「スキル」を選ぶ:
- 議事録要約:会議メモを構造化
- 提案書叩き台:顧客情報をもとにドラフト生成
- 競合調査:複数ページの比較
- 1日の振り返り:日報から学びを抽出
スキルごとに system prompt を切り替えるだけで、5種類のAIが Notion 内で動きます。
3ヶ月運用してわかったメリット
1. 自分専用度が圧倒的
過去の Notion ページを参照させることで、私の業務文脈・口調・好みのフォーマットを完全踏襲した回答に。Notion 公式 AI とは別物の親近感。
2. プロンプトキャッシュで激安
system prompt をキャッシュさせると、月の API 料金は 2,000〜3,500円 程度。Notion 公式 AI(月額10ドル ≒ 1,500円)とほぼ同額か、少し高いだけ。
3. ログが Notion に蓄積される
質問と回答が全部 Notion 内にある。後で検索可能。「3ヶ月前にこの相談したな」がすぐ見つかる。
運用上の注意
1. Notion API のレート制限
1秒3リクエスト程度の制限。5分ポーリング+ベスト10件で問題なし。
2. セキュリティ
Notion API キーと Claude API キーは GitHub Actions Secrets に保存。コードには絶対書かない。
3. 機密ページへの言及
Notion API は「インテグレーションに共有されたページ」のみアクセス可能。機密ページはインテグレーションから外しておけば、Claude には見せない設計に。
「自作 vs 公式」 どっち選ぶか
公式 Notion AI が向く人
- 個人利用、シンプルな要約・補完で十分
- コーディングしたくない
- API 連携の知識がない
自作が向く人
- すでに Claude Pro 契約者
- 業務に特化したAI が欲しい
- API 触れる開発者(または Claude Code に書かせるエンジニア)
- Notion を業務の中核に置いている
これから挑戦する人へ
「コード書けないから無理」ではなく「Claude Code に書いてもらえばいい」のが2026年。Claude Code に上記の仕様を伝えれば、半日で動くシステムが完成します。
1度作れば3ヶ月でも1年でも資産として残り続ける。Notion を本気で活用したい人ほど、自作の価値が大きいです。
よくある質問
この記事に関連する質問と答えをまとめました。
