Labsco
jacob-bd logo

notebooklm-mcp-cli

β˜… 5,100

from jacob-bd

Programmatic access to Google NotebookLM β€” via command-line interface (CLI) or Model Context Protocol (MCP) server.

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedFreeNeeds API keys

MCP Guide

Complete reference for the NotebookLM MCP server β€” 39 tools for AI assistants.

Authentication

Before using MCP tools, authenticate:

Copy & paste β€” that's it
nlm login

Or use the standalone auth tool:

Copy & paste β€” that's it
nlm login

Tool Reference

Notebooks (6 tools)

Tool Description notebook_list List all notebooks notebook_create Create new notebook notebook_get Get notebook details with sources notebook_describe Get AI summary and suggested topics notebook_rename Rename a notebook notebook_delete Delete notebook (requires confirm=True)

Sources (6 tools)

Tool Description source_add Unified - Add URL, text, file, or Drive source source_list_drive List sources with Drive freshness status; use skip_freshness=True for large notebooks when freshness is not needed source_sync_drive Sync stale Drive sources source_delete Delete source (requires confirm=True) source_describe Get AI summary with keywords source_get_content Get raw text content

source_list_drive parameters:

Copy & paste β€” that's it
source_list_drive(
 notebook_id="...",
 skip_freshness=False, # True skips per-source freshness API calls for faster listing
)

source_add parameters:

Copy & paste β€” that's it
source_add(
 notebook_id="...",
 source_type="url", # url | text | file | drive
 url="https://...", # for source_type=url
 text="...", # for source_type=text
 title="...", # optional title
 file_path="/path/to.pdf", # for source_type=file
 document_id="...", # for source_type=drive
 doc_type="doc", # doc | slides | sheets | pdf
 wait=True, # wait for processing to complete
 wait_timeout=120.0 # seconds to wait
)

Querying (2 tools)

Tool Description notebook_query Ask AI about sources in notebook chat_configure Set chat goal and response length

Studio Content (4 tools)

Tool Description studio_create Unified - Create any artifact type studio_status Check generation progress studio_delete Delete artifact (requires confirm=True) studio_revise Revise slides in existing deck (requires confirm=True)

studio_create artifact types:

  • audio - Podcast (formats: deep_dive, brief, critique, debate)

  • video - Video overview (formats: explainer, brief, cinematic, short)

  • report - Text report (Briefing Doc, Study Guide, Blog Post)

  • quiz - Multiple choice quiz

  • flashcards - Study flashcards

  • mind_map - Visual mind map

  • slide_deck - Presentation slides

  • infographic - Visual infographic

  • data_table - Structured data table

Downloads (1 tool)

Tool Description download_artifact Unified - Download any artifact type

download_artifact types: audio, video, report, mind_map, slide_deck, infographic, data_table, quiz, flashcards

Exports (1 tool)

Tool Description export_artifact Export to Google Docs/Sheets

Research (3 tools)

Tool Description research_start Start web/Drive research research_status Poll research progress research_import Import discovered sources (timeout and cited_only supported)

Notes (1 unified tool)

Tool Description note Unified - Manage notes (action: list, create, update, delete)

note actions:

Copy & paste β€” that's it
note(notebook_id, action="list") # List all notes
note(notebook_id, action="create", content="...", title="...")
note(notebook_id, action="update", note_id="...", content="...")
note(notebook_id, action="delete", note_id="...", confirm=True)

Sharing (3 tools)

Tool Description notebook_share_status Get sharing settings notebook_share_public Enable/disable public link notebook_share_invite Invite collaborator by email

Auth (2 tools)

Tool Description refresh_auth Reload auth tokens save_auth_tokens Save cookies (fallback method)

Server (1 tool)

Tool Description server_info Get version and check for updates

Batch & Cross-Notebook (2 tools)

Tool Description batch Unified β€” Batch operations across multiple notebooks (action: query, add_source, create, delete, studio) cross_notebook_query Query multiple notebooks and get aggregated answers with per-notebook citations

batch actions:

Copy & paste β€” that's it
batch(action="query", query="What are the key findings?", notebook_names="AI Research, Dev Tools")
batch(action="add_source", source_url="https://...", tags="ai,research")
batch(action="create", titles="Project A, Project B, Project C")
batch(action="delete", notebook_names="Old Project", confirm=True)
batch(action="studio", artifact_type="audio", tags="research", confirm=True)

cross_notebook_query:

Copy & paste β€” that's it
cross_notebook_query(query="Compare approaches", notebook_names="Notebook A, Notebook B")
cross_notebook_query(query="Summarize", tags="ai,research")
cross_notebook_query(query="Everything", all=True)

Pipelines (1 tool)

Tool Description pipeline Unified β€” List or run multi-step workflows (action: list, run)

pipeline actions:

Copy & paste β€” that's it
pipeline(action="list") # List available pipelines
pipeline(action="run", notebook_id="...", pipeline_name="ingest-and-podcast", input_url="https://...")

Built-in pipelines: ingest-and-podcast, research-and-report, multi-format

Tags & Smart Select (1 tool)

Tool Description tag Unified β€” Tag notebooks and find relevant ones (action: add, remove, list, select)

tag actions:

Copy & paste β€” that's it
tag(action="add", notebook_id="...", tags="ai,research,llm")
tag(action="remove", notebook_id="...", tags="ai")
tag(action="list") # List all tagged notebooks
tag(action="select", query="ai research") # Find notebooks by tag match

Example Workflows

Research β†’ Podcast

Copy & paste β€” that's it
1. research_start(query="AI trends 2026", mode="deep")
2. research_status(notebook_id, auto_import=True) # waits up to 15 min, imports automatically
# Or review sources first, then import manually:
2a. research_status(notebook_id) # waits up to 15 min, returns next_action hint
2b. research_import(notebook_id, task_id, cited_only=True, timeout=600) # optional cited subset
4. studio_create(notebook_id, artifact_type="audio", confirm=True)
5. studio_status(notebook_id) # poll until complete
6. download_artifact(notebook_id, artifact_type="audio", output_path="podcast.mp3")

Add Sources with Wait

Copy & paste β€” that's it
source_add(notebook_id, source_type="url", url="https://...", wait=True)
# Returns when source is fully processed and ready for queries

Generate Study Materials

Copy & paste β€” that's it
studio_create(notebook_id, artifact_type="quiz", question_count=10, confirm=True)
studio_create(notebook_id, artifact_type="flashcards", difficulty="hard", confirm=True)
studio_create(notebook_id, artifact_type="report", report_format="Study Guide", confirm=True)
studio_create(notebook_id, artifact_type="audio", language="es-419", confirm=True)

For Audio Overviews, NotebookLM has been observed using BCP-47 region subtags to select the voice accent. es and es-ES produce Spain Spanish, while es-US and es-419 produce Latin-American Spanish. The generation prompt does not reliably override the accent. Treat this as observed behavior, not a guaranteed API contract.

Tag, Batch & Cross-Notebook

Copy & paste β€” that's it
# Tag notebooks for organization
tag(action="add", notebook_id="abc", tags="ai,research")
tag(action="add", notebook_id="def", tags="ai,product")

# Find relevant notebooks
tag(action="select", query="ai research") 

# Query across tagged notebooks
cross_notebook_query(query="What are the main conclusions?", tags="ai")

# Batch generate podcasts for all tagged notebooks
batch(action="studio", artifact_type="audio", tags="ai", confirm=True)

Pipeline Automation

Copy & paste β€” that's it
# List available pipelines
pipeline(action="list")

# Run a full ingest-and-podcast workflow
pipeline(action="run", notebook_id="abc", pipeline_name="ingest-and-podcast", input_url="https://example.com")

Context Window Tips

This MCP has 39 tools which consume context. Best practices:

  • Disable when not using: In Claude Code, use @notebooklm-mcp to toggle

  • Use unified tools: source_add, studio_create, download_artifact handle multiple operations each

  • Poll wisely: Use studio_status sparingly - artifacts take 1-5 minutes