Install
$ agentstack add mcp-ari-agnt-notebooklm-mcp ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ 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.
About
notebooklm-mcp
An MCP (Model Context Protocol) server that exposes Google NotebookLM as a tool surface for Claude Desktop, Claude Code, and any other MCP-compatible client.
Built on top of notebooklm-py, an unofficial Python API for NotebookLM.
> Warning — Unofficial / Undocumented APIs > > notebooklm-py drives Google's internal NotebookLM endpoints, which are > undocumented and subject to change without notice. Google is not > affiliated with this project. API breakage can happen at any time. > > Recommended: use a throwaway Google account for this integration > rather than your primary account. Rate limits and terms-of-service > restrictions apply.
Available Tools
| Tool | Description | |------|-------------| | notebooklm_list_notebooks | List all notebooks in the account | | notebooklm_create_notebook | Create a new notebook | | notebooklm_add_source | Add a URL, YouTube link, or pasted text as a source | | notebooklm_ask | Ask a question against a notebook's sources | | notebooklm_generate_audio_overview | Generate an Audio Overview (podcast deep dive) | | notebooklm_list_artifacts | List all generated artifacts in a notebook | | notebooklm_download_artifact | Download an artifact to a local file |
Installation & Setup
1. Install the package
Option A — uvx (recommended, no persistent install needed):
# No install step required; uvx downloads and runs on demand.
# Just make sure uv is installed: https://docs.astral.sh/uv/
Option B — pip into a dedicated environment:
pip install "notebooklm-mcp"
Option C — from source (this repo):
git clone https://github.com/deji-adesoga/notebooklm-mcp
cd notebooklm-mcp
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # macOS/Linux
pip install -e .
2. Install the Chromium browser (required for login)
playwright install chromium
If you see TypeError: onExit is not a function on Linux, see the notebooklm-py troubleshooting guide.
3. Authenticate (one-time)
notebooklm login
This opens a Chromium browser window. Log in with your (throwaway) Google account. Credentials are saved to ~/.notebooklm/profiles/default/storage_state.json. You only need to do this once — the MCP server reads the stored cookies automatically.
To verify authentication worked:
notebooklm auth check --test
Claude Desktop Configuration (Windows MSIX)
The MSIX edition of Claude Desktop reads its MCP config from:
%LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json
Open that file (create it if it doesn't exist) and add the notebooklm entry to the mcpServers object.
Option A — uvx (no persistent install)
{
"mcpServers": {
"notebooklm": {
"command": "uvx",
"args": ["notebooklm-mcp"]
}
}
}
Option B — local venv (from-source install)
{
"mcpServers": {
"notebooklm": {
"command": "C:\\Users\\Diggity\\Documents\\Local Repositories\\notebooklm-mcp\\.venv\\Scripts\\python.exe",
"args": ["-m", "notebooklm_mcp.server"]
}
}
}
Restart Claude Desktop after editing the config.
Quickstart (once configured)
Once the server is running, Claude can use natural language to drive NotebookLM:
List my notebooks.
Create a notebook called "AI Safety Reading List".
Add https://arxiv.org/abs/2301.13379 as a source and wait for it to index.
Ask "What are the key findings?" in that notebook.
Generate an audio overview for the notebook.
Download the audio to C:/Users/Diggity/Downloads/podcast.mp3.
Artifact Type Reference
When calling notebooklm_download_artifact, use these artifact_type values:
| artifact_type | Output format | |---------------|---------------| | audio | MP3/MP4 | | video | MP4 | | report | Markdown (.md) | | quiz | JSON | | flashcards | JSON | | infographic | PNG | | slide_deck | PDF | | data_table | CSV | | mind_map | JSON |
Development
git clone https://github.com/deji-adesoga/notebooklm-mcp
cd notebooklm-mcp
python -m venv .venv
.venv\Scripts\activate
pip install -e ".[dev]"
# Verify tools enumerate cleanly (no Google login needed)
python -c "from notebooklm_mcp.server import mcp; print([t.name for t in mcp.get_tools().values()])"
# Test with MCP Inspector
npx @modelcontextprotocol/inspector python -m notebooklm_mcp.server
License
MIT — see [LICENSE](LICENSE).
Underlying library: notebooklm-py (MIT).
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Ari-Agnt
- Source: Ari-Agnt/notebooklm-mcp
- License: MIT
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.