/ Directory / Playground / NotebookLM-py
● Community teng-lin ⚡ Instant

NotebookLM-py

by teng-lin · teng-lin/notebooklm-py

Drive Google NotebookLM from Claude — create notebooks, ingest sources, generate audio overviews, including features the web UI hides.

notebooklm-py is an unofficial Python API + Claude skill for NotebookLM. It exposes notebook CRUD, source ingestion (PDFs, URLs, YouTube), and the audio-overview / mind-map / FAQ features. Includes a CLI and an agent skill so you can say 'load these PDFs into a notebook and give me the audio overview' without ever opening notebooklm.google.com.

Why use it

Key features

Live Demo

What it looks like in practice

ready

Install

Author repository · Claude Skills documentation

Use Cases

Real-world ways to use NotebookLM-py

Build a research digest from a paper batch

👤 Researchers / analysts ⏱ ~20 min beginner

When to use: 10 papers landed in your inbox; you want a synthesis fast.

Prerequisites
  • Google account with NotebookLM access — Sign in once via the Python auth flow
Flow
  1. Ingest
    Use notebooklm-py. Create a notebook 'Q2 Reading'. Add the 10 PDFs in /papers/.✓ Copied
    → Notebook created; sources loaded
  2. Synthesize
    Generate a topic-clustered summary across all sources.✓ Copied
    → Cross-source synthesis
  3. Audio
    Generate an audio overview. Save the MP3.✓ Copied
    → MP3 file

Outcome: 10 papers digested into something you can read in 20 minutes or listen to on a walk.

Pitfalls
  • Source quality varies — Ask for per-source attribution in the synthesis
Combine with: filesystem

Auto-generate an FAQ from product docs

👤 Product / DevRel ⏱ ~25 min beginner

When to use: You have docs and need a FAQ for users.

Flow
  1. Load
    Create a notebook from /docs (recursive). Generate FAQ.✓ Copied
    → FAQ output
  2. Refine
    Drop FAQ items that aren't actually frequently asked. Add citations to source sections.✓ Copied
    → Cited, relevance-filtered FAQ

Outcome: FAQ ready to publish.

Pitfalls
  • Generic questions — Provide examples of real user questions if you have them

Combinations

Pair with other MCPs for X10 leverage

notebooklm-py-skill + filesystem

Save audio overviews + summaries locally

Save MP3 to /research/audio/.✓ Copied
notebooklm-py-skill + aris-research-skill

ARIS for autonomous research, NotebookLM for synthesis

ARIS finds papers; NotebookLM digests them into an audio overview.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
create_notebook title New project 1 NotebookLM op
add_source notebook_id, source: pdf|url|youtube Build the source set 1 op + ingestion time
generate_audio notebook_id, style? Audio overview 1 op + render
generate_mind_map notebook_id Visualize source structure 1 op
ask notebook_id, question Q&A grounded in sources 1 op

Cost & Limits

What this costs to run

API quota
Bound by NotebookLM's plan limits
Tokens per call
Tokens minimal — most cost is the NotebookLM API
Monetary
Free at NotebookLM's free tier; paid for higher limits
Tip
Reuse notebooks; don't create-and-discard

Security

Permissions, secrets, blast radius

Minimum scopes: Google auth for NotebookLM
Credential storage: Local OAuth token cache
Data egress: Google NotebookLM
Never grant: OAuth scopes you don't need

Troubleshooting

Common errors and fixes

Auth flow stuck

Clear local token cache and re-auth

Source ingestion fails for big PDFs

Split into smaller chunks; NotebookLM has per-source size limits

Audio generation queued forever

NotebookLM's audio queue can be slow; retry later

Alternatives

NotebookLM-py vs others

AlternativeWhen to use it insteadTradeoff
NotebookLM web UIManual, one-off useNo automation; misses programmatic features
Custom RAG pipelineYou need full control over modelsLots of engineering vs free NotebookLM features

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills

Continue exploring

Related tools and workflows

Choose another guide for your workflow, or explore a collection.

Browse all topic collections → · See 29 new official additions →