🚀 NotebookLM MCP Server (Security Hardened)
NotebookLMとGemini Deep Researchによるゼロ幻想回答 — エンタープライズグレードのセキュリティを備えます
• • • Security • Install
PleasePrompto/notebooklm-mcp の セキュリティ強化フォークです。
Pantheon Security によってメンテナンスされています。
🚀 クイックスタート
1. インストール (上記を参照)
2. 認証
"Log me in to NotebookLM"
Chromeが開き、Googleでサインインします
3. ノートブックを追加する
notebooklm.google.com にアクセス → ノートブックを作成 → ドキュメントをアップロード → 共有リンクを取得
4. 使用する
"Research [topic] using this NotebookLM: [link]"
5. Deep Researchを試す (新機能!)
"Use deep research to investigate [complex topic]"
✨ 主な機能
Gemini Deep Research (v1.8.0)
AIエージェントに最も強力な調査機能 — 今ではあなたのMCPツールキットに搭載されています。
v1.8.0では、Gemini Interactions API が安定したAPIベースの調査バックエンドとして、ブラウザ自動化と並行して導入されました。これにより、エージェントはGoogleの最先端のDeep Researchエージェントにアクセスできるようになります。
重要な理由
| 課題 |
解決策 |
| ブラウザUIの変更により自動化が破壊される |
Gemini APIは安定しており、バージョン管理されています |
| 包括的な調査が必要だが、調査エージェントがない |
Deep Researchエージェントが代わりに行います |
| 引用付きの最新情報が必要な場合 |
Google Searchのグラウンディングが組み込まれています |
| 信頼性の高い高速クエリが必要な場合 |
APIベース = UI依存性がない |
新しいツール
deep_research — 包括的な調査エージェント
"Research the security implications of post-quantum cryptography adoption in financial services"
- GoogleのDeep Researchエージェントを実行します (Gemini Advancedと同じ)
- 包括的なウェブベースの分析に1 - 5分かかります
- 引用とソース付きの構造化された回答を返します
- 複数のソースを合成する必要がある複雑なトピックに最適
gemini_query — 高速なグラウンディング付きクエリ
"What are the latest CVEs for Log4j in 2025?" (with Google Search)
"Calculate the compound interest on $10,000 at 5% over 10 years" (with code execution)
"Summarize this security advisory: [URL]" (with URL context)
- Google Searchのグラウンディング — トレーニングデータだけでなく、最新の情報を提供します
- コード実行 — 計算やデータ分析を実行します
- URLコンテキスト — 必要に応じてウェブページを分析します
- モデル:
gemini-2.5-flash (高速), gemini-2.5-pro (強力), gemini-3-flash-preview (最新)
get_research_status — バックグラウンドタスクの監視
バックグラウンドで深い調査を実行し、進捗状況を確認します:
"Start researching [topic] in the background"
... continue other work ...
"Check research status for interaction_abc123"
ハイブリッドアーキテクチャ
┌──────────────────────────────────────────────────────────────────────────────┐
│ NotebookLM MCP Server v1.9.0 │
├──────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌────────────────────────────────┐ ┌──────────────────────────────────┐ │
│ │ BROWSER AUTOMATION │ │ GEMINI API │ │
│ │ (Your Documents) │ │ (Research & Documents) │ │
│ ├────────────────────────────────┤ ├──────────────────────────────────┤ │
│ │ │ │ │ │
│ │ QUERY │ │ RESEARCH v1.8 │ │
│ │ • ask_question │ │ • deep_research │ │
│ │ │ │ • gemini_query │ │
│ │ CREATE & MANAGE v1.7 │ │ • get_research_status │ │
│ │ • create_notebook │ │ │ │
│ │ • batch_create_notebooks │ │ DOCUMENTS (NEW!) v1.9 │ │
│ │ • manage_sources │ │ • upload_document │ │
│ │ • generate_audio │ │ • query_document │ │
│ │ • sync_notebook │ │ • list_documents │ │
│ │ │ │ • delete_document │ │
│ │ Grounded on YOUR docs │ │ │ │
│ │ Permanent storage │ │ Fast API • 48h retention │ │
│ └────────────────────────────────┘ └──────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────┐ │
│ │ 14 SECURITY LAYERS │ │
│ │ Post-Quantum • Audit Logs │ │
│ │ Cert Pinning • Memory Wipe │ │
│ │ GDPR • SOC2 • CSSF Ready │ │
│ └─────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────────────┘
Geminiの設定
GEMINI_API_KEY=your-api-key
GEMINI_DEFAULT_MODEL=gemini-2.5-flash
GEMINI_DEEP_RESEARCH_ENABLED=true
GEMINI_TIMEOUT_MS=30000
いつどのツールを使うか
| タスク |
最適なツール |
理由 |
| あなたのドキュメントに関する質問 |
ask_question |
アップロードしたソースを基に回答します |
| 包括的なトピック調査 |
deep_research |
引用付きの複数ソースの合成 |
| 最新の出来事 / 最近の情報 |
gemini_query + google_search |
ライブウェブデータ |
| コード計算 |
gemini_query + code_execution |
信頼性の高い計算 |
| ウェブページの分析 |
gemini_query + url_context |
直接ページを分析 |
| クイックなPDF/ドキュメント分析 |
upload_document + query_document |
高速API、ブラウザ不要 (新機能!) |
📄 Document API (v1.9.0)
Gemini APIを介して直接ドキュメントをアップロードし、クエリを実行できます — ブラウザ自動化は必要ありません。
v1.9.0では、高速で信頼性の高いドキュメント分析のためのGemini Files API が導入されました。PDFをアップロードし、即座に分析し、完了後に削除できます。
重要な理由
| 機能 |
ブラウザモード |
Document API |
| 速度 |
数秒 |
ミリ秒 |
| 信頼性 |
UI依存 |
API安定 |
| ファイルサポート |
NotebookLM経由 |
50MBのPDF、1000ページ |
| 保持期間 |
恒久的 |
48時間 |
| セットアップ |
認証 + クッキー |
APIキーのみ |
新しいツール
upload_document — 高速なドキュメントアップロード
任意のドキュメントをGeminiにアップロードし、即座にクエリを実行できます:
Upload /path/to/research-paper.pdf
- サポートされる形式: PDF (50MB、1000ページ), TXT, MD, HTML, CSV, JSON, DOCX, 画像, 音声, ビデオ
- 48時間の保持期間 — ファイルは自動的に期限切れになるか、手動で削除できます
- クエリ用のファイルIDを返します
query_document — ドキュメントに関する質問をする
"What are the main findings in this research paper?"
"Summarize section 3 of the document"
"Extract all statistics mentioned in the PDF"
- ドキュメント全体の理解 (テキスト、テーブル、チャート、図)
- 複数ドキュメントのクエリ (複数のファイルを比較)
- 高速なAPI応答 (ブラウザ待ち時間なし)
list_documents — アップロードされたすべてのファイルを表示する
List all my uploaded documents
ファイル名、サイズ、MIMEタイプ、有効期限を表示します。
delete_document — 機密ファイルをクリーンアップする
Delete file xyz123
ファイルを即座に削除します (48時間の期限切れを待たない)。
ワークフロー例
1. upload_document("/research/paper.pdf")
→ Returns: files/abc123
2. query_document("files/abc123", "What methodology was used?")
→ Returns: "The paper uses a mixed-methods approach combining..."
3. query_document("files/abc123", "List all cited authors")
→ Returns: "Smith et al. (2024), Johnson (2023)..."
4. delete_document("files/abc123")
→ File removed
大きなPDFの自動チャンク分割 (v1.10.0)
ファイルサイズの制限はありません — 任意のサイズのPDFが自動的に処理されます。
Geminiの制限 (50MBまたは1000ページ) を超えるPDFをアップロードすると、システムは自動的に以下の操作を行います:
- 超大サイズのPDFを検出する
- 最適なチャンクに分割する (各チャンクは500ページ)
- すべてのチャンクを並列にアップロードする
- クエリ用のチャンクメタデータを返す
upload_document("/research/massive-2000-page-report.pdf")
→ Returns:
{
"wasChunked": true,
"totalPages": 2000,
"chunks": [
{ "fileName": "files/abc1", "pageStart": 1, "pageEnd": 500 },
{ "fileName": "files/abc2", "pageStart": 501, "pageEnd": 1000 },
{ "fileName": "files/abc3", "pageStart": 1001, "pageEnd": 1500 },
{ "fileName": "files/abc4", "pageStart": 1501, "pageEnd": 2000 }
],
"allFileNames": ["files/abc1", "files/abc2", "files/abc3", "files/abc4"]
}
query_chunked_document — すべてのチャンクに一度にクエリを実行する
チャンク分割されたドキュメントに対して、このツールを使用してすべての部分にクエリを実行し、集約された回答を取得できます:
query_chunked_document(
file_names: ["files/abc1", "files/abc2", "files/abc3", "files/abc4"],
query: "What are the key recommendations in this report?"
)
→ Queries each chunk, then synthesizes a unified answer
Document APIとNotebookLMの使い分け
| シナリオ |
使用するもの |
| クイックな単発のドキュメント分析 |
Document API — 高速、セットアップ不要 |
| 恒久的な知識ベースの構築 |
NotebookLM — 恒久的な保存 |
| 機密ドキュメントの分析 |
Document API — 48時間自動削除 |
| 長期的な複数ソースの調査 |
NotebookLM — 整理されたノートブック |
| CI/CDパイプラインのドキュメント処理 |
Document API — APIネイティブ |
| 大きなPDF (1000ページ以上) |
Document API — 自動チャンク分割 |
Programmatic Notebook Creation (v1.7.0+)
コードから完全にNotebookLMのノートブックを作成できます — 手動でのクリックは必要ありません。
ほとんどのMCPサーバーはNotebookLMから読み取ることしかできません。このサーバーはノートブックの作成、ソースの追加、オーディオの生成 — すべてをプログラムで行うことができます。
create_notebook — 即座にノートブックを構築する
1つのコマンドで複数のソースを持つ完全なノートブックを作成できます:
{
"name": "Security Research 2025",
"sources": [
{ "type": "url", "value": "https://owasp.org/Top10" },
{ "type": "file", "value": "/path/to/security-report.pdf" },
{ "type": "text", "value": "Custom analysis notes...", "title": "My Notes" }
],
"description": "OWASP security best practices",
"topics": ["security", "owasp", "vulnerabilities"]
}
サポートされるソースタイプ:
- URL — ウェブページ、ドキュメント、記事
- File — PDF、DOCX、TXTなど
- Text — 生のテキスト、コードスニペット、メモ
batch_create_notebooks — スケールアップ
1回の操作で最大10個のノートブックを作成できます:
{
"notebooks": [
{ "name": "React Docs", "sources": [{ "type": "url", "value": "https://react.dev/reference" }] },
{ "name": "Node.js API", "sources": [{ "type": "url", "value": "https://nodejs.org/api/" }] },
{ "name": "TypeScript Handbook", "sources": [{ "type": "url", "value": "https://www.typescriptlang.org/docs/" }] }
]
}
以下の用途に最適:
- プロジェクトドキュメントライブラリのセットアップ
- 新しいチームメンバーのオンボーディングにカスタマイズされた知識ベースを提供する
- トピック固有の調査ノートブックを大量に作成する
manage_sources — 動的なソース管理
既存のノートブックにソースを追加または削除します:
{
"notebook_id": "abc123",
"action": "add",
"sources": [{ "type": "url", "value": "https://new-documentation.com" }]
}
generate_audio — オーディオ概要の作成
NotebookLMの有名な「Audio Overview」ポッドキャストをプログラムで生成します:
"Generate an audio overview for my Security Research notebook"
sync_notebook — ソースをローカルファイルから同期する
ノートブックのソースをローカルディレクトリから同期します:
{
"notebook_id": "abc123",
"directory": "/path/to/docs",
"patterns": ["*.md", "*.pdf"]
}
重要な理由
| 従来のワークフロー |
このMCPを使用した場合 |
| ブラウザで手動でノートブックを作成する |
create_notebook → 完了 |
| 各ドキュメントに対して「ソースを追加」をクリックする |
1つのコマンドで一括追加 |
| UIを操作してオーディオを生成する |
generate_audio → ポッドキャスト準備完了 |
| 手動でソースを更新する |
sync_notebook でローカルファイルから同期 |
あなたのエージェントは、完全に自律的に知識ベースを構築できるようになりました。
なぜこのフォークなのか?
元のNotebookLM MCPは生産性に優れていますが、MCPサーバーは機密データを扱います:
- Google認証を伴うブラウザセッション
- ディスクに保存されたクッキーとトークン
- 独自の情報を含む可能性のあるクエリ履歴
このフォークは、そのデータを保護するために14層のセキュリティ強化を追加しています。
セキュリティ機能
| レイヤー |
機能 |
保護内容 |
| 🔐 |
Post-Quantum Encryption |
ML-KEM-768 + ChaCha20-Poly1305ハイブリッド |
| 🔍 |
Secrets Scanning |
30種類以上の資格情報パターン (AWS、GitHub、Slackなど) を検出 |
| 📌 |
Certificate Pinning |
Google接続に対するMITM攻撃をブロック |
| 🧹 |
Memory Scrubbing |
使用後に機密データをゼロにする |
| 📝 |
Audit Logging |
ハッシュチェーンによる改ざん検出付きのログ |
| ⏱️ |
Session Timeout |
8時間の厳格な制限 + 30分の非アクティビティで自動ログアウト |
| 🎫 |
MCP Authentication |
総当たりロックアウト付きのトークンベースの認証 |
| 🛡️ |
Response Validation |
プロンプトインジェクションの試みを検出 |
| ✅ |
Input Validation |
URLホワイトリスト、サニタイズ |
| 🚦 |
Rate Limiting |
セッションごとのリクエスト制限 |
| 🙈 |
Log Sanitization |
すべての出力で資格情報をマスク |
| 🐍 |
MEDUSA Integration |
自動セキュリティスキャン |
| 🖥️ |
Cross-Platform |
Linux、macOS、Windowsのネイティブサポート |
ポスト量子対応
従来の暗号化 (RSA、ECDH) は量子コンピューターによって破られる可能性があります。このフォークはハイブリッド暗号化を使用しています:
ML-KEM-768 (Kyber) + ChaCha20-Poly1305
- ML-KEM-768: NIST標準化されたポスト量子鍵封じ込め
- ChaCha20-Poly1305: 最新のストリーム暗号 (タイミング攻撃に免疫)
一方のアルゴリズムが破られた場合でも、もう一方は安全なままです。
クロスプラットフォームサポート
すべての主要なオペレーティングシステムを完全にネイティブでサポートします:
| プラットフォーム |
ファイルパーミッション |
データディレクトリ |
| Linux |
Unix chmod (0o600/0o700) |
~/.local/share/notebooklm-mcp/ |
| macOS |
Unix chmod (0o600/0o700) |
~/Library/Application Support/notebooklm-mcp/ |
| Windows |
ACLs via icacls (current user only) |
%LOCALAPPDATA%\notebooklm-mcp\ |
| すべての機密ファイル (暗号化キー、認証トークン、監査ログ) は、すべてのプラットフォームで所有者のみのパーミッションで自動的に保護されます。 |
|
|
エンタープライズコンプライアンス (v1.6.0+)
規制産業に対応した完全なコンプライアンスサポート:
| 規制 |
機能 |
| GDPR |
同意管理、DSAR処理、消去権、データ可搬性 |
| SOC2 Type II |
ハッシュチェーン付きの監査ログ、インシデント対応、可用性監視 |
| CSSF |
7年間の保持、SIEM統合、ポリシードキュメント |
コンプライアンスツール (16個のMCPツール)
compliance_dashboard - リアルタイムのコンプライアンスステータス
compliance_report - 監査レポートを生成 (JSON/CSV/HTML)
compliance_evidence - 証拠パッケージを収集
grant_consent - ユーザーの同意を記録
submit_dsar - データ主体の要求を処理
request_erasure - 忘却権
export_user_data - データ可搬性のエクスポート
create_incident - セキュリティインシデント管理
...and 8 more
詳細なドキュメントは COMPLIANCE-SPEC.md を参照してください。
📦 インストール
Claude Code
claude mcp add notebooklm -- npx @pan-sec/notebooklm-mcp@latest
認証 + Geminiを使用する場合 (推奨)
claude mcp add notebooklm \
--env NLMCP_AUTH_ENABLED=true \
--env NLMCP_AUTH_TOKEN=$(openssl rand -base64 32) \
--env GEMINI_API_KEY=your-gemini-api-key \
-- npx @pan-sec/notebooklm-mcp@latest
Codex
codex mcp add notebooklm -- npx @pan-sec/notebooklm-mcp@latest
Cursor
~/.cursor/mcp.json に追加:
{
"mcpServers": {
"notebooklm": {
"command": "npx",
"args": ["-y", "@pan-sec/notebooklm-mcp@latest"],
"env": {
"NLMCP_AUTH_ENABLED": "true",
"NLMCP_AUTH_TOKEN": "your-secure-token",
"GEMINI_API_KEY": "your-gemini-api-key"
}
}
}
}
その他のMCPクライアント
{
"mcpServers": {
"notebooklm": {
"command": "npx",
"args": ["-y", "@pan-sec/notebooklm-mcp@latest"],
"env": {
"NLMCP_AUTH_ENABLED": "true",
"NLMCP_AUTH_TOKEN": "your-secure-token",
"GEMINI_API_KEY": "your-gemini-api-key"
}
}
}
}
📚 ドキュメント
完全なツールリファレンス
調査ツール
| ツール |
説明 |
バックエンド |
ask_question |
NotebookLMのノートブックにクエリを実行する |
ブラウザ |
deep_research |
引用付きの包括的な調査 |
Gemini API |
gemini_query |
グラウンディングツール付きの高速クエリ |
Gemini API |
get_research_status |
バックグラウンドの調査進捗を確認する |
Gemini API |
ノートブック管理
| ツール |
説明 |
add_notebook |
ライブラリにノートブックを追加する |
list_notebooks |
すべてのノートブックをリストする |
get_notebook |
ノートブックの詳細を取得する |
update_notebook |
ノートブックのメタデータを更新する |
remove_notebook |
ライブラリから削除する |
select_notebook |
アクティブなノートブックを設定する |
search_notebooks |
クエリで検索する |
ソース管理 (v1.7.0+)
| ツール |
説明 |
manage_sources |
ソースの追加/削除/リスト |
generate_audio |
オーディオ概要を作成する |
sync_notebook |
ソースをローカルファイルから同期する |
セッションとシステム
| ツール |
説明 |
list_sessions |
アクティブなセッションを表示する |
close_session |
セッションを閉じる |
reset_session |
セッションチャットをリセットする |
get_health |
サーバーのヘルスチェック |
setup_auth |
初期認証 |
re_auth |
再認証 |
cleanup_data |
データの深いクリーンアップユーティリティ |
get_library_stats |
ライブラリの統計情報 |
コンプライアンス (v1.6.0+)
GDPR、SOC2、CSSFの要件に対応する16個のコンプライアンスツール。
保護対象
| データ |
保護内容 |
| ブラウザクッキー |
保存時にポスト量子暗号化 |
| セッショントークン |
自動期限切れ + メモリスクラビング |
| クエリ履歴 |
改ざん検出付きの監査ログ |
| Google接続 |
証明書ピンニング (MITM攻撃をブロック) |
| ログ出力 |
資格情報が自動的に隠される |
| API応答 |
漏洩したシークレットをスキャン |
| Gemini APIキー |
安全なメモリ管理 |
設定
すべてのセキュリティ機能はデフォルトで有効になっています。環境変数を使用して上書きできます:
NLMCP_AUTH_ENABLED=true
NLMCP_AUTH_TOKEN=your-secret-token
GEMINI_API_KEY=your-api-key
GEMINI_DEFAULT_MODEL=gemini-2.5-flash
GEMINI_DEEP_RESEARCH_ENABLED=true
GEMINI_TIMEOUT_MS=30000
NLMCP_USE_POST_QUANTUM=true
NLMCP_ENCRYPTION_KEY=base64-32-bytes
NLMCP_SESSION_MAX_LIFETIME=28800
NLMCP_SESSION_INACTIVITY=1800
NLMCP_SECRETS_SCANNING=true
NLMCP_SECRETS_BLOCK=false
NLMCP_SECRETS_REDACT=true
NLMCP_CERT_PINNING=true
NLMCP_AUDIT_ENABLED=true
完全な設定リファレンスは SECURITY.md を参照してください。
セキュリティスキャン
MEDUSAセキュリティスキャナーを実行します:
npm run security-scan
またはCI/CDに統合します:
- name: Security Scan
run: npx @pan-sec/notebooklm-mcp && npm run security-scan
比較
| 機能 |
元のもの |
このフォーク |
| ゼロ幻想Q&A |
✅ |
✅ |
| ライブラリ管理 |
✅ |
✅ |
| 複数クライアントサポート |
✅ |
✅ |
| プログラムでノートブックを作成する |
❌ |
✅ 独自機能 |
| 一括作成 (一度に10個のノートブック) |
❌ |
✅ 独自機能 |
| Gemini Deep Research |
❌ |
✅ 新機能 |
| グラウンディング付きのGeminiクエリ |
❌ |
✅ 新機能 |
| ソース管理 (追加/削除) |
❌ |
✅ |
| オーディオ概要の生成 |
❌ |
✅ |
| ローカルディレクトリからの同期 |
❌ |
✅ |
| クロスプラットフォーム (Linux/macOS/Windows) |
⚠️ |
✅ |
| ポスト量子暗号化 |
❌ |
✅ |
| シークレットスキャン |
❌ |
✅ |
| 証明書ピンニング |
❌ |
✅ |
| メモリスクラビング |
❌ |
✅ |
| 監査ログ |
❌ |
✅ |
| MCP認証 |
❌ |
✅ |
| プロンプトインジェクション検出 |
❌ |
✅ |
| エンタープライズコンプライアンス (GDPR/SOC2/CSSF) |
❌ |
✅ |
バージョン履歴
| バージョン |
ハイライト |
| v1.8.0 |
Gemini Interactions API: Deep Research、グラウンディング付きクエリ、バックグラウンドタスク |
| v1.7.0 |
ソース管理、バッチ操作、オーディオ生成、ウェブフック |
| v1.6.0 |
エンタープライズコンプライアンス: GDPR、SOC2 Type II、CSSF |
| v1.5.0 |
クロスプラットフォームサポート (Windows ACLs、macOS、Linux) |
| v1.4.0 |
ポスト量子暗号化、シークレットスキャン |
| v1.3.0 |
証明書ピンニング、監査ログ |
📄 ライセンス
MIT — 元のものと同じ。
Pantheon Security による🔒 セキュリティ強化
Google Gemini 🚀 を使用
完全なセキュリティドキュメント • コンプライアンスガイド • 脆弱性報告