Skip to main content
Glama
Morfeu333

NotebookLM MCP Server

by Morfeu333

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NOTEBOOKLM_MCP_HOSTNoHost to bind for HTTP/SSE127.0.0.1
NOTEBOOKLM_MCP_PORTNoPort to listen on for HTTP/SSE transport8000
NOTEBOOKLM_MCP_DEBUGNoSet to 'true' to enable verbose logging (API requests/responses)false
NOTEBOOKLM_MCP_TRANSPORTNoTransport type ('stdio', 'http', 'sse')stdio
NOTEBOOKLM_QUERY_TIMEOUTNoQuery timeout in seconds120.0

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{
  "tasks": {
    "list": {},
    "cancel": {},
    "requests": {
      "tools": {
        "call": {}
      },
      "prompts": {
        "get": {}
      },
      "resources": {
        "read": {}
      }
    }
  }
}

Tools

Functions exposed to the LLM to take actions

NameDescription
refresh_authA

Reload auth tokens from disk or run headless re-authentication.

Call this after running notebooklm-mcp-auth to pick up new tokens, or to attempt automatic re-authentication if Chrome profile has saved login.

Returns status indicating if tokens were refreshed successfully.

notebook_listC

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_driveA

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 timeout: Request timeout in seconds (default: from env NOTEBOOKLM_QUERY_TIMEOUT or 120.0)

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_configureC

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. task_id: Optional Task ID to poll for a specific research task.

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_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_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: medium) confirm: Must be True after user approval

data_table_createB

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

save_auth_tokensA

Save NotebookLM cookies (FALLBACK method - try notebooklm-mcp-auth first!).

IMPORTANT FOR AI ASSISTANTS:

  • First, run notebooklm-mcp-auth via Bash/terminal (automated, preferred)

  • Only use this tool if the automated CLI fails

Args: cookies: Cookie header from Chrome DevTools (only needed if CLI fails) csrf_token: Deprecated - auto-extracted session_id: Deprecated - auto-extracted request_body: Optional - contains CSRF if extracting manually request_url: Optional - contains session ID if extracting manually

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

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/Morfeu333/notebooklm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server