notebooklm-mcp-2026
Provides tools for interacting with Google NotebookLM, enabling listing notebooks, querying notebook content, managing sources, and more.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@notebooklm-mcp-2026Ask NotebookLM: summarize my research notes"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
notebooklm-mcp-2026
Secure MCP server for querying Google NotebookLM notebooks. Designed for use with Claude Code, Cursor, VS Code Copilot, and any MCP-compatible AI assistant.
Watch on YouTube: https://youtu.be/xdI3uEA5rew?si=FkD0sdCZSFFWpjhy
What it does
notebooklm-mcp-2026 gives AI assistants direct access to your Google NotebookLM notebooks. It runs as a local subprocess (stdio transport) — no HTTP server needed. Your AI assistant can list your notebooks, read source content, and ask the NotebookLM AI questions about your sources.
Quick Start
Three commands. Works on macOS, Linux, and Windows.
Step 1: Install
macOS / Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install notebooklm-mcp-2026Windows (PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv tool install notebooklm-mcp-2026Already have pipx? You can use
pipx install notebooklm-mcp-2026instead.
Step 2: Set up
Important: Close Google Chrome completely before running setup. The login process needs to launch Chrome with special flags, which won't work if Chrome is already running.
notebooklm-mcp-2026 setupThis will:
Open Chrome so you can log in to your Google account
Detect which MCP clients you have installed (Claude Code, Cursor, VS Code, etc.)
Automatically configure them
Step 3: Use it
Restart your MCP client and ask your AI assistant:
"List my NotebookLM notebooks"
That's it!
Requirements
Google Chrome (or Chromium) — needed for one-time login
Python 3.11+ — installed automatically if you use
uv
Don't have Chrome?
Download it from google.com/chrome. On Linux, chromium also works.
Don't have Python?
If you used uv to install (recommended), you don't need to install Python separately — uv handles it for you.
If you prefer to install Python manually:
Platform | Command |
macOS |
|
Ubuntu / Debian |
|
Arch / Manjaro |
|
Fedora |
|
Windows | Download from python.org — tick "Add to PATH" during install |
Alternative Install Methods
The Quick Start uses uv because it's the simplest (single binary, no Python version conflicts). Other options:
# pipx (if you already have it)
pipx install notebooklm-mcp-2026
# pip (inside a virtual environment)
python -m venv .venv && source .venv/bin/activate
pip install notebooklm-mcp-2026
# From source
git clone https://github.com/julianoczkowski/notebooklm-mcp-2026.git
cd notebooklm-mcp-2026
pip install -e .Authentication
notebooklm-mcp-2026 uses Google session cookies extracted via Chrome DevTools Protocol. No passwords are stored — only session cookies.
Important: Close Google Chrome completely before running login. The login process needs to launch Chrome with special debugging flags, which won't work if Chrome is already running.
notebooklm-mcp-2026 loginThis opens Chrome, you log in to Google, and the tool saves the session cookies locally. Cookies last 2–4 weeks. When they expire, run login again.
If Chrome can't be found automatically, the tool will show you the exact command to launch Chrome manually, or you can specify the path:
notebooklm-mcp-2026 login --chrome-path "/path/to/chrome"Where credentials are stored
Platform | Location |
Linux |
|
macOS |
|
Windows |
|
Override with: NOTEBOOKLM_MCP_DATA_DIR=/custom/path
CLI Commands
Command | Description |
| Interactive setup wizard — authenticates and configures your MCP client |
| Authenticate via Chrome (opens browser window) |
| Remove stored credentials and start fresh |
| Start the MCP server over stdio (used by MCP clients) |
| Show authentication and MCP client configuration status |
| Diagnose common issues (Chrome, auth, permissions) |
| Print version |
MCP Client Configuration
The setup command auto-configures your MCP client. You should not need to edit these files manually, but if you do:
{
"mcpServers": {
"notebooklm-mcp-2026": {
"command": "notebooklm-mcp-2026",
"args": ["serve"]
}
}
}{
"mcpServers": {
"notebooklm-mcp-2026": {
"command": "notebooklm-mcp-2026",
"args": ["serve"]
}
}
}{
"servers": {
"notebooklm-mcp-2026": {
"command": "notebooklm-mcp-2026",
"args": ["serve"]
}
}
}Claude Desktop does not inherit your terminal's PATH, so you must use the full path to the executable.
First, find your executable path:
# macOS / Linux
which notebooklm-mcp-2026
# Windows (PowerShell)
where notebooklm-mcp-2026Then edit your config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
macOS example:
{
"mcpServers": {
"notebooklm-mcp-2026": {
"command": "/Users/YOUR_USER/.local/bin/notebooklm-mcp-2026",
"args": ["serve"]
}
}
}Windows example:
{
"mcpServers": {
"notebooklm-mcp-2026": {
"command": "C:\\Users\\YOUR_USER\\.local\\bin\\notebooklm-mcp-2026.exe",
"args": ["serve"]
}
}
}Replace YOUR_USER with your actual username, or paste the exact path from the which/where command above.
Available Tools (9)
Tool | Description | Key Parameters |
| Launch Chrome for Google OAuth login |
|
| Verify stored credentials are valid | — |
| List all notebooks with metadata |
|
| Get notebook details + source list |
|
| List sources in a notebook |
|
| Get full text of a source |
|
| Ask the AI a question |
|
| Add a URL/YouTube source |
|
| Add pasted text source |
|
Typical workflow
1. list_notebooks → find the notebook ID you want
2. list_sources → see what sources are in it
3. query_notebook → ask questions about the sources
4. get_source_content → read raw source text if neededExample output
When your AI assistant calls list_notebooks, it gets back structured data like this:
{
"status": "success",
"count": 2,
"notebooks": [
{
"id": "abc123-def456",
"title": "Research Notes",
"source_count": 3,
"is_owned": true,
"modified_at": "2026-01-15T10:30:00+00:00"
},
{
"id": "ghi789-jkl012",
"title": "Project Planning",
"source_count": 5,
"is_owned": true,
"modified_at": "2026-01-14T08:00:00+00:00"
}
]
}And query_notebook returns:
{
"status": "success",
"answer": "Based on the sources, the main topics covered are...",
"conversation_id": "conv-uuid-123",
"turn_number": 1,
"is_follow_up": false
}Follow-up conversations
query_notebook returns a conversation_id. Pass it back to ask follow-up questions in the same conversation context:
# First question
result = query_notebook(notebook_id="abc", query="What is the main topic?")
# result.conversation_id = "uuid-123"
# Follow-up
result = query_notebook(notebook_id="abc", query="Tell me more about that", conversation_id="uuid-123")Troubleshooting
"Not authenticated" error
Run notebooklm-mcp-2026 login in your terminal.
"Cookies expired" error
Session cookies have a limited lifespan (2–4 weeks). Run notebooklm-mcp-2026 login again.
"Chrome not found" error
Install Google Chrome or Chromium. On Linux, ensure google-chrome or chromium is in your PATH. You can also specify the path directly:
notebooklm-mcp-2026 login --chrome-path "/path/to/chrome"Empty notebook list
Make sure you're logged into the correct Google account that has NotebookLM notebooks.
"Build label" errors
Google occasionally rotates their build label. Set the updated label:
NOTEBOOKLM_BL="boq_labs-tailwind-frontend_YYYYMMDD.XX_p0" notebooklm-mcp-2026 serveRate limit errors
NotebookLM free tier allows ~50 queries per day. Wait until the next day or upgrade.
Something else?
Run the diagnostic tool:
notebooklm-mcp-2026 doctorEnvironment Variables
Variable | Default | Description |
| Platform default | Override data storage location |
|
| Google build label |
|
| Query timeout in seconds |
Security
No passwords stored — only Google session cookies
File permissions — credentials saved with
0o600(owner read/write only)Directory permissions — data directory created with
0o700(owner only)No
eval/exec— no dynamic code execution anywhereNo
shell=True— Chrome launched with explicit argument listsCookie filtering — only essential Google auth cookies are persisted
Chrome cleanup — Chrome process always terminated in
finallyblocksInput validation — all tool parameters validated before use
Timeouts — all HTTP requests have explicit timeouts
CSRF protection — tokens passed in request body, auto-refreshed on expiry
Development
# Install dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Lint
ruff check src/ tests/Testing with MCP Inspector
The MCP Inspector lets you interactively test the server's tools in a web UI:
npx @modelcontextprotocol/inspector notebooklm-mcp-2026 serveThis opens a browser where you can call each of the 9 tools with custom parameters and inspect responses. You must run notebooklm-mcp-2026 login first.
Getting Help
Questions? Start a Discussion
Found a bug? Open an Issue
Want to contribute? See CONTRIBUTING.md
Security issue? See SECURITY.md for responsible disclosure
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/julianoczkowski/notebooklm-mcp-2026'
If you have feedback or need assistance with the MCP directory API, please join our Discord server