Vibeleaderboard
Index / app
Visit github.com
Category
AI Tools
Rank

Previous survey · No. 730 ·

Type
APP
Builder
teng-lin
Latest release
v0.8.2
Date

About

An unofficial Python API and agentic skill for programmatic control of Google NotebookLM.

What it does

It turns collections of documents and media into cited answers, research results, generated study materials, and downloadable artifacts. Users can drive the same workflow through Python, shell commands, agent tools, or a local HTTP service.

Why it's ranked here

The case is strong because the project covers ingestion, grounded chat, research, generation, sharing, and bulk export behind several practical interfaces. Its value is tempered by total dependence on undocumented Google endpoints and account rate limits.

What's good

The breadth is unusually concrete. It accepts web pages, files, YouTube, pasted text, and Google Drive sources, then exports audio, video, documents, images, tables, quizzes, flashcards, and mind maps. Typed exceptions and transport-neutral business logic support serious automation.

Tradeoffs

Google can change the internal endpoints without notice, and heavy use may be throttled. Authentication and remote deployment add operational work. The HTTP service is experimental, while remote agent access requires careful binding, authentication, and tunnel configuration.

How to use it well

Use it for prototypes, personal research, source-grounded agent memory, scheduled briefings, and repeatable content pipelines. Let the hosted service analyze sources, then pull cited answers or structured artifacts into your own workflow. Do not choose it when you require an official, stable Google integration contract.

Technical notes+

pyproject.toml defines a Hatchling-built Python 3.10+ package with base dependencies on httpx, Click, Rich, and filelock, plus optional browser, headless-auth, MCP, and REST extras. src/notebooklm/__init__.py exposes the async client, public dataclasses, enums, observability helpers, and a detailed exception hierarchy. src/notebooklm/_app/__init__.py centralizes transport-neutral business logic shared by adapters. src/notebooklm/mcp/server.py builds one long-lived FastMCP client per process and registers notebook, source, chat, note, studio, research, sharing, and metadata tools. src/notebooklm/server/app.py builds a bearer-protected FastAPI surface with explicit request-size limits and a public minimal health route. src/notebooklm/mcp/__main__.py defaults to stdio, restricts HTTP binding, and requires authentication for non-loopback exposure.

Observed

License
MIT
Primary language
Python
Python support
Python 3.10 through 3.14
Packaging
PyPI package built with Hatchling; base and optional dependency extras are defined
Interfaces
Async Python library, Click CLI, MCP server, and optional REST server
MCP transports
stdio and streamable HTTP
Testing structure
Pytest is configured for unit, integration, end-to-end, characterization, and repository guardrail markers

Read from README.md, pyproject.toml, src/notebooklm/__init__.py, src/notebooklm/__main__.py, src/notebooklm/mcp/server.py, src/notebooklm/server/app.py, src/notebooklm/cli/__init__.py, src/notebooklm/mcp/__init__.py, src/notebooklm/mcp/__main__.py, src/notebooklm/rpc/__init__.py, src/notebooklm/_app/__init__.py, src/notebooklm/_auth/__init__.py, src/notebooklm/_chat/__init__.py, src/notebooklm/_label/__init__.py, src/notebooklm/_types/__init__.py.

Tech Stack

Python

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.