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 |
| source_get_contentA | Get raw text content of a source (no AI processing). Returns the original indexed text from PDFs, web pages, pasted text, or YouTube transcripts. Much faster than notebook_query for content export. Args: source_id: Source UUID Returns: content (str), title (str), source_type (str), char_count (int) |
| notebook_add_urlC | Add URL (website or YouTube) as source. Args: notebook_id: Notebook UUID url: URL to add |
| 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_createB | 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_statusB | 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_createB | 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_createB | 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_listC | List all mind maps in a notebook. Args: notebook_id: Notebook UUID |
| save_auth_tokensA | 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 | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/set2374/notebooklm-mcp-archived'
If you have feedback or need assistance with the MCP directory API, please join our Discord server