This document describes known limitations and potential failure points in the NotebookLM MCP. Since this project uses undocumented internal APIs, certain breakages are expected over time.
bl) ParameterThe bl (build label) parameter is a frontend version identifier required by NotebookLM's batchexecute API. It looks like:
boq_labs-tailwind-frontend_20260219.16_p2
Resolved. The bl value is now auto-extracted from the NotebookLM page during nlm login and during CSRF token refresh. It stays current automatically without manual intervention.
If you need to force a specific value, set the NOTEBOOKLM_BL environment variable:
export NOTEBOOKLM_BL="boq_labs-tailwind-frontend_YYYYMMDD.XX_pN"
The priority order is: env var > auto-extracted > hardcoded fallback.
Authentication uses browser cookies extracted from an active Chrome session. These cookies have a limited lifespan.
Cookies typically expire after 2-4 weeks. Symptoms:
- ValueError: Cookies have expired. Please re-authenticate...
- API calls redirect to Google login page
- Authentication errors on previously working operations
Re-extract fresh cookies using one of these methods:
Option A: nlm login CLI (recommended)
The built-in authentication CLI automatically launches Chrome, navigates to NotebookLM, and extracts cookies:
nlm login
If Chrome is not running, it will be launched automatically. If you're not logged in, the CLI waits for you to complete login in the browser window. Tokens are cached to your profile directory.
Option B: Chrome DevTools MCP
If your AI assistant has Chrome DevTools MCP available:
1. Navigate to notebooklm.google.com in Chrome
2. Use Chrome DevTools MCP to extract cookies from any network request
3. Call save_auth_tokens(cookies=<cookie_header>)
Option C: Manual extraction
1. Open Chrome DevTools on notebooklm.google.com
2. Network tab → find any request → copy Cookie header
3. Set NOTEBOOKLM_COOKIES environment variable
The free tier of NotebookLM has usage limits enforced server-side.
This MCP uses internal, undocumented APIs that Google can change at any time without notice.
wXbhsf for list notebooks) may be renamedNone results from previously working operationsapi_client.pyThe MCP auto-extracts CSRF token (SNlM0e) and session ID (FdrFJe) from the NotebookLM homepage on first use.
ValueError: Could not extract CSRF token from page~/.notebooklm-mcp-cli/debug_page.htmlIf auto-extraction fails:
1. Manually extract tokens from Chrome DevTools Network tab
2. Pass them via save_auth_tokens(cookies=..., request_body=..., request_url=...)
When reporting issues, include: 1. The specific tool/operation that failed 2. The error message (redact any sensitive info) 3. Whether the operation worked before 4. The current date (to correlate with potential Google deployments)