Releases: jacob-bd/notebooklm-mcp-cli
Releases · jacob-bd/notebooklm-mcp-cli
v0.5.19
v0.5.18
What's Changed
Added
- WSL2 Authentication Support (PR #138) —
nlm login --wsllaunches Windows Chrome from WSL2 for seamless auth. Thanks to @kylebrodeur! - WSL2 Diagnostics —
nlm doctornow detects WSL2 environments.
Fixed
- Thread-Safety for Concurrent MCP Tool Calls (PR #135) — Added threading.Lock to BaseClient protecting mutable state from race conditions. Thanks to @xiangyuwang1998!
- Restored CDP WebSocket Timeout — Re-applied 30-second timeout removed during WSL2 merge.
- Restored Port Map File Permissions — Re-applied chmod 0o600 removed during WSL2 merge.
Full Changelog: v0.5.17...v0.5.18
v0.5.17
Security
- CDP origin restriction — Chrome debug port now only accepts connections from
localhost/127.0.0.1(was*) - Base URL allowlist —
NOTEBOOKLM_BASE_URLvalidated against Google domains only (HTTPS required) - Download path traversal protection — blocks writes to
.ssh,.aws,.gnupg, and other sensitive directories - File permission hardening — auth files and storage dir use
0o600/0o700 - CDP WebSocket timeout — 30s timeout prevents infinite hangs on stale connections
Thanks to @wccheung11011001 for the security audit (PR #133)!
New Features
- Custom video style prompts (PR #131) —
--style custom --style-prompt "your description"for CLI,video_style_promptfor MCP. Style prompt is also returned in studio status. Thanks to @agarwalvipin! - Audio source support (PR #134) —
nlm source add --filenow handles audio uploads (m4a, wav, mp3). AddsSOURCE_TYPE_AUDIO = 10, fixes transient status 3 handling for audio, and adds--wait-timeoutflag (default 600s) for long recordings. Thanks to @stanleykao72! - CONTRIBUTING.md — Contributor guide with architecture rules, API capture workflow, testing requirements, and security guidelines
Bug Fixes
build_labeldata loss —Profile.to_dict()was silently dropping thebuild_labelfield on save- Ruff lint/format fixes — B904 exception chaining, format violations across 4 files
Upgrade
uv tool install notebooklm-mcp-cli --upgrade
# or: pip install --upgrade notebooklm-mcp-cliThen restart your MCP client to pick up the changes.
Full changelog: https://github.com/jacob-bd/notebooklm-mcp-cli/blob/main/CHANGELOG.md
v0.5.16
Full Changelog: v0.5.15...v0.5.16
v0.5.15
Full Changelog: v0.5.14...v0.5.15
v0.5.14
Full Changelog: v0.5.13...v0.5.14
v0.5.13
Fixed
- Python 3.13 Crash in
nlm skill(Issue #122) — Fixed a crash when runningnlm skill installon Python 3.13, which was caused by using@click.option(type=Literal["user", "project"]). Replaced with standard string validation. Thanks to @zhaoguoqiao for reporting! - CDP Proxy Bypass (Issue #119) — The
httpxHTTP2 client was honoring system proxy settings even for the internal127.0.0.1CDP WebSocket acquisition call (http://127.0.0.1:9222/json). This caused connections to fail on machines running proxies. Restored theproxy=Noneargument to explicitly bypass proxies for local loopback connections. Thanks to @sjs33 for discovering and reporting this! research_statusPolling Loop (PR #120) — Restored the internal polling loop forresearch_statuswhenmax_waitis set. Previously, the parameters were ignored after a refactor, and it always returned after a single check. The tool now correctly blocks and polls until the research is completed or times out. Thanks to @byingyang for the excellent bug report, full implementation, and test suite!
v0.5.12
Full Changelog: v0.5.11...v0.5.12
v0.5.11
Added
- Enterprise / Google Workspace support (PR #114) — Configurable base URL via
NOTEBOOKLM_BASE_URLenvironment variable. Set tohttps://notebooklm.cloud.google.com(or your organization's URL) to use NotebookLM with managed Workspace accounts. All API calls, authentication, file uploads, and URL detection are updated to use the configured base URL. Default remainshttps://notebooklm.google.comfor personal accounts (fully backward compatible). Thanks to @Robiton for this contribution!
Documentation
- Added "Enterprise / Google Workspace" section to
docs/AUTHENTICATION.md - Added
NOTEBOOKLM_BASE_URLto environment variables table indocs/MCP_GUIDE.md
v0.5.10
Bug Fixes
- Quiz/Flashcard
focus_promptignored (#113) — Fixed off-by-one error in RPC payload:focus_promptwas at index[1]instead of[2]. Bothcreate_quizandcreate_flashcardsnow use the correct layout. Thanks to @ojsed! source_idsparameter fails with string input (#111) — MCP clients (Claude Desktop, Cursor, etc.) serialize list params as JSON strings or comma-separated values. Addedcoerce_list()helper to normalize all input forms. Applied to 6 list parameters across 4 MCP tool files. Thanks to @Carlos-OL!- Non-ASCII characters in JSON output (#112) — Added
ensure_ascii=Falsetojson.dumps()across core and CLI layers. Thanks to @rujinlong!
Added
- 13 new unit tests for
coerce_listhelper (total: 660 tests)