home / mcp / notebooklm mcp server

NotebookLM MCP Server

Provides a production-ready MCP server to chat with NotebookLM, with persistent Google session and multiple transports.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "khengyun-notebooklm-mcp": {
      "command": "uv",
      "args": [
        "run",
        "notebooklm-mcp",
        "--config",
        "notebooklm-config.json",
        "server"
      ],
      "env": {
        "NOTEBOOKLM_DEBUG": "false",
        "NOTEBOOKLM_HEADLESS": "true",
        "NOTEBOOKLM_NOTEBOOK_ID": "YOUR_NOTEBOOK_ID"
      }
    }
  }
}

You deploy a production-ready MCP server that lets you automate Google NotebookLM from a local or remote client. This server provides fast tool registration, type-safe validation, and multiple transports so you can interact with NotebookLM efficiently while keeping authentication persistent across sessions.

How to use

You initialize the server configuration once, which creates a configuration file and a browser-based Google login for persistent authentication. After that, you run the server locally using a simple command. You can operate in STDIO mode for local MCP clients, or start an HTTP server for web testing and REST interactions. You can also engage in an interactive chat session with NotebookLM.

How to install

Prerequisites: you need a working Python environment and a shell. You also install a modern Python package manager to simplify the workflow.

# Install UV (modern Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install NotebookLM MCP from PyPI
uv add notebooklm-mcp

# Initialize with your NotebookLM URL
uv run notebooklm-mcp init https://notebooklm.google.com/notebook/YOUR_NOTEBOOK_ID

Additional installation paths

If you prefer using pip instead of UV, you can install and run the server with standard Python tooling.

# Install with pip
pip install notebooklm-mcp

# Initialize
notebooklm-mcp init https://notebooklm.google.com/notebook/YOUR_NOTEBOOK_ID

# Start server
notebooklm-mcp --config notebooklm-config.json server

Available tools

healthcheck

Check server health status to verify the MCP server is responsive.

send_chat_message

Send a message to NotebookLM and await a response.

get_chat_response

Retrieve the latest chat response with a timeout.

chat_with_notebook

Perform a complete chat interaction with NotebookLM, optionally selecting a notebook.

navigate_to_notebook

Switch the active NotebookLM notebook by ID.

get_default_notebook

Query the currently set default notebook.

set_default_notebook

Set a new default notebook by ID.

get_quick_response

Request an immediate response from NotebookLM if available.