Zero-hallucination answers from NotebookLM β now with enterprise-grade security
Security Features β’ Installation β’ Quick Start β’ Why This Fork? β’ Documentation
π Security-hardened fork of PleasePrompto/notebooklm-mcp Maintained by Pantheon Security
The original NotebookLM MCP is excellent for productivity β but MCP servers handle sensitive data:
- Browser sessions with Google authentication
- Cookies and tokens stored on disk
- Query history that may contain proprietary information
This fork adds 14 security hardening layers to protect that data.
| Layer | Feature | Protection |
|---|---|---|
| π | Post-Quantum Encryption | ML-KEM-768 + ChaCha20-Poly1305 hybrid |
| π | Secrets Scanning | Detects 30+ credential patterns (AWS, GitHub, Slack...) |
| π | Certificate Pinning | Blocks MITM attacks on Google connections |
| π§Ή | Memory Scrubbing | Zeros sensitive data after use |
| π | Audit Logging | Tamper-evident logs with hash chains |
| β±οΈ | Session Timeout | 8h hard limit + 30m inactivity auto-logout |
| π« | MCP Authentication | Token-based auth with brute-force lockout |
| π‘οΈ | Response Validation | Detects prompt injection attempts |
| β | Input Validation | URL whitelisting, sanitization |
| π¦ | Rate Limiting | Per-session request throttling |
| π | Log Sanitization | Credentials masked in all output |
| π | MEDUSA Integration | Automated security scanning |
Traditional encryption (RSA, ECDH) will be broken by quantum computers. This fork uses hybrid encryption:
ML-KEM-768 (Kyber) + ChaCha20-Poly1305
- ML-KEM-768: NIST-standardized post-quantum key encapsulation
- ChaCha20-Poly1305: Modern stream cipher (immune to timing attacks)
Even if one algorithm is broken, the other remains secure.
claude mcp add notebooklm -- npx @pan-sec/notebooklm-mcp@latestclaude mcp add notebooklm \
--env NLMCP_AUTH_ENABLED=true \
--env NLMCP_AUTH_TOKEN=$(openssl rand -base64 32) \
-- npx @pan-sec/notebooklm-mcp@latestcodex mcp add notebooklm -- npx @pan-sec/notebooklm-mcp@latestCursor
Add to ~/.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"
}
}
}
}Other MCP Clients
{
"mcpServers": {
"notebooklm": {
"command": "npx",
"args": ["-y", "@pan-sec/notebooklm-mcp@latest"],
"env": {
"NLMCP_AUTH_ENABLED": "true",
"NLMCP_AUTH_TOKEN": "your-secure-token"
}
}
}
}"Log me in to NotebookLM"
Chrome opens β sign in with Google
Go to notebooklm.google.com β Create notebook β Upload docs β Share link
"Research [topic] using this NotebookLM: [link]"
| Data | Protection |
|---|---|
| Browser cookies | Post-quantum encrypted at rest |
| Session tokens | Auto-expire + memory scrubbing |
| Query history | Audit logged with tamper detection |
| Google connection | Certificate pinned (MITM blocked) |
| Log output | Credentials auto-redacted |
| API responses | Scanned for leaked secrets |
All security features are enabled by default. Override via environment variables:
# Authentication
NLMCP_AUTH_ENABLED=true
NLMCP_AUTH_TOKEN=your-secret-token
# Encryption
NLMCP_USE_POST_QUANTUM=true
NLMCP_ENCRYPTION_KEY=base64-32-bytes # Optional custom key
# Session Limits
NLMCP_SESSION_MAX_LIFETIME=28800 # 8 hours
NLMCP_SESSION_INACTIVITY=1800 # 30 minutes
# Secrets Scanning
NLMCP_SECRETS_SCANNING=true
NLMCP_SECRETS_BLOCK=false # Block on detection
NLMCP_SECRETS_REDACT=true # Auto-redact
# Certificate Pinning
NLMCP_CERT_PINNING=true
# Audit Logging
NLMCP_AUDIT_ENABLED=trueSee SECURITY.md for complete configuration reference.
Run MEDUSA security scanner:
npm run security-scanOr integrate in CI/CD:
- name: Security Scan
run: npx @pan-sec/notebooklm-mcp && npm run security-scanβββββββββββββββ ββββββββββββββββββββ βββββββββββββββ
β Claude/ ββββββΆβ MCP Server ββββββΆβ NotebookLM β
β Codex β β (This Fork) β β (Google) β
βββββββββββββββ ββββββββββββββββββββ βββββββββββββββ
β
ββββββββ΄βββββββ
β 14 Security β
β Layers β
βββββββββββββββ
β’ PQ Encryption
β’ Secrets Scan
β’ Cert Pinning
β’ Memory Wipe
β’ Audit Logs
β’ Rate Limits
β’ ...
Your agent asks questions β Security layers protect the pipeline β NotebookLM answers from your docs.
All original functionality from PleasePrompto/notebooklm-mcp:
- Zero hallucinations β NotebookLM only answers from your uploaded docs
- Autonomous research β Claude asks follow-up questions automatically
- Smart library β Save notebooks with tags, auto-select by context
- Cross-tool sharing β Works with Claude Code, Codex, Cursor, etc.
- Tool profiles β Minimal, standard, or full tool sets
| Feature | Original | This Fork |
|---|---|---|
| Zero-hallucination Q&A | β | β |
| Library management | β | β |
| Multi-client support | β | β |
| Post-quantum encryption | β | β |
| Secrets scanning | β | β |
| Certificate pinning | β | β |
| Memory scrubbing | β | β |
| Audit logging | β | β |
| MCP authentication | β | β |
| Prompt injection detection | β | β |
Found a security issue? Do not open a public GitHub issue.
Email: support@pantheonsecurity.io
- Original MCP Server: GΓ©rΓ΄me Dexheimer β notebooklm-mcp
- Security Hardening: Pantheon Security
- Post-Quantum Crypto: @noble/post-quantum
MIT β Same as original.
Security hardened with π by Pantheon Security