Sandbox
@claude-world/notebooklm-skill

Claude Code skill and NotebookLM MCP server

`notebooklm-skill` gives one JSON-first interface for Google NotebookLM across CLI, pipelines, and MCP tools. It creates notebooks from URLs, text, and files, runs grounded research, and generates downloadable artifacts like slides, reports, audio, and data tables.

455 stars57 forksPythonUpdated 2mo ago
Who it's for

Builders who want their agent to research from sources and turn that research into drafts and artifacts.

What it delivers

You can move from source material to grounded content without redoing the same research inside each tool.

What it does

Notebook CRUD and grounded chat

Create notebooks from URLs, raw text, and local files, then ask questions with citation metadata.

Research pipelines

Run end-to-end flows such as research-to-article, research-to-social, batch-digest, and generate-all.

MCP tool set

Expose notebook operations through a 13-tool FastMCP server for Claude Code, Cursor, and other MCP clients.

Artifact generation and download

Generate or download NotebookLM outputs such as audio, video, slides, reports, quizzes, flashcards, mind maps, infographics, and data tables.

Profile-aware auth and skill install

Manage NotebookLM login profiles and install the Claude Code skill with the included installer.

How to get it

  1. 1The installer creates a dedicated virtual environment, installs Chromium, links five…
    git clone https://github.com/claude-world/notebooklm-skill.git
    cd notebooklm-skill
    ./install.sh
    
    notebooklm-auth setup
    notebooklm-skill list
  2. 2Direct upstream login is also available
    uvx --from notebooklm-py notebooklm login
  3. 3To use the locally installed Google Chrome instead of bundled Chromium
    notebooklm-auth setup --browser chrome --fresh

README

notebooklm-skill

Source-grounded NotebookLM automation for terminals and AI agents.

CI PyPI Python License: MIT

繁體中文

notebooklm-skill gives humans and MCP clients one consistent interface for Google NotebookLM. It creates notebooks from URLs, raw text, and local files; asks grounded questions with citation metadata; completes fast or deep web research; and generates or downloads NotebookLM artifacts.

The project is built around notebooklm-py 0.7.x and includes:

  • a JSON-first core CLI;
  • five end-to-end research pipelines;
  • a 13-tool FastMCP server;
  • profile-aware authentication and Skill installers;
  • one shared compatibility layer, so CLI, pipelines, and MCP use the same behavior.

This is an unofficial integration with NotebookLM's web API. Google can change the service, availability, quotas, or artifact behavior without notice.

Quick start

Isolated source install

The installer creates a dedicated virtual environment, installs Chromium, links five commands into ~/.local/bin, and installs the Claude Code Skill using the standard directory layout.

git clone https://github.com/claude-world/notebooklm-skill.git
cd notebooklm-skill
./install.sh

notebooklm-auth setup
notebooklm-skill list

Ensure ~/.local/bin is on PATH.

PyPI or uvx

# Persistent virtual environment
python3 -m venv .venv
source .venv/bin/activate
python -m pip install notebooklm-skill
python -m playwright install chromium
notebooklm-auth setup

# Or run without a persistent install
uvx --from notebooklm-skill notebooklm-auth setup
uvx --from notebooklm-skill notebooklm-skill list

Direct upstream login is also available:

uvx --from notebooklm-py notebooklm login

Sessions are profile-aware. Select one with --profile NAME before a CLI subcommand, or set NOTEBOOKLM_PROFILE.

To use the locally installed Google Chrome instead of bundled Chromium:

notebooklm-auth setup --browser chrome --fresh

Core CLI

All successful commands print structured JSON to stdout. Diagnostics go to stderr; authentication errors return exit code 4 and argument errors return exit code 2.

# Mixed-source ingestion with truthful per-source outcomes
notebooklm-skill create \
  --title "Research" \
  --sources https://example.com/article \
  --files ./paper.pdf \
  --text-sources "Interview notes" \
  --strict

notebooklm-skill ask \
  --notebook "Research" \
  --query "Which conclusions have the strongest evidence?"

notebooklm-skill research \
  --notebook "Research" \
  --query "Recent independent evaluations" \
  --mode deep --max-sources 10

notebooklm-skill generate \
  --notebook "Research" \
  --type slides --lang zh-TW \
  --output ./output/deck.pptx --output-format pptx

notebooklm-skill list-artifacts --notebook "Research" --type slides

Commands resolve an exact ID, unique title, or unique title substring. Use IDs for repeatable automation. Deletes require --yes; downloads refuse existing files or symlinks unless an explicit safe overwrite is requested with --force.

Artifact types

TypeDefault downloadNotes
audioM4Adeep-dive, brief, critique, or debate
videoMP4explainer/brief and multiple visual styles
cinematicMP4cinematic video workflow
slidesPDFPDF or PPTX
reportMarkdownbriefing, study guide, blog, or custom
study-guideMarkdownreport shortcut
quizJSONJSON, Markdown, or HTML
flashcardsJSONJSON, Markdown, or HTML
mind-mapJSONimmediate generation result
infographicPNGorientation, detail, and style options
data-tableCSVstructured extraction

Use notebooklm-skill generate --help for the live option matrix. Long-running generations support --no-wait, and later downloads can select --artifact-id.

Pipelines

notebooklm-pipeline research-to-article \
  --sources https://example.com/a https://example.com/b \
  --title "Evidence review" --audience "engineers"

notebooklm-pipeline research-to-social \
  --files ./brief.pdf --platform linkedin --variants 3

notebooklm-pipeline batch-digest \
  --rss https://example.com/feed.xml --max-entries 20 --qa-count 5

notebooklm-pipeline generate-all \
  --files ./paper.pdf --types audio slides report mind-map \
  --output-dir ./output --artifact-concurrency 2

trend-to-content requires the optional trend-pulse command. Pipelines return drafts and local artifacts; they do not publish to social platforms or remote CMSs.

MCP server

The default stdio transport is suitable for Claude Code, Cursor, and other MCP clients:

{
  "mcpServers": {
    "notebooklm": {
      "command": "uvx",
      "args": ["--from", "notebooklm-skill", "notebooklm-mcp"]
    }
  }
}

The 13 tools cover notebook CRUD, mixed sources, grounded chat, summaries, artifact generation/list/download, full research lifecycles, research pipelines, and trend research. Notebook deletion requires confirm=true.

Optional HTTP mode is deliberately loopback-only:

notebooklm-mcp --http --host 127.0.0.1 --port 8765

Do not expose it directly to a network. See SECURITY.md.

Additional commands

CommandPurpose
notebooklm-authSetup, verify, or clear a selected auth profile
notebooklm-install-skillInstall SKILL.md for a user or project, with safe backups
notebooklm-install-skill --scope project
notebooklm-auth --profile work verify

Development

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e '.[dev]'
ruff check .
ruff format --check .
mypy scripts mcp_server
pytest --cov --cov-report=term-missing
python -m build
twine check dist/*

More detail: setup guide, Skill instructions, API compatibility notes, and changelog.

License

MIT

Files in the repo

Repository payload22 top-level entries
  • .devcontainer
  • .github
  • docs
  • examples
  • mcp_server
  • references
  • scripts
  • tests
  • .env.example
  • .gitignore
  • .mcp.json
  • AGENTS.md
  • CHANGELOG.md
  • install.sh
  • LICENSE
  • MANIFEST.in
  • pyproject.toml
  • README.md
  • README.zh-TW.md
  • requirements.txt
  • SECURITY.md
  • SKILL.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More skills

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.

117k
1 add
Vincentwei1021/
anything2explainer

Topic in, narrated explainer video out. A Claude Code / Codex skill that turns any topic into a black-canvas motion-graphics explainer video with TTS voiceover, subtitles and a chapter progress bar. Chinese or English; every frame drawn in code with Remotion.

666

Open-source AI job search: scan job portals, evaluate listings into a structured A-H report with a global 1-5 score, tailor your CV, track applications — runs locally in your AI coding CLI (Claude Code, Codex, OpenCode, Antigravity…)

71k

Agent skill for beautiful, verifiable architecture, workflow, sequence, data-flow, and lifecycle diagrams—self-contained HTML with motion and crisp export.

57k
ayghri/
i-have-adhd

A skill to stop your coding agent from burying the answer. ADHD-friendly output.

38k