Install
$ agentstack add mcp-claude-world-notebooklm-skill Open-source listing, not yet scanned by AgentStack. Follow the source repository for install instructions.
Security review
⚠ Flagged1 finding(s); flagged for manual review. · v0.1.0 How review works →
- • Prompt-injection patterns
- • Secret / credential exfiltration
- • Dangerous shell & filesystem operations
- • Untrusted network calls
- • Known-malicious package signatures
- high Destructive filesystem operation.
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
notebooklm-skill
> NotebookLM does the research, Claude writes the content.
The only tool that connects trending topic discovery → NotebookLM deep research → AI content creation → multi-platform publishing. Works as a Claude Code Skill or standalone MCP Server.
[](LICENSE)
[繁體中文版 README](README.zh-TW.md)
Demo
| Language | YouTube | Slides | |----------|---------|--------| | English | Watch | 6 pages, auto-generated | | 繁體中文 | Watch | 5 pages, auto-generated |
All slides, podcasts, and videos were generated by NotebookLM using this tool.
What is this?
notebooklm-skill bridges NotebookLM's research capabilities with Claude's content generation. Feed it URLs, PDFs, or trending topics — it creates a NotebookLM notebook, runs deep research queries, and hands structured findings to Claude for polished output: articles, social posts, newsletters, podcasts, or any format you need.
Built on notebooklm-py v0.3.4 — pure async Python, no OAuth setup needed.
Sources (URLs, PDFs) NotebookLM Claude Artifacts & Platforms
+-----------------+ +------------------+ +-----------------+ +----------------------+
| Web articles |--->| Create notebook |--->| Draft article |--->| Blog / CMS |
| Research papers | | Add sources | | Social posts | | Threads / X |
| YouTube videos | | Ask questions | | Newsletter | | Newsletter |
| Trending topics | | Extract insights | | Any format | | Any platform |
+-----------------+ +------------------+ +-----------------+ +----------------------+
Phase 1 Phase 2 Phase 3 Phase 4
|
v
+------------------+
| Generate artifacts|
| Audio (podcast) |
| Video |
| Slides |
| Report |
| Quiz |
| Flashcards |
| Mind map |
| Infographic |
| Data table |
| Study guide |
+------------------+
Phase 2b
Quick Start
# Option A: uvx (recommended — zero install)
uvx notebooklm-skill --help
uvx --from notebooklm-skill notebooklm-mcp # Start MCP server
# Option B: pip install from PyPI
pip install notebooklm-skill
# Option C: Install from source
git clone https://github.com/claude-world/notebooklm-skill.git
cd notebooklm-skill && pip install .
# Option D: One-line install (pip + Playwright + Claude Code Skill)
git clone https://github.com/claude-world/notebooklm-skill.git
cd notebooklm-skill && ./install.sh
# Authenticate with Google (one-time, opens browser)
uvx notebooklm login # if using uvx
# or: python3 -m notebooklm login # if using pip install
# Use commands (uvx or direct — both work the same)
notebooklm-skill create --title "My Research" --sources https://example.com/article
notebooklm-skill ask --notebook "My Research" --query "What are the key findings?"
notebooklm-skill podcast --notebook "My Research" --lang en --output podcast.m4a
notebooklm-pipeline research-to-article --sources https://example.com --title "Topic"
notebooklm-mcp # Start MCP server (stdio mode)
Or use scripts directly: python scripts/notebooklm_client.py create ...
See [docs/SETUP.md](docs/SETUP.md) for the full setup guide.
Authentication
notebooklm-py uses browser-based Google login. No API keys, no OAuth Client ID, no Google Cloud project needed.
# One-time login (opens Chromium, sign in with Google)
uvx notebooklm login # if using uvx
python3 -m notebooklm login # if using pip install
| Step | Command | What happens | |------|---------|-------------| | Login | uvx notebooklm login | Opens Chromium, user logs into Google | | Session storage | Automatic | Saved to ~/.notebooklm/storage_state.json | | Subsequent use | All CLI / MCP commands | Reads saved session, pure HTTP calls | | Verify | uvx notebooklm-skill list | Lists notebooks to confirm auth works | | Clear | rm -rf ~/.notebooklm | Removes stored session |
Session typically lasts weeks. Re-run login if you get authentication errors.
Two Ways to Use
| | Claude Code Skill | MCP Server | |---|---|---| | Best for | Claude Code users who want NotebookLM in their workflow | Any MCP-compatible client (Cursor, Gemini CLI, etc.) | | Setup | Copy skill to .claude/skills/ | Add server to MCP config | | Invocation | Claude auto-detects when relevant | Tools appear in client tool list | | Config | SKILL.md + .env | .mcp.json + .env | | Requirements | Python 3.10+, notebooklm-py | Python 3.10+, notebooklm-py |
Features
| Feature | Description | Status | |---|---|---| | Notebook CRUD | Create, list, delete notebooks | Available | | Source ingestion | Add URLs, PDFs, YouTube links, plain text | Available | | Research queries | Ask questions against notebook sources with citations | Available | | Structured extraction | Get key facts, arguments, timelines | Available | | Content generation | Use research output as context for Claude | Available | | Batch operations | Process multiple sources or queries at once | Available | | trend-pulse integration | Auto-discover trending topics to research | Available | | threads-viral-agent integration | Publish research-backed social posts | Available |
Artifact Generation (9 downloadable types)
| Artifact | Format | Description | |---|---|---| | Audio | M4A | AI-generated podcast discussion | | Video | MP4 | Video summary with visuals | | Slides | PDF / PPTX | Presentation deck | | Report | Markdown | Comprehensive written report | | Quiz | JSON / Markdown / HTML | Multiple-choice assessment questions | | Flashcards | JSON / Markdown / HTML | Study flashcard deck | | Mind map | JSON | Visual concept map | | Infographic | PNG | Visual data summary | | Data table | CSV | Structured data extraction | | Study guide | Markdown | Structured learning material |
Most artifacts support language selection (e.g., --lang zh-TW). Exceptions: quiz, flashcards, mind-map.
> Note: NotebookLM returns audio in MPEG-4 (M4A) format, not MP3.
Architecture
+---------------------------------------------------------------+
| notebooklm-skill |
| |
| +---------+ +--------------+ +----------+ +------------+ |
| | Phase 1 | | Phase 2 | | Phase 3 | | Phase 4 | |
| | Collect |->| Research |->| Generate |->| Publish | |
| +---------+ +--------------+ +----------+ +------------+ |
| | | | | |
| +--------+ +-------------+ +-----------+ +-----------+ |
| | URLs | | NotebookLM | | Claude | | Threads | |
| | PDFs | | (via | | Content | | Blog | |
| | RSS | | notebooklm | | Engine | | Email | |
| | Trends | | -py 0.3.4) | | | | CMS | |
| +--------+ | - notebooks | +-----------+ +-----------+ |
| | - sources | | |
| | - chat/ask | +-----------+ |
| | - artifacts | | Artifacts | |
| +-------------+ | audio | |
| | video | |
| | slides | |
| | report | |
| | quiz | |
| | flashcards| |
| | mind-map | |
| | infographic| ⚠️ no download |
| | data-table| |
| | study-guide| |
| +-----------+ |
| |
| +-----------------------------------------------------------+ |
| | Interfaces | |
| | +-- scripts/ CLI tools (notebooklm-py direct) | |
| | +-- mcp_server/ MCP protocol server | |
| | +-- SKILL.md Claude Code skill definition | |
| +-----------------------------------------------------------+ |
+---------------------------------------------------------------+
^ ^
| |
+-----------+ +-----------+
|trend-pulse| |threads- |
|(optional) | |viral-agent|
+-----------+ |(optional) |
+-----------+
Usage Examples
1. Research to Article
python scripts/pipeline.py research-to-article \
--sources "https://arxiv.org/abs/2401.00001" \
"https://blog.example.com/ai-agents" \
--title "AI Agent Survey"
2. Research to Social Posts
python scripts/pipeline.py research-to-social \
--sources "https://example.com/ai-news" \
--platform threads \
--title "AI News This Week"
3. Trending Topics to Content
python scripts/pipeline.py trend-to-content \
--geo TW \
--count 5 \
--platform threads
4. RSS Batch Digest
python scripts/pipeline.py batch-digest \
--rss "https://example.com/feed.xml" \
--title "Weekly AI Digest"
5. Generate All Artifacts
python scripts/pipeline.py generate-all \
--sources "https://example.com/article" \
--title "Research" \
--output-dir ./output \
--language zh-TW
6. Slides + Podcast → YouTube Video
Combine NotebookLM-generated slides and podcast into a YouTube-ready video:
# Generate slides and podcast
python scripts/notebooklm_client.py generate --notebook "Research" --type slides
python scripts/notebooklm_client.py podcast --notebook "Research" --lang en --output podcast.m4a
python scripts/notebooklm_client.py download --notebook "Research" --type slides --output slides.pdf
# Convert PDF to PNG + compose video
./scripts/make_video.sh slides.pdf podcast.m4a output.mp4
Pipeline Workflows
| Workflow | Input | Output | Steps | |---|---|---|---| | research-to-article | URLs, text | Article draft JSON | Create notebook → 5 research questions → article draft | | research-to-social | URLs, text | Social post draft | Create notebook → summarize → platform-specific post | | trend-to-content | Geo, count | Content per trend | Fetch trends → create notebooks → research → draft | | batch-digest | RSS URL | Newsletter digest | Fetch RSS → create notebook → digest + Q&A | | generate-all | URLs, text | Audio, video, PDF, etc. | Create notebook → generate all artifacts → download |
MCP Server Setup
Add to your project's .mcp.json:
{
"mcpServers": {
"notebooklm": {
"command": "uvx",
"args": ["--from", "notebooklm-skill", "notebooklm-mcp"]
}
}
}
Or if you installed via pip install notebooklm-skill:
{
"mcpServers": {
"notebooklm": {
"command": "notebooklm-mcp"
}
}
}
Works with Claude Code, Cursor, Gemini CLI, and any MCP-compatible client.
Claude Code Skill Setup
# Option A: Symlink (auto-updates with git pull)
./install.sh
# Option B: Manual copy
mkdir -p .claude/skills/notebooklm
cp /path/to/notebooklm-skill/SKILL.md .claude/skills/notebooklm/
cp /path/to/notebooklm-skill/scripts/*.py .claude/skills/notebooklm/scripts/
cp /path/to/notebooklm-skill/requirements.txt .claude/skills/notebooklm/
# Authenticate (one-time)
python3 -m notebooklm login
Claude will automatically detect the skill when you ask about research, NotebookLM, or content creation.
API Reference
CLI Commands (11)
| Command | Description | |---|---| | create | Create a notebook with URL/text sources | | list | List all notebooks | | delete | Delete a notebook | | add-source | Add a source (URL, text, or file) to existing notebook | | ask | Ask a research question (returns answer + citations) | | summarize | Get notebook summary | | generate | Generate an artifact (audio, video, slides, etc.) | | download | Download a generated artifact | | research | Run deep web research | | podcast | Shortcut for generate --type audio (auto-downloads) | | qa | Shortcut for generate --type quiz |
MCP Tools (13)
| Tool | Description | |---|---| | nlm_create_notebook | Create notebook with sources | | nlm_list | List all notebooks | | nlm_delete | Delete a notebook | | nlm_add_source | Add source to existing notebook | | nlm_ask | Ask question (returns answer + citations) | | nlm_summarize | Get notebook summary | | nlm_generate | Generate artifact (9 types, infographic excluded) | | nlm_download | Download generated artifact | | nlm_list_sources | List sources in notebook | | nlm_list_artifacts | List generated artifacts | | nlm_research | Deep web research | | nlm_research_pipeline | Full research pipeline | | nlm_trend_research | Trend → research pipeline |
Integrations
- trend-pulse — Real-time trending topic discovery from 7 sources
- threads-viral-agent — Auto-publish research-backed social posts
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes
- Push and open a Pull Request
# Development setup
git clone https://github.com/claude-world/notebooklm-skill.git
cd notebooklm-skill
pip install -e .
python3 -m notebooklm login
python -m pytest tests/
License
MIT License. See [LICENSE](LICENSE).
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: claude-world
- Source: claude-world/notebooklm-skill
- License: MIT
- Homepage: https://youtu.be/6M3K4sxahdE
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.