Dev & Engineering notebooklmbrowser-automationpatchrightpythonrag-alternativedocument-qageminigoogle-auth

NotebookLM Research Assistant Skill

Let Claude Code query your Google NotebookLM directly for citation-backed answers drawn exclusively from your uploaded documents — no copy-paste, no hallucinations.

FollowSkills review · FSRS-1.0
Recommended
63/ 100 5-point scale 3.2 / 5
This review was completed under FSRS 1.0. Dimension scores are not converted; it is queued for re-review under FSRS 2.0.
1 2 3 4 5 6
1Utility15 / 20 · 3.8/5
2Reliability12 / 20 · 3.0/5

Depends on browser automation against the NotebookLM web UI; page structure changes could break it, and the doc offers no stability evidence or tests.

3Safety16 / 25 · 3.2/5

Requires manual Google login through a visible browser window (not silent credential harvesting) — reasonably transparent design, but the doc doesn't specify where the persisted session/auth is stored or how to clear it.

4Evidence6 / 15 · 2.0/5
5Usability8 / 10 · 4.0/5
6Maintenance6 / 10 · 3.0/5
Evidence confidence:Low Reviewed Jul 16, 2026
Before you use it
  • Where the persisted login session is stored and how to clear it isn't documented
Review evidence [1]
See the full review method →

What does this skill do, and when should you use it?

This is a Claude Code Skill that uses Patchright browser automation to let local Claude Code talk to Google NotebookLM directly. For each question it opens a fresh browser session, retrieves a source-grounded, citation-backed answer from Gemini based solely on your uploaded documents, then closes. It also provides notebook library management (saving, searching and activating notebook links with metadata) and one-time persistent Google authentication. It works only with local Claude Code, not the web UI.

The skill runs Python scripts through a python scripts/run.py wrapper: auth_manager.py opens a visible Chrome window for manual Google login and persists session state; notebook_manager.py saves notebook URLs with name, description and topics into a local library., with list, search, activate, remove and stats commands; ask_question.py opens a Patchright-driven browser session, types your question into the specified NotebookLM notebook, retrieves the Gemini answer with source citations, and appends a follow-up prompt ("Is that ALL you need to know?") that pushes Claude to ask supplementary questions. All data (auth state, browser cookies, library) lives in ~/.claude/skills/notebooklm/data/ protected by .gitignore. The virtual environment and Chrome install automatically on first run.

  1. A developer who has uploaded their documentation library (API docs, framework manuals) to NotebookLM and wants Claude Code to query it instead of repeatedly reading files — saving tokens and reducing hallucinations.
  2. A mechanic or technician querying a workshop manual, e.g. asking the Suzuki GSR 600 manual for brake fluid type, oil specs and axle torque, and getting exact in-document answers.
  3. An n8n user who wants Claude to build a working workflow on the first try from their own notebook instead of guessing APIs.
  4. A user with multiple notebooks who wants Claude to automatically pick the right one for a task via the topic-tagged library.
  5. An existing user of PleasePrompto/notebooklm-mcp who prefers a clone-and-go Python skill without running an MCP server.

What are this skill's strengths and limitations?

Pros
  • Answers come strictly from your uploaded documents with citations, drastically reducing hallucinations.
  • Direct CLI Q&A eliminates the copy-paste dance between browser and editor.
  • Smart library management: save, search and auto-select notebooks by topic tags.
  • One-time authentication persists across sessions; everything is self-contained in the skill folder with no global installs.
  • Minimal setup — clone and go, with dependencies installed automatically.
Limitations
  • Local Claude Code only — the web UI sandbox has no network access, so it cannot run there at all.
  • No session persistence: each question opens a new browser and cannot reference prior answers, and browser overhead adds seconds per question.
  • Rate limits of roughly 50 queries per day on free Google accounts.
  • Relies on browser automation with human-like patterns to evade detection; the README explicitly cannot guarantee Google won't detect or flag it and recommends a dedicated account.
  • Documents must be manually uploaded to NotebookLM and notebooks must be shared publicly; no test suite is evident in the repository.

How do you install this skill?

In a terminal:

  1. mkdir -p ~/.claude/skills
  2. cd ~/.claude/skills
  3. git clone https://github.com/PleasePrompto/notebooklm-skill notebooklm
  4. Open Claude Code and ask: "What are my skills?"

On first use, the skill automatically creates a .venv, installs dependencies and Chrome. Note: local Claude Code only — the web UI sandbox has no network access and cannot run it. No other installation methods are documented.

How do you use this skill?

  1. Say "Set up NotebookLM authentication" in Claude Code; a Chrome window opens for manual Google login (browser must be visible; one-time only).
  2. Create a notebook at notebooklm.google.com, upload documents (PDFs, Google Docs, websites, YouTube, etc.), and copy the link via ⚙️ Share → Anyone with link.
  3. Say "Add [link] to my NotebookLM library" (Claude can use Smart Add — querying the notebook to discover its content and metadata — or you supply name/description/topics manually).
  4. Ask questions directly, e.g. "What does my React docs say about hooks?" — Claude selects the notebook and returns grounded answers; if information is incomplete, it asks follow-ups as prompted, then synthesizes.

Related skills