Drive Google NotebookLM programmatically via the notebooklm-py CLI - create notebooks, add sources, chat, generate podcasts and other artifacts, and download in multiple formats.
---
name: NotebookLM
description: Programmatic access to Google NotebookLM via the notebooklm-py CLI, including capabilities not in the web UI - create notebooks, add sources, chat with content, generate artifacts, and download results. Activates on /notebooklm or intent like "create a podcast about X".
---
Drive Google NotebookLM end-to-end with the `notebooklm` CLI (Python package `notebooklm-py`).
## How to use
1. Install: `pip install "notebooklm-py[browser]"` (the `[cookies]` extra fails to build on Python 3.13+ - skip it there and use interactive login). Install from PyPI or a release tag, never `main`.
2. Authenticate before any command: `notebooklm login` (Google OAuth), then verify with `notebooklm list`. For CI/parallel agents, set `NOTEBOOKLM_AUTH_JSON`, `NOTEBOOKLM_PROFILE`, or `NOTEBOOKLM_HOME`.
3. Create notebooks and add sources - URLs, YouTube, PDFs, audio, video, images.
4. Chat with the notebook's content and generate artifacts, including a podcast/audio overview.
5. Download results in multiple formats for downstream use.
Named tool: the `notebooklm` CLI. Re-run `notebooklm login` if commands fail with auth errors.
Full skill & source: https://github.com/teng-lin/notebooklm-py/tree/main