Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.Pantheon-Security/notebooklm-mcp-secure

NPM · @PAN-SEC/NOTEBOOKLM-MCP · SCANNED SEP 20

Security-hardened NotebookLM MCP with post-quantum encryption

0 this week 75 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 64 of 172 dependencies flagged as unhealthy (1 deprecated). View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 21 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability69
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 4692 tokens (~187/item across 25 items; 25 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management39
  • Stability check failed: the tool surface changed between 2026.1.6 and 2026.5.0: 22 tool removals, 0 breaking changes, 4 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 99% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 25 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.Pantheon-Security/notebooklm-mcp-secure server?

io.github.Pantheon-Security/notebooklm-mcp-secure runs locally as an npm package, launched with npx -y @pan-sec/notebooklm-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @pan-sec/notebooklm-mcp

# add to Claude Code
claude mcp add pantheon-security-notebooklm-mcp-secure -- npx -y @pan-sec/notebooklm-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "pantheon-security-notebooklm-mcp-secure": {
      "command": "npx",
      "args": [
        "-y",
        "@pan-sec/notebooklm-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "pantheon-security-notebooklm-mcp-secure": {
      "command": "npx",
      "args": [
        "-y",
        "@pan-sec/notebooklm-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add pantheon-security-notebooklm-mcp-secure -- npx -y @pan-sec/notebooklm-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pantheon-security-notebooklm-mcp-secure": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@pan-sec/notebooklm-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add pantheon-security-notebooklm-mcp-secure --command npx --arg -y --arg @pan-sec/notebooklm-mcp
# ~/.hermes/config.yaml
mcp_servers:
  pantheon-security-notebooklm-mcp-secure:
    command: "npx"
    args: ["-y", "@pan-sec/notebooklm-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "pantheon-security-notebooklm-mcp-secure": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@pan-sec/notebooklm-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add pantheon-security-notebooklm-mcp-secure -t stdio -c npx -a -y @pan-sec/notebooklm-mcp
// mcp.json
{
  "mcpServers": {
    "pantheon-security-notebooklm-mcp-secure": {
      "command": "npx",
      "args": [
        "-y",
        "@pan-sec/notebooklm-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 36 to 39.

  • 18 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 29 to 32.

  • 16 Sept 26 −3

    No change was recorded against any check on this day. Stability & Change Management went from 49 to 26.

  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 42 to 46.

  • 12 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 36 to 39.

  • 10 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 29 to 32.

  • 9 Sept 26 −3

    No change was recorded against any check on this day. Stability & Change Management went from 49 to 29.

  • 7 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 42 to 46.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/@pan-sec/notebooklm-mcp@2026.5.0

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 172 packages
Packages resolved 172
Deprecated 1
Stale 63
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 25 exposed · ~4,692 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
add_notebook ~196

Add a NotebookLM notebook to the local library after explicit user confirmation. Provide the NotebookLM URL plus concise metadata: name, description, topics, and optional use cases/tags. Do not infer missing metadata; ask the user first.

NameTypeReqDescription
content_typesarrayTypes of content (e.g., ['documentation', 'examples', 'best practices'])
descriptionstringyesWhat knowledge/content is in this notebook
namestringyesDisplay name for the notebook (e.g., 'n8n Documentation')
tagsarrayOptional tags for organization
topicsarrayyesTopics covered in this notebook
urlstringyesThe NotebookLM notebook URL (must be a NotebookLM URL, e.g. https://notebook.google.com/notebook/<id>)
use_casesarrayWhen should Claude use this notebook (e.g., ['Implementing n8n workflows'])

No output schema declared.

No examples provided.

add_source ~166

Add a source to an existing NotebookLM notebook. If neither `notebook_id` nor `notebook_url` is provided, this tool uses the currently active notebook from the local library. ## Source Types - **url**: Web page URL - **text**: Text content (paste) - **file**: Local file path (PDF, DOCX, TXT) ## Example ```json { "notebook_id": "my-notebook", "source": { "type": "url", "value": "https://docs.example.com/api" } } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringDirect notebook URL (overrides notebook_id)
sourceobjectyes

No output schema declared.

No examples provided.

ask_question ~253

NotebookLM notebook Q&A via browser automation. No active notebook is selected. Use list_notebooks and select_notebook to choose one, or pass notebook_url. No Gemini API key is required, but browser authentication must be valid. If login is required, use the setup_auth tool and verify with get_health (or ask the user to run the notebooklm.auth-setup prompt for a guided walkthrough).

NameTypeReqDescription
browser_optionsobjectOptional browser behavior settings. Claude can control everything: visibility, typing speed, stealth mode, timeouts. Useful for debugging or fine-tuning.
notebook_idstringOptional notebook ID from your library. If omitted, uses the active notebook. Use list_notebooks to see available notebooks.
notebook_urlstringOptional notebook URL (overrides notebook_id). Use this for ad-hoc queries to notebooks not in your library.
questionstringyesThe question to ask NotebookLM
session_idstringOptional session ID for contextual conversations. If omitted, a new session is created.
show_browserbooleanShow browser window for debugging (simple version). For advanced control (typing speed, stealth, etc.), use browser_options instead.

No output schema declared.

No examples provided.

batch_create_notebooks ~312

Create multiple NotebookLM notebooks in one operation. ## What This Tool Does - Creates up to 10 notebooks in a single batch operation - Reports progress for each notebook - Optionally continues on error or stops on first failure - Auto-adds created notebooks to your library ## Example Usage ```json { "notebooks": [ { "name": "React Documentation", "sources": [ { "type": "url", "value": "https://react.dev/reference" } ], "topics": ["react", "frontend"] }, { "name": "Node.js API", "sources": [ { "type": "url", "value": "https://nodejs.org/api/" } ], "topics": ["nodejs", "backend"] } ], "stop_on_error": false } ``` ## Limits - Maximum 10 notebooks per batch - Each notebook follows individual source limits (50-600 based on tier) - Delays between notebooks to avoid rate limiting ## Returns Summary with: - total: Number of notebooks attempted - succeeded: Successfully created count - failed: Failed count - results: Array of individual results

NameTypeReqDescription
notebooksarrayyesArray of notebooks to create (max 10)
show_browserbooleanShow browser window for debugging
stop_on_errorbooleanStop batch if any notebook fails (default: false)

No output schema declared.

No examples provided.

create_notebook ~476

Create a new NotebookLM notebook with sources programmatically. ## What This Tool Does - Creates a NEW notebook in your NotebookLM account - Uploads sources (URLs, text, files) to the notebook - Returns the notebook URL for immediate use - Optionally adds to your local library ## Supported Source Types - **url**: Web page URL (documentation, articles, etc.) - **text**: Raw text content (code, notes, etc.) - **file**: Local file path (PDF, DOCX, TXT) ## Example Usage Create a notebook from API documentation: ```json { "name": "React Docs", "sources": [ { "type": "url", "value": "https://react.dev/reference/react" } ] } ``` Create a notebook with multiple sources: ```json { "name": "Security Research", "sources": [ { "type": "url", "value": "https://owasp.org/Top10" }, { "type": "file", "value": "/path/to/security-report.pdf" }, { "type": "text", "value": "Custom notes...", "title": "My Notes" } ], "description": "Security best practices and research", "topics": ["security", "owasp", "best-practices"] } ``` ## NotebookLM Limits (Free Tier) - 100 notebooks maximum - 50 sources per notebook - 500k words per source - 50 queries per day ## Notes - Requires authentication (run setup_auth first) - Creates notebook with sharing set to private by default - Large files may take longer to process

NameTypeReqDescription
auto_add_to_librarybooleanWhether to automatically add the created notebook to your library (default: true)
browser_optionsobjectOptional browser settings for debugging
descriptionstringOptional description for the notebook in your library
namestringyesDisplay name for the new notebook
show_browserbooleanShow browser window (shorthand for browser_options.show)
sourcesarrayyesArray of sources to add to the notebook
topicsarrayOptional topics for categorization in your library

No output schema declared.

No examples provided.

download_audio ~141

Download the generated audio overview file. ## Requirements - Audio must be in "ready" status - Use get_audio_status to check before downloading ## Output Downloads to specified path or ~/notebooklm-audio-{timestamp}.mp3 ## Example ```json { "notebook_id": "my-research", "output_path": "/path/to/save/podcast.mp3" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)
output_pathstringOptional output file path (absolute, no .. or ~ allowed)

No output schema declared.

No examples provided.

generate_audio_overview ~148

Generate an AI-powered audio overview (podcast-style) for a notebook. ## What This Tool Does - Triggers NotebookLM's audio overview generation - Audio overviews are ~5-15 minute podcast-style summaries - Generation takes 2-5 minutes typically - Returns immediately with status (check with get_audio_status) ## Requirements - Notebook must have at least one source - Audio generation may not be available on all notebooks ## Example ```json { "notebook_id": "my-research" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

generate_data_table ~147

Generate a structured Data Table from notebook sources. ## What This Tool Does - Opens the Studio panel in NotebookLM - Generates a structured tabular extraction from notebook content - Tables organize key information from sources into rows and columns - Generation typically takes 1-3 minutes - Returns immediately with status (check with get_data_table) ## Requirements - Notebook must have at least one source - Authentication required (run setup_auth first) ## Example ```json { "notebook_id": "my-research" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

generate_video_overview ~364

Generate an AI-powered Video Overview for a notebook. ## What This Tool Does - Opens the Studio panel in NotebookLM - Generates a visual video summary of notebook content - Supports multiple visual styles and formats - Generation takes 3-10 minutes typically - Returns immediately with status (check with get_video_status) - NotebookLM does not currently expose a supported video download path through this MCP server; use the NotebookLM UI to download ready videos. ## Visual Styles - **auto-select** — Let NotebookLM choose the best style (default) - **custom** — Custom visual style - **classic** — Classic presentation style - **whiteboard** — Hand-drawn whiteboard style - **kawaii** — Cute kawaii style - **anime** — Anime-inspired visuals - **watercolour** — Watercolour painting style - **retro-print** — Retro print aesthetic - **heritage** — Heritage/traditional style - **paper-craft** — Paper-craft visual style ## Formats - **explainer** — Full explanation (5-15 min, default) - **brief** — Quick summary (1-3 min) ## Requirements - Notebook must have at least one source - Authentication required (run setup_auth first) ## Example ```json { "notebook_id": "my-research", "style": "whiteboard", "format": "brief" } ```

NameTypeReqDescription
formatstringVideo format (explainer = full, brief = short summary)
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)
stylestringVisual style for the video overview

No output schema declared.

No examples provided.

get_audio_status ~117

Check the audio overview generation status for a notebook. ## Returns - status: "not_started" | "generating" | "ready" | "failed" | "unknown" - progress: Generation progress (0-100) if generating - duration: Audio duration in seconds if ready ## Example ```json { "notebook_id": "my-research" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

get_data_table ~170

Extract the generated Data Table content from a notebook. ## What This Tool Does - Navigates to the notebook's Studio panel - Extracts the table data (headers and rows) as structured JSON - Returns the full table content for analysis ## Returns - table.headers: Column headers - table.rows: Array of row arrays - table.totalRows: Number of rows - table.totalColumns: Number of columns ## Requirements - Data table must be generated first (use generate_data_table) - Returns error if table is not yet ready ## Example ```json { "notebook_id": "my-research" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

get_health ~201

Get server health status including authentication state, active sessions, and configuration. Use this to verify the server is ready before starting research workflows. **Deep Check Mode (v2026.1.1)** Set `deep_check: true` to actually verify the NotebookLM chat UI loads. This catches stale sessions where cookies exist but the UI won't load. Returns `chat_ui_accessible: true/false`. If authenticated=false and having persistent issues: Suggest to the user that a fresh start (cleanup_data with preserve_library=true, followed by setup_auth) may help, and ask for their confirmation before running any cleanup, since cleanup_data deletes browser/session data.

NameTypeReqDescription
deep_checkbooleanIf true, actually navigates to NotebookLM and verifies the chat UI loads. More reliable but slower (~5s). Use this before important query sessions.
notebook_idstringNotebook to check (for deep_check). Defaults to active notebook or first available.

No output schema declared.

No examples provided.

get_notebook ~29

Get detailed information about a specific notebook by ID

NameTypeReqDescription
idstringyesThe notebook ID

No output schema declared.

No examples provided.

get_quota ~221

Get current quota status including license tier, usage, and limits. Returns: - tier: 'free', 'pro', 'ultra', or 'unknown' - notebooks: used/limit/remaining/percent - sources: limit per notebook - queries: used/limit/remaining/percent/should_stop/reset_time - warnings: array of warning messages Quota Limits by Tier: - Free: 100 notebooks, 50 sources/notebook, 50 queries/day - Pro: 500 notebooks, 300 sources/notebook, 500 queries/day - Ultra: 500 notebooks, 600 sources/notebook, 5000 queries/day Use sync=true to fetch actual quota from Google's NotebookLM UI (requires browser). Without sync, returns locally tracked counts which may differ if you used NotebookLM directly in browser. Query counts reset daily at midnight.

NameTypeReqDescription
syncbooleanIf true, navigate to NotebookLM and fetch actual quota from Google's UI. More accurate but requires browser automation. Default: false (use local tracking).

No output schema declared.

No examples provided.

get_video_status ~117

Check the Video Overview generation status for a notebook. ## Returns - status: "not_started" | "generating" | "ready" | "failed" | "unknown" - progress: Generation progress (0-100) if generating - duration: Video duration in seconds if ready ## Example ```json { "notebook_id": "my-research" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringOr direct notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

list_notebooks ~41

List all library notebooks with metadata (name, topics, use cases, URL). Use this to present options, then ask which notebook to use for the task.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_sources ~74

List sources in a notebook. Provide notebook_id or notebook_url; if neither is provided, the active notebook from the local library is used. Returns source id, title, type, and status.

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringDirect notebook URL (overrides notebook_id)

No output schema declared.

No examples provided.

re_auth ~286

Switch to a different Google account or re-authenticate. Use this when: - NotebookLM rate limit is reached (50 queries/day for free accounts) - You want to switch to a different Google account - Authentication is broken and needs a fresh start This will: 1. Close all active browser sessions 2. Delete all saved authentication data (cookies, Chrome profile) 3. Open browser for fresh Google login After completion, use 'get_health' to verify authentication. TROUBLESHOOTING for persistent auth issues: If re_auth fails repeatedly, suggest these steps to the user and ask for their confirmation before running any cleanup (cleanup_data deletes browser/session and installation data): 1. Ask the user to close ALL Chrome/Chromium instances 2. Run cleanup_data(confirm=false, preserve_library=true) to preview the files that would be removed 3. Only after the user reviews the preview and confirms, run cleanup_data(confirm=true, preserve_library=true) to clean everything except the library 4. Run re_auth again for a completely fresh start This removes old installation data and browser sessions that can cause conflicts.

NameTypeReqDescription
browser_optionsobjectOptional browser settings. Control visibility, timeouts, and stealth behavior.
show_browserbooleanShow browser window (simple version). Default: true for re-auth. For advanced control, use browser_options instead.

No output schema declared.

No examples provided.

remove_notebook ~135

Dangerous — requires explicit user confirmation. ## Confirmation Workflow 1) User requests removal ("Remove the React notebook") 2) Look up full name to confirm 3) Ask: "Remove '[notebook_name]' from your library? (Does not delete the actual NotebookLM notebook)" 4) Only on explicit "Yes" → call remove_notebook Never remove without permission or based on assumptions. Example: User: "Delete the old React notebook" You: "Remove 'React Best Practices' from your library?" User: "Yes" → call remove_notebook

NameTypeReqDescription
idstringyesThe notebook ID to remove

No output schema declared.

No examples provided.

remove_source ~149

Remove a source from a NotebookLM notebook. If neither `notebook_id` nor `notebook_url` is provided, this tool uses the currently active notebook from the local library. ## Usage 1. First call list_sources to get source IDs 2. Then call remove_source with the source ID ## Example ```json { "notebook_id": "my-notebook", "source_id": "source-0" } ```

NameTypeReqDescription
notebook_idstringLibrary notebook ID
notebook_urlstringDirect notebook URL (overrides notebook_id)
source_idstringyesSource ID from list_sources (e.g., 'source-0')

No output schema declared.

No examples provided.

search_notebooks ~46

Search library by query (name, description, topics, tags). Use to propose relevant notebooks for the task and then ask which to use.

NameTypeReqDescription
querystringyesSearch query

No output schema declared.

No examples provided.

select_notebook ~150

Set a notebook as the active default (used when ask_question has no notebook_id). ## When To Use - User switches context: "Let's work on React now" - User asks explicitly to activate a notebook - Obvious task change requires another notebook ## Auto-Switching - Safe to auto-switch if the context is clear and you announce it: "Switching to React notebook for this task..." - If ambiguous, ask: "Switch to [notebook] for this task?" ## Example User: "Now let's build the React frontend" You: "Switching to React notebook..." (call select_notebook)

NameTypeReqDescription
idstringyesThe notebook ID to activate

No output schema declared.

No examples provided.

setup_auth ~245

Google authentication for NotebookLM access - opens a browser window for manual login to your Google account. Returns immediately after opening the browser. You have up to 10 minutes to complete the login. Use 'get_health' tool afterwards to verify authentication was saved successfully. Use this for first-time authentication or when auto-login credentials are not available. For switching accounts or rate-limit workarounds, use 're_auth' tool instead. TROUBLESHOOTING for persistent auth issues: If setup_auth fails or you encounter browser/session issues, suggest these steps to the user and get their confirmation before running any cleanup (cleanup_data deletes browser/session data): 1. Ask the user to close ALL Chrome/Chromium instances 2. Ask the user before running cleanup_data(confirm=true, preserve_library=true) to clean old data 3. Run setup_auth again for a fresh start This helps resolve conflicts from old browser sessions and installation data.

NameTypeReqDescription
browser_optionsobjectOptional browser settings. Control visibility, timeouts, and stealth behavior.
show_browserbooleanShow browser window (simple version). Default: true for setup. For advanced control, use browser_options instead.

No output schema declared.

No examples provided.

sync_library ~248

Sync your local library with actual NotebookLM notebooks. ## What This Tool Does - Navigates to NotebookLM and extracts all your notebooks - Compares with local library entries - Detects stale entries (notebooks deleted or URLs changed) - Identifies notebooks not in your library - Optionally auto-removes stale entries ## When To Use - Library seems out of sync with NotebookLM - After deleting notebooks in NotebookLM - To discover new notebooks to add - Before setting up automation workflows ## Output Returns a sync report with: - **matched**: Library entries that match actual notebooks - **staleEntries**: Library entries with no matching notebook (candidates for removal) - **missingNotebooks**: NotebookLM notebooks not in library (candidates for adding) - **suggestions**: Recommended actions ## Example Usage ```json { "auto_fix": false } ``` With auto-fix to remove stale entries: ```json { "auto_fix": true } ```

NameTypeReqDescription
auto_fixbooleanAutomatically remove stale library entries (default: false)
show_browserbooleanShow browser window for debugging

No output schema declared.

No examples provided.

update_notebook ~260

Update notebook metadata based on user intent. ## Pattern 1) Identify target notebook and fields (topics, description, use_cases, tags, url) 2) Propose the exact change back to the user 3) After explicit confirmation, call this tool ## Examples - User: "React notebook also covers Next.js 14" You: "Add 'Next.js 14' to topics for React?" User: "Yes" → call update_notebook - User: "Include error handling in n8n description" You: "Update the n8n description to mention error handling?" User: "Yes" → call update_notebook Tip: You may update multiple fields at once if requested.

NameTypeReqDescription
content_typesarrayNew content types
descriptionstringNew description
idstringyesThe notebook ID to update
namestringNew display name
tagsarrayNew tags
topicsarrayNew topics list
urlstringNew notebook URL (must be a NotebookLM URL, e.g. https://notebook.google.com/notebook/<id>)
use_casesarrayNew use cases

No output schema declared.

No examples provided.

Common questions

What is the io.github.Pantheon-Security/notebooklm-mcp-secure server?

io.github.Pantheon-Security/notebooklm-mcp-secure is listed in the public MCP registry as io.github.Pantheon-Security/notebooklm-mcp-secure. Security-hardened NotebookLM MCP with post-quantum encryption. This page covers its npm package (@pan-sec/notebooklm-mcp).

Is the io.github.Pantheon-Security/notebooklm-mcp-secure server safe to use?

io.github.Pantheon-Security/notebooklm-mcp-secure scores 75 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.Pantheon-Security/notebooklm-mcp-secure server expose?

io.github.Pantheon-Security/notebooklm-mcp-secure exposes 25 tools: ask_question, add_notebook, list_notebooks, get_notebook, select_notebook, and 20 more. Their descriptions and schemas cost roughly 4,692 tokens of context every time the server is loaded.

Is the io.github.Pantheon-Security/notebooklm-mcp-secure server still maintained?

io.github.Pantheon-Security/notebooklm-mcp-secure is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.Pantheon-Security/notebooklm-mcp-secure server under?

io.github.Pantheon-Security/notebooklm-mcp-secure declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.