Skip to content
Automation
MCP

notebooklm

Answers questions and writes summaries grounded only in documents a user has uploaded.

From plugin
notebooklm-skill
4871 skill1 MCP

Claude Code

$ claude mcp add notebooklm -- uvx --from notebooklm-skill notebooklm-mcp

Security report

Found

Low risk

  • Known flaws

    None known

  • Signed build

    Yes

    Build provenance published

  • Maintained

    Oct 21, 2026

    Last push

  • Licence

    MIT

  • Runs as

    uvx

    On your machine

  • Deprecated

    No

Signals from public registries, not an audit. Checked Nov 12, 2026.

notebooklm-skill 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 on notebooklm-py 0.8.x and FastMCP 4 (MCP Python SDK 2.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.

Requirements

  • Python 3.10 or newer (CI covers 3.10 through 3.15)
  • a Google account with access to NotebookLM
  • Chromium for the one-time browser login (installed by ./install.sh), or a local Google Chrome or Microsoft Edge
  • optional: the trend-pulse command for trend workflows, and ffmpeg plus Poppler for scripts/make_video.sh

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, or vertical short; multiple visual styles
cinematicMP4cinematic video workflow
slidesPDFPDF or PPTX
reportMarkdownbriefing, study guide, blog, or custom
study-guideMarkdownreport shortcut
quizJSONJSON, Markdown, or HTML; fewer, standard, or more questions
flashcardsJSONJSON, Markdown, or HTML; fewer, standard, or more cards
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

@claude-world
Ships withnotebooklm-skill

Source-grounded NotebookLM automation for terminals and AI agents. notebooklm-skill gives humans and MCP clients one consistent interface for Google NotebookLM.

4871 skill1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
487
Star history of claude-world/notebooklm-skill on GitHub, a chart by star-history.com

More MCP servers from other plugins.

playwright

playwright

MCP

Drives a real browser so the agent can open pages, click, fill forms and read what actually rendered.

windmill12d18k
@windmill-labs@windmill-labsInstall MCP
pinchtab

pinchtab

MCP

Ships with pinchtab: High-performance browser automation bridge and multi-instance orchestrator with advanced stealth injection…

@pinchtab@pinchtabInstall MCP
open-computer-use

open-computer-use

MCP

Ships with open-computer-use: open-computer-use is an open-source Computer Use service wrapped as MCP. Any AI agent or MCP client…

@ifuryst@ifurystInstall MCP
atlas

atlas

MCP

Ships with babysitter: Enforce obedience on agentic workforces. Manage extremely complex workflows through deterministic,…

babysitter10d1.9k
@a5c-ai@a5c-aiInstall MCP

Questions about notebooklm.

Which coding agents can use notebooklm?
notebooklm works in any agent that reads an MCP config file: Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf. Each agent reads it from its own file; this page names the file for each one.
How do I add notebooklm to Claude Code?
Run this in your terminal: claude mcp add notebooklm -- uvx --from notebooklm-skill notebooklm-mcp
Is notebooklm safe to install?
Low risk. Signals from public registries, not an audit.