NotebookLM MCP Server

NotebookLM MCP Server

A production-ready, fully asynchronous MCP server that bridges AI agents with Google NotebookLM, enabling notebook creation, source management, audio generation, and more through natural language.

Category
Visit Server

README

NotebookLM MCP Server v1.0

Read this in other languages: Русский Production-ready, fully asynchronous Model Context Protocol (MCP) server for Google NotebookLM.

This server acts as a bridge between AI agents (like Claude Desktop, Cursor, Antigravity) and NotebookLM, allowing your AI to read your notebooks, interact with your sources, and generate reports.

Features

  • Asynchronous Execution: Fully utilizes asyncio for high concurrency handling.
  • Robust Execution: Wrap NotebookLM CLI commands with timeouts and proper error handling.
  • Thread Safety (Command Queue): Multiple simultaneous requests are queued safely via asyncio.Lock().
  • Advanced MCP Tools: Includes create_notebook, delete_notebook, add_source, list_sources, get_source_text, generate_audio, generate_report, and get_history.
  • Multi-language Support (i18n): All tool docstrings are in English, ensuring seamless compatibility with any LLM globally.
  • Network Mode (SSE Transport): Supports both Standard I/O (local) and SSE (network) transport protocols.
  • Retries & Caching: Temporary CLI failures are retried automatically. Read operations are cached.
  • Diagnostics: Built-in health_check() tool to verify CLI availability and authentication status.

Installation

You can install this server either automatically (recommended) or manually.

Method A: One-Click Automatic Install (Recommended)

This method automatically sets up a virtual environment, installs all dependencies (including notebooklm-py and Chromium for Playwright), and registers the server in your IDEs (Claude Desktop, Cursor, Antigravity).

  1. Clone or download this repository:

    git clone https://github.com/Vetal711/notebooklm-mcp.git
    cd notebooklm-mcp
    
  2. Run the auto-installer script:

    • Windows: Double-click install.bat (or run it in the terminal).
    • Mac/Linux: Run bash install.sh
  3. Authenticate with Google: Once the installation is complete, you must authenticate the CLI. Run the following command and follow the instructions in the browser window:

    • Windows: venv\Scripts\notebooklm.exe login
    • Mac/Linux: ./venv/bin/notebooklm login
  4. Restart your IDE/Agent (Claude Desktop, Cursor, or Antigravity) and the server will be available!


Method B: Manual Installation

If you prefer to configure everything manually or use a global Python environment:

  1. Clone the repository:

    git clone https://github.com/Vetal711/notebooklm-mcp.git
    cd notebooklm-mcp
    
  2. Create a virtual environment and install dependencies:

    python -m venv venv
    # On Windows:
    venv\Scripts\pip install -e .
    # On Mac/Linux:
    ./venv/bin/pip install -e .
    
  3. Install the Playwright browser driver:

    # On Windows:
    venv\Scripts\playwright install chromium
    # On Mac/Linux:
    ./venv/bin/playwright install chromium
    
  4. Authenticate:

    # On Windows:
    venv\Scripts\notebooklm.exe login
    # On Mac/Linux:
    ./venv/bin/notebooklm login
    
  5. Manual Configuration for MCP Clients: Instead of running the automated configuration script, you can manually add the following JSON block to your MCP client's configuration file (e.g., claude_desktop_config.json, cline_mcp_settings.json, or mcp_config.json).

    Make sure to replace /absolute/path/to/notebooklm-mcp with the actual absolute path to your cloned directory.

    {
      "mcpServers": {
        "NotebookLM": {
          "command": "/absolute/path/to/notebooklm-mcp/venv/bin/notebooklm-mcp",
          "args": []
        }
      }
    }
    

    (Note for Windows users: Use venv\\Scripts\\notebooklm-mcp.exe and escape backslashes in paths).

    Important: The server automatically generates a .env file in its root directory upon first run or installation to manage absolute paths.


Docker Deployment

To build and run via Docker:

docker build -t notebooklm-mcp .
docker run -i --rm -v ~/.notebooklm:/root/.notebooklm notebooklm-mcp

(Note: You need to mount the .notebooklm config directory to share your local authentication session).

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured