Writing & Content

NotebookLM Source Research

Query NotebookLM in Claude Code for citation-backed answers grounded in your uploaded documents.

42/ 100
Not recommended

Current benefit does not outweigh risk or uncertainty.

See how it was scored ↓
Works as-is in
Claude Code
Stars
★ 2.4k
Last updated
14d ago
License
MIT
notebooklmsource-grounded-researchcitation-backed-answersdocument-query
+3google-chromebrowser-automationpython

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

NotebookLM Source Research is the blog-notebooklm skill in the claude-blog repository. It queries Google NotebookLM notebooks built from user-uploaded documents, manages the notebook library, and handles Google authentication. It can be invoked through /blog notebooklm or used internally by blog-write and blog-researcher as Tier 1 research. When authentication or querying is unavailable internally, it fails silently so the writing workflow can continue with WebSearch.

The skill runs authentication, query, discovery, and notebook-management scripts through scripts/run.py. It checks authentication, resolves a notebook by URL, ID, or active-library selection, submits questions to NotebookLM, and returns answers sourced from uploaded documents. Each question opens a new headless browser session and closes it afterward. Supported operations include notebook discovery, library listing, adding, searching, activation, removal, authentication status, reauthentication, cleanup, and JSON query output. It stores library metadata, authentication information, and browser state inside the skill directory.

Good fit
  • A writer needs research answers grounded in uploaded reports, interviews, or other primary documents before drafting an article.
  • A marketing team wants blog-write or blog-researcher to use its own NotebookLM materials as Tier 1 research data.
  • A user has a NotebookLM URL but does not yet know its contents and wants to discover and catalog it first.
  • A user manages several research notebooks and needs keyword search, active-notebook selection, or removal of outdated entries.

How do you install this skill?

Before you use it
  • Authentication state contains Google cookies and browser profile data; users should be warned that these are sensitive and should avoid untrusted notebook URLs.
  • “Zero hallucination risk” and Tier 1 citation guarantees are strong claims not sufficiently established by the static evidence; outputs still require human verification.
  • Google NotebookLM, Chrome, Patchright, and UI selectors may fail or change; reachability of the core service from mainland-China networks is unproven.
  • The --force cleanup option skips confirmation and can delete authentication, session, and library data; the irreversible-risk warning should be prominent.
Before you start
Your agent needs
  • Shell / CLI
  • Network access
  • Local filesystem
  • MCP Server
Install first
  • Python 3.11+
  • Google Chrome
  • Google account with NotebookLM access

The source identifies the skill at skills/blog-notebooklm/SKILL.md but does not document a standalone installation path. It is installed as part of the claude-blog collection. The README documents collection installation from the public repository with git clone https://github.com/AgriciDaniel/claude-blog followed by inspection and execution of the installer, or installation through the Claude Code plugin marketplace. Restart Claude Code after installation.

Generic route: install into Claude Code manually (macOS / Linux)
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/AgriciDaniel/claude-blog.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/blog-notebooklm" ~/.claude/skills/
rm -rf "$tmp"

Generated from the source repository and skill path; it copies only this skill's folder. If the author's install steps above differ, follow those first. To scope it to one project, replace ~/.claude/skills with that project's .claude/skills.

How do you use this skill?

Run /blog notebooklm setup once and complete the Google login in the visible browser. Then use /blog notebooklm ask <question> to query the active notebook, /blog notebooklm discover <URL> to inspect and catalog a notebook, /blog notebooklm library list to list notebooks, /blog notebooklm library add <URL> to add one, /blog notebooklm status to check authentication, or /blog notebooklm cleanup to clean browser state. Script calls must use python3 scripts/run.py [script]; the source explicitly says not to run scripts directly.

What are this skill's strengths and limitations?

Pros
  • Answers are restricted to user-uploaded documents and are positioned as Tier 1 research from primary user sources.
  • Provides querying, notebook discovery, library management, and authentication workflows.
  • Can run directly or serve blog-write and blog-researcher internally.
  • Missing authentication or query failure does not block the internal writing workflow; it falls back silently.
Limitations
  • Requires a Google account with NotebookLM access, Python 3.11+, and Google Chrome.
  • Requires one-time manual Google login in a visible browser.
  • There is no session persistence; each question starts a new browser session and incurs browser overhead.
  • Free Google accounts have a stated limit of 50 queries per day, and users must upload documents manually.
  • The source limits it to local Claude Code rather than the web UI and does not document standalone installation.

How does this skill compare with similar options?

Side by side with related skills; every score comes from the same FSRS standard.

Skill FS score Stars Last updated License
NotebookLM Source Research this page 42 · Not recommended ★ 2.4k 14d ago MIT
Blog Discourse Research 54 · Use with care ★ 2.4k 14d ago MIT
Blog Decay Analyzer 44 · Not recommended ★ 2.4k 14d ago MIT
SEO Content Audit Skill 48 · Use with care ★ 2.8k 8mo ago MIT
Claude Blog Brain 53 · Use with care ★ 2.4k 14d ago MIT

How did FollowSkills review this skill?

FollowSkills review · FSRS-2.0
Not recommended
42/ 100 5-point scale 2.1 / 5
The upstream repository has new commits since this review. The score still applies to the reviewed revision shown and may not cover the latest changes.
1Trust13 / 25 · 2.6/5

The evidence shows an isolated virtual environment, bounded question length, restrictive permissions for browser state and auth files, and preview-plus-confirmation cleanup. However, the skill stores and injects Google cookies, uses an anti-detection browser against an external service, and can navigate to a user-supplied NotebookLM URL. Explicit data-flow disclosure, domain restriction, per-query confirmation, and recovery controls are incomplete, so points are deducted.

2Reliability6 / 20 · 1.5/5

The evidence shows a unified run.py wrapper, authentication checks, timeouts, stable-text polling, resource cleanup, and error returns. However, authentication is treated as valid when a state file exists, dependency installation and browser selection are inconsistent, NotebookLM selectors are vulnerable to UI changes, and some failures collapse to None without detailed user guidance. No key-path test coverage is shown, so points are deducted. Static calibration caps this at 10.

3Adaptability6 / 15 · 2.0/5

The evidence provides fairly clear triggers, commands, parameters, local Claude Code boundaries, and silent fallback for internal use. However, Chinese-language triggering or output is not documented, and the core function depends on Google NotebookLM, Chrome, interactive Google login, and reachable overseas services. Boundary handling for missing active notebooks is also largely limited to CLI guidance, so points are deducted.

4Convention9 / 15 · 3.0/5

The evidence shows layered documentation with quick reference, prerequisites, parameters, troubleshooting, limitations, MIT licensing, author and version metadata, and storage/gitignore notes. However, maintenance ownership, update path, and changelog information are incomplete in the selected skill materials, the metadata source does not match the repository identity, and several installation, dependency, and platform assumptions remain implicit, so points are deducted.

5Effectiveness5 / 15 · 1.7/5

The evidence indicates that the core workflow can query a selected notebook and return text or JSON, manage a notebook library, and fall back silently for internal callers. However, actual execution is not established by the source review; the promised citation format is mostly procedural, while the script does not explicitly extract source titles or produce a bibliography. Browser startup overhead, rate limits, and manual authentication also reduce direct utility, so points are deducted. Static calibration caps this at 7.

6Verifiability3 / 10 · 1.5/5

The evidence contains auditable Python implementations, argument definitions, failure paths, and storage documentation, but it does not show a test suite, CI result, or third-party reproduction evidence covering this skill's key paths. Repository-level test claims cannot substitute for skill-specific coverage, so points are deducted. Static calibration caps this at 5.

1 2 3 4 5 6

Open a dimension to read why it scored that way

Reviewed Jul 20, 2026 Reviewed revision 49842ea9e7b9 Review evidence[1][2][3][4][5][6][7][8][9][10]

Evidence confidence:Low — Mostly static review, author material or a limited demo; useful for discovery, not high-risk decisions.

See the full review method →

FAQ

Does it query arbitrary web pages?
The source describes queries against documents uploaded by the user to NotebookLM; it does not state that the skill directly crawls arbitrary web pages.
What happens if Google authentication is missing?
A direct invocation guides the user to run /blog notebooklm setup. An internal invocation from blog-write or blog-researcher returns silently and allows WebSearch-based research to continue.
How should its answers be cited?
The skill requires using the returned source title for the inline citation and the notebook URL plus retrieval date for the bibliography entry.

More skills from this repository

All from AgriciDaniel/claude-blog

Writing & Content

Blog Discourse Research

Turn the last 30 days of public discussion into usable content insight.

★ 2.4k FS 54 Use with care 14d ago
Writing & Content

Blog Decay Analyzer

Find declining pages in Google Search Console exports and choose whether to refresh, consolidate, prune, or investigate query shifts.

★ 2.4k FS 44 Not recommended 14d ago
Writing & Content

Claude Blog Brain

A source-traceable Obsidian workspace for planning, creating, optimizing, and managing blog content.

★ 2.4k FS 53 Use with care 14d ago
Writing & Content

Blog Google: Google Data for Blog Performance

Use Google APIs to measure blog speed, indexing, search visibility, traffic, and keywords.

★ 2.4k FS 47 Use with care 14d ago
Writing & Content

Blog GEO Citation Audit

Audit whether blog content is ready to be cited by ChatGPT, Perplexity, and Google AI Overviews.

★ 2.4k FS 55 Use with care 14d ago
Writing & Content

Blog Cluster Engine

Plan and execute SERP-informed, internally linked content clusters from one seed keyword.

★ 2.4k FS 53 Use with care 14d ago
Writing & Content

Blog Analyzer

Audit blog quality, SEO, trust signals, and AI citation readiness with a consistent 100-point score.

★ 2.4k FS 51 Use with care 14d ago
Writing & Content

Blog Fact-Check

Verifies statistics, citations, and factual claims in blog posts.

★ 2.4k FS 49 Use with care 14d ago
Writing & Content

Blog Strategy Architect

Plans blog positioning, topic clusters, audience focus, search growth, and AI-citation opportunities.

★ 2.4k FS 49 Use with care 14d ago
Writing & Content

Blog Brief Planner

Build research-led blog briefs designed for Google visibility and AI citation readiness.

★ 2.4k FS 44 Not recommended 14d ago
Writing & Content

Blog Audit: Full-Site Health Review

Scan an entire blog for quality, SEO, link, freshness, cannibalization, and AI-citation issues.

★ 2.4k FS 41 Not recommended 14d ago
Writing & Content

Multilingual Blog Publisher

Turn one blog topic into localized, SEO-ready language versions and hreflang assets in a single workflow.

★ 2.4k FS 55 Use with care 14d ago
Writing & Content

Blog Calendar Editorial Planner

Turn blog topics, refresh cycles, and distribution timing into an actionable editorial calendar.

★ 2.4k FS 53 Use with care 14d ago
Design & Frontend

Blog Image Creative Director

Generate and edit publication-ready blog visuals with Gemini-powered prompt orchestration.

★ 2.4k FS 53 Use with care 14d ago
Writing & Content

FLOW Blog Workflow

An evidence-led Find, Optimize, Win workflow for selecting and applying stage-specific blog prompts.

★ 2.4k FS 52 Use with care 14d ago
Data & Analysis

Blog Chart SVG Generator

Creates accessible, dark-mode-compatible inline SVG charts for blog posts.

★ 2.4k FS 51 Use with care 14d ago
Writing & Content

Blog Locale Audit

Audit multilingual blog translations, SEO parity, hreflang, and freshness before publication.

★ 2.4k FS 50 Use with care 14d ago
Writing & Content

Blog Repurpose

Turn one blog post into platform-ready social, email, video, and community content.

★ 2.4k FS 50 Use with care 14d ago
Writing & Content

Blog Taxonomy Manager

Extract, audit, and sync blog tags and categories across major CMS platforms.

★ 2.4k FS 50 Use with care 14d ago
Writing & Content

Blog Audio Narrator

Turn blog posts into multilingual narration, full read-alouds, or two-speaker podcast episodes.

★ 2.4k FS 49 Use with care 14d ago

Related skills