notebooklm-mcp-secure
About
Security-hardened NotebookLM MCP with post-quantum encryption, GDPR/SOC2 compliance, and 14 security layers. Query Google's Gemini-grounded research from any MCP-compatible AI assistant.
Details
- Author
- pantheon-security
- Categories
- Cloud Service, Other, AI, Infrastructure
Jump to
Setup
Install notebooklm-mcp-secure in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/pantheon-security/notebooklm-mcp-secure
Follow the installation instructions in the repository README, then restart your MCP client.
Import web pages and YouTube videos to NotebookLM with one click. Trusted by 200,000+ users.
NotebookLM MCP Server (Security Hardened)
🏆 The World's Most Advanced NotebookLM MCP Server
Zero-hallucination answers • Gemini Deep Research • 17 Security Layers • Enterprise Compliance
What's New 2026•Deep Research•Document API•Create Notebooks•Security•Install
The only NotebookLM MCP with enterprise-grade security, post-quantum encryption, and full Gemini API integration.
Security-hardened fork ofPleasePrompto/notebooklm-mcp• Maintained byPantheon Security
- 🔍Query your NotebookLM notebooks— source-grounded, zero-hallucination answers
- 📚Create & manage notebooks programmatically— no manual clicking
- 🎙️Generate audio overviews— podcast-style summaries of your docs
- 🎬Generate video overviews— AI video summaries with 10 visual stylesNEW
- 📊Extract data tables— structured JSON from notebook sourcesNEW
- 🔬Gemini 3 + Deep Research— latest models with thinking control (optional API)NEW
- 📄Document API— upload & query PDFs without browser (optional API)
- 🔐17 security layers— post-quantum encryption, audit logs, secrets scanning
- ✅Compliance-ready architecture— built to GDPR, SOC2, and CSSF standards (controls implemented; formal certification requires third-party audit)
- 💡No API key required— core features work with just browser auth
Latest: v2026.3.1— All 334 audit issues resolved. 631 tests. Full MCP protocol compliance.
# Quick install claude mcp add notebooklm -- npx @pan-sec/notebooklm-mcp@latest
🔬 Security Audit 2026 — What We Found and Fixed
In April 2026, we commissioned a parallel deep-audit of v2026.2.11 (main @ 2973097) using four specialised AI code reviewers, each focused on a different attack surface:security vulnerabilities,protocol correctness,architecture quality, andtesting gaps and edge cases. The four reviewers operated independently so their findings wouldn't influence each other. Together they produced a334-item master issue listcovering protocol correctness, security vulnerabilities, architecture flaws, test gaps, and documentation accuracy. All 334 issues are resolved across v2026.3.0 and v2026.3.1.
Security reviewer:Identified theforceAuthbypass invalidateToken()allowing unauthenticated access to filesystem tools; webhook SSRF via unvalidated delivery targets; audit log hash chain not verified on read; concurrent audit writes interleaving entries; auth token salt not persisted (tokens invalidated on restart).
Protocol reviewer:Found 38 tools returning incorrect response shapes (missingstructuredContent, wrongisErrorsemantics, transport tags leaking into content); all 48 tools had incorrect or missingreadOnlyHint/idempotentHint/destructiveHintannotations; 9 tool schemas lacked numeric bounds, enabling out-of-range inputs.
Architecture reviewer:Flagged the 3,611-linehandlers.tsas a maintenance liability; singleton imports throughout domain functions preventing unit testing; the 500-lineswitch/casedispatch adding O(n) overhead and making tool registration error-prone.
Testing & edge-case reviewer:Found test suite at 139 tests with minimal coverage of security-critical modules;mcp-auth.tsat near-zero coverage; no tests for prompt injection patterns, audit log tampering, or concurrent browser session state; the DSAR handler had an undetected race condition.
- 17 security vulnerabilitiesaddressed (auth bypass, SSRF, audit integrity, race conditions, selector injection vectors)
- MCP protocol fully compliant— all 48 tools return correctstructuredContent/isErrorshapes; annotations accurate; schema bounds enforced
- Architecture decomposed—handlers.tssplit into 9 domain modules with HandlerContext dependency injection; 100% unit-testable without process mocks
- Test coverage— 15 new security-critical test suites including browser session, auth, prompt injection, audit log, webhook, DSAR, and compliance
- Claims aligned— certificate pinning removed (implementation was retracted in Day 1 of the audit); PQ encryption scope documented accurately; compliance language uses "controls implemented" not "certified"
Gemini API (Optional - Requires GEMINI_API_KEY)
Enterprise Compliance (16 additional tools)
SeeCompliance Documentationfor full list.
The most powerful research capability for AI agents — now in your MCP toolkit.
v1.8.0 introduces theGemini Interactions APIas a stable, API-based research backend alongside browser automation. This gives your agents access to Google's state-of-the-art Deep Research agent.
deep_research— Comprehensive Research Agent
"Research the security implications of post-quantum cryptography adoption in financial services"
- Runs Google'sDeep Research agent(same as Gemini Advanced)
- Takes 1-5 minutes for comprehensive, web-grounded analysis
- Returns structured answers withcitations and sources
- Perfect for complex topics requiring multi-source synthesis
"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 grounding— Current information, not just training data
- Code execution— Run calculations, data analysis
- URL context— Analyze web pages on demand
- Models:gemini-3-flash-preview(default),gemini-3-pro-preview(powerful),gemini-2.5-flash(legacy)
get_research_status— Background Task Monitoring
Run deep research in the background and check progress:
"Start researching [topic] in the background" ... continue other work ... "Check research status for interaction_abc123"
┌──────────────────────────────────────────────────────────────────────────────┐ │ NotebookLM MCP Server v2026.3.x │ ├──────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌────────────────────────────────┐ ┌──────────────────────────────────┐ │ │ │ BROWSER AUTOMATION │ │ GEMINI API │ │ │ │ ✅ NO API KEY NEEDED │ │ ⚡ OPTIONAL - needs API key │ │ │ ├────────────────────────────────┤ ├──────────────────────────────────┤ │ │ │ │ │ │ │ │ │ QUERY │ │ RESEARCH │ │ │ │ • ask_question │ │ • deep_research │ │ │ │ • get_notebook_chat_history │ │ • gemini_query │ │ │ │ │ │ • get_research_status │ │ │ │ CREATE & MANAGE │ │ │ │ │ │ • create_notebook │ │ DOCUMENTS │ │ │ │ • batch_create_notebooks │ │ • upload_document │ │ │ │ • manage_sources │ │ • query_document │ │ │ │ • generate_audio │ │ • query_chunked_document │ │ │ │ • generate_video_overview │ │ • list/delete_document │ │ │ │ • generate_data_table │ │ │ │ │ │ • sync_notebook │ │ │ │ │ │ │ │ │ │ │ │ HEALTH & SESSIONS v2026 │ │ │ │ │ │ • get_health (deep_check) │ │ Fast API • 48h retention │ │ │ │ • get_query_history │ │ Auto-chunking for large PDFs │ │ │ └────────────────────────────────┘ └──────────────────────────────────┘ │ │ │ │ ┌─────────────────────────────────┐ │ │ │ 17 SECURITY LAYERS │ │ │ │ Post-Quantum • Audit Logs │ │ │ │ Secrets Scan • Memory Wipe │ │ │ │ GDPR • SOC2 • CSSF Ready │ │ │ └─────────────────────────────────┘ │ └──────────────────────────────────────────────────────────────────────────────┘
💡 Gemini API is completely optional!All core NotebookLM features (ask_question, notebooks, sessions, audio) work via browser automation withno API key required. The Gemini tools below are bonus features for users who want direct API access.
# Only required if you want Gemini API features (deep_research, gemini_query, upload_document) GEMINI_API_KEY=your-api-key # Get from https://aistudio.google.com/apikey # Optional settings GEMINI_DEFAULT_MODEL=gemini-3-flash-preview # Default model (was gemini-2.5-flash) GEMINI_DEEP_RESEARCH_ENABLED=true # Enable Deep Research GEMINI_TIMEOUT_MS=30000 # API timeout
Upload and query documents directly via Gemini API — no browser automation needed.
v1.9.0 introduces theGemini Files APIfor fast, reliable document analysis. Upload PDFs, analyze them instantly, and delete when done.
Upload any document to Gemini for instant querying:
- Supported: PDF (50MB, 1000 pages), TXT, MD, HTML, CSV, JSON, DOCX, images, audio, video
- 48-hour retention— files auto-expire, or delete manually
- Returns a file ID for querying
query_document— Ask Questions About Documents
"What are the main findings in this research paper?" "Summarize section 3 of the document" "Extract all statistics mentioned in the PDF"
- Full document understanding (text, tables, charts, diagrams)
- Multi-document queries (compare multiple files)
- Fast API response (no browser wait)
Shows file names, sizes, MIME types, and expiration times.
delete_document— Clean Up Sensitive Files
Immediately remove files (don't wait for 48h expiration).
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
No file size limits— PDFs of any size are automatically handled.
When you upload a PDF that exceeds Gemini's limits (50MB or 1000 pages), the system automatically:
- Detectsthe oversized PDF
- Splitsit into optimal chunks (500 pages each)
- Uploadsall chunks in parallel
- Returnschunk metadata for querying
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 All Chunks at Once
For chunked documents, use this tool to query all parts and get an aggregated answer:
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
Programmatic Notebook Creation (v1.7.0+)
Create NotebookLM notebooks entirely from code — no manual clicks required.
Most MCP servers can onlyreadfrom NotebookLM. This one cancreate notebooks, add sources, and generate audio— all programmatically.
create_notebook— Build Notebooks Instantly
Create a complete notebook with multiple sources in one command:
{ "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— Web pages, documentation, articles
- File— PDF, DOCX, TXT, and more
- Text— Raw text, code snippets, notes
Createup to 10 notebooksin a single operation:
{ "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/" }] } ] }
- Setting up project documentation libraries
- Onboarding new team members with curated knowledge bases
- Creating topic-specific research notebooks in bulk
manage_sources— Dynamic Source Management
Add or remove sources from existing notebooks:
{ "notebook_id": "abc123", "action": "add", "sources": [{ "type": "url", "value": "https://new-documentation.com" }] }
generate_audio— Audio Overview Creation
Generate NotebookLM's famous "Audio Overview" podcasts programmatically:
"Generate an audio overview for my Security Research notebook"
Sync notebook sources from a local directory:
{ "notebook_id": "abc123", "directory": "/path/to/docs", "patterns": [".md", "*.pdf"] }
Your agent can now build entire knowledge bases autonomously.
🎬 Video Overviews & Data Tables (v2026.2.0)
Generate AI-powered visual summaries and extract structured data from any notebook — all programmatically.
NotebookLM's Studio panel now offers Video Overviews and Data Tables alongside Audio Overviews. This release brings full automation for both.
generate_video_overview— AI Video Summaries
Generate visual video overviews of your notebook content with10 visual styles:
- Explainer— Full explanation (5-15 min)
- Brief— Quick summary (1-3 min)
"Generate a kawaii-style brief video overview for my Security Research notebook"
get_video_status— Check Generation Progress
Video generation takes 3-10 minutes. Check progress:
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





