NotebookLM MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| notebook_listB | List all notebooks. Args: max_results: Maximum number of notebooks to return (default: 100) |
| notebook_createB | Create a new notebook. Args: title: Optional title for the notebook |
| notebook_getB | Get notebook details with sources. Args: notebook_id: Notebook UUID |
| notebook_describeB | Get AI-generated notebook summary with suggested topics. Args: notebook_id: Notebook UUID Returns: summary (markdown), suggested_topics list |
| source_describeB | Get AI-generated source summary with keyword chips. Args: source_id: Source UUID Returns: summary (markdown with bold keywords), keywords list |
| notebook_add_urlC | Add URL (website or YouTube) as source. Args: notebook_id: Notebook UUID url: URL to add |
| notebook_add_urlsA | Add multiple URLs (websites or YouTube) as sources in a single request. Args: notebook_id: Notebook UUID urls: List of URLs to add (can mix website and YouTube URLs) |
| notebook_add_textC | Add pasted text as source. Args: notebook_id: Notebook UUID text: Text content to add title: Optional title |
| notebook_add_driveB | Add Google Drive document as source. Args: notebook_id: Notebook UUID document_id: Drive document ID (from URL) title: Display title doc_type: doc|slides|sheets|pdf |
| notebook_queryA | Ask AI about EXISTING sources already in notebook. NOT for finding new sources. Use research_start instead for: deep research, web search, find new sources, Drive search. Args: notebook_id: Notebook UUID query: Question to ask source_ids: Source IDs to query (default: all) conversation_id: For follow-up questions |
| notebook_deleteA | Delete notebook permanently. IRREVERSIBLE. Requires confirm=True. Args: notebook_id: Notebook UUID confirm: Must be True after user approval |
| notebook_renameB | Rename a notebook. Args: notebook_id: Notebook UUID new_title: New title |
| chat_configureB | Configure notebook chat settings. Args: notebook_id: Notebook UUID goal: default|learning_guide|custom custom_prompt: Required when goal=custom (max 10000 chars) response_length: default|longer|shorter |
| source_list_driveA | List sources with types and Drive freshness status. Use before source_sync_drive to identify stale sources. Args: notebook_id: Notebook UUID |
| source_sync_driveA | Sync Drive sources with latest content. Requires confirm=True. Call source_list_drive first to identify stale sources. Args: source_ids: Source UUIDs to sync confirm: Must be True after user approval |
| source_deleteA | Delete source permanently. IRREVERSIBLE. Requires confirm=True. Args: source_id: Source UUID to delete confirm: Must be True after user approval |
| research_startA | Deep research / fast research: Search web or Google Drive to FIND NEW sources. Use this for: "deep research on X", "find sources about Y", "search web for Z", "search Drive". Workflow: research_start -> poll research_status -> research_import. Args: query: What to search for (e.g. "quantum computing advances") source: web|drive (where to search) mode: fast (~30s, ~10 sources) | deep (~5min, ~40 sources, web only) notebook_id: Existing notebook (creates new if not provided) title: Title for new notebook |
| research_statusA | Poll research progress. Blocks until complete or timeout. Args: notebook_id: Notebook UUID poll_interval: Seconds between polls (default: 30) max_wait: Max seconds to wait (default: 300, 0=single poll) compact: If True (default), truncate report and limit sources shown to save tokens. Use compact=False to get full details. |
| research_importA | Import discovered sources into notebook. Call after research_status shows status="completed". Args: notebook_id: Notebook UUID task_id: Research task ID source_indices: Source indices to import (default: all) |
| audio_overview_createA | Generate audio overview. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) format: deep_dive|brief|critique|debate length: short|default|long language: BCP-47 code (en, es, fr, de, ja) focus_prompt: Optional focus text confirm: Must be True after user approval |
| video_overview_createA | Generate video overview. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) format: explainer|brief visual_style: auto_select|classic|whiteboard|kawaii|anime|watercolor|retro_print|heritage|paper_craft language: BCP-47 code (en, es, fr, de, ja) focus_prompt: Optional focus text confirm: Must be True after user approval |
| studio_statusC | Check studio content generation status and get URLs. Args: notebook_id: Notebook UUID |
| studio_deleteA | Delete studio artifact. IRREVERSIBLE. Requires confirm=True. Args: notebook_id: Notebook UUID artifact_id: Artifact UUID (from studio_status) confirm: Must be True after user approval |
| infographic_createA | Generate infographic. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) orientation: landscape|portrait|square detail_level: concise|standard|detailed language: BCP-47 code (en, es, fr, de, ja) focus_prompt: Optional focus text confirm: Must be True after user approval |
| slide_deck_createA | Generate slide deck. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) format: detailed_deck|presenter_slides length: short|default language: BCP-47 code (en, es, fr, de, ja) focus_prompt: Optional focus text confirm: Must be True after user approval |
| report_createA | Generate report. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) report_format: "Briefing Doc"|"Study Guide"|"Blog Post"|"Create Your Own" custom_prompt: Required for "Create Your Own" language: BCP-47 code (en, es, fr, de, ja) confirm: Must be True after user approval |
| flashcards_createA | Generate flashcards. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) difficulty: easy|medium|hard confirm: Must be True after user approval |
| quiz_createA | Generate quiz. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) question_count: Number of questions (default: 2) difficulty: Difficulty level (default: 2) confirm: Must be True after user approval |
| data_table_createA | Generate data table. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID description: Description of the data table to create source_ids: Source IDs (default: all) language: Language code (default: "en") confirm: Must be True after user approval |
| mind_map_createB | Generate and save mind map. Requires confirm=True after user approval. Args: notebook_id: Notebook UUID source_ids: Source IDs (default: all) title: Display title confirm: Must be True after user approval |
| mind_map_listB | List all mind maps in a notebook. Args: notebook_id: Notebook UUID |
| save_auth_tokensB | Save NotebookLM cookies. CSRF and session ID are auto-extracted. Args: cookies: Cookie header from Chrome DevTools get_network_request csrf_token: (deprecated, auto-extracted from request_body or page) session_id: (deprecated, auto-extracted from request_url or page) request_body: Optional request body from get_network_request (contains CSRF token) request_url: Optional request URL from get_network_request (contains session ID) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 32 tools
Most tools have distinct purposes, but there is some overlap between content generation tools (e.g., audio_overview_create, video_overview_create, report_create) which could cause confusion about which to use for similar tasks. However, their specific formats and outputs help differentiate them, and other tools like notebook management and research are clearly separated.
Tool names follow a consistent snake_case pattern with clear verb_noun structure (e.g., notebook_create, source_delete, research_start). There are no deviations in naming conventions, making it easy to predict tool functions and maintain readability across the entire set.
With 32 tools, the count feels heavy for a notebook management and content generation server, though it covers a broad domain. It includes many specialized generation tools (e.g., for audio, video, slides) that might be overkill, but the scope is comprehensive, placing it on the borderline of being too many.
The toolset provides complete coverage for notebook management (CRUD operations, source handling), content generation (multiple formats), and research workflows. There are no obvious gaps; tools support all major operations from creation to deletion, with clear workflows for adding sources, querying, and generating artifacts.