AGENTS.md · git:20260315.ab8e234 · 2026-03-15 · sha256 da894e055b7ee6ef
AGENTS.md git:20260315.ab8e234A
Immutable. This exact content is served forever at /api/v1/blob/da894e055b7ee6ef.
# notebooklm-skill > NotebookLM research automation — CLI, MCP server, and Claude Code Skill. ## Overview This project bridges Google NotebookLM's research capabilities with AI content generation. Feed it URLs, PDFs, or trending topics — it creates NotebookLM notebooks, runs deep research, and produces structured output: articles, social posts, podcasts, videos, slides, and more. Built on [notebooklm-py](https://pypi.org/project/notebooklm-py/) v0.3.4 — pure async Python. ## Authentication NotebookLM uses browser-based Google login (no API keys needed): ```bash python3 -m notebooklm login # One-time browser auth python scripts/auth_helper.py verify # Verify session ``` Session stored at `~/.notebooklm/storage_state.json`. Lasts weeks. ## CLI Commands Three global commands are available after `pip install .`: ### `notebooklm-skill` — Core Operations ```bash notebooklm-skill create --title "Research" --sources https://example.com notebooklm-skill list notebooklm-skill ask --notebook "Research" --query "Key findings?" notebooklm-skill generate audio --notebook "Research" --language en notebooklm-skill download audio --notebook "Research" --output podcast.m4a notebooklm-skill delete --notebook "Research" ``` ### `notebooklm-pipeline` — Workflow Orchestration ```bash notebooklm-pipeline research-to-article --sources url1 url2 --title "Topic" notebooklm-pipeline research-to-social --sources url1 --platform threads notebooklm-pipeline trend-to-content --geo TW --count 5 --platform threads notebooklm-pipeline batch-digest --rss https://example.com/feed.xml notebooklm-pipeline generate-all --sources url1 --title "Research" --output-dir ./output ``` ### `notebooklm-mcp` — MCP Server ```bash notebooklm-mcp # stdio mode (Claude Code, Cursor) notebooklm-mcp --http # HTTP mode on port 8765 ``` ## 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 (10 types) | | `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-to-research pipeline | ## Artifact Types (10) audio, video, slides, report, quiz, flashcards, mind-map, infographic, data-table, study-guide ## Project Structure ``` scripts/ CLI wrappers (notebooklm_client.py, pipeline.py) mcp_server/ FastMCP server (server.py, tools.py) SKILL.md Claude Code Skill definition docs/ Setup guides (EN + zh-TW) tests/ Test suite output/ Default output directory ``` ## Output Format All CLI commands output JSON to stdout. Progress messages go to stderr. Use `--output` to save artifacts to files.