NotebookLM MCP
Provides control over Google NotebookLM, allowing management of notebooks, sources, chat, artifacts, notes, sharing, research, and export.
Allows exporting content from NotebookLM to Google Docs and Google Sheets.
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 MCPlist my notebooks"
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 for Claude Desktop
Gives Claude Desktop full control over Google NotebookLM via 56 MCP tools — manage notebooks, sources, chat, artifacts, notes, sharing, research, and export.
Category | Example tools |
Notebooks | list, create, get, rename, delete, summary, description |
Sources | list, add (URL/text/file/Drive), get, fulltext, guide, delete, refresh, rename |
Chat | ask (with citations), configure, set mode, history |
Artifacts | generate audio, video, slides, quiz, flashcards, report, infographic, mind map, study guide, data table |
Artifact Mgmt | list, poll status, wait, download, delete, rename, revise slide, suggest reports |
Notes | create, list, update, delete |
Sharing | get status, set public/private, add/remove users, set view level, get share URL |
Research | start web/Drive research, poll status, import sources |
Settings | get/set output language |
Export | export to Google Docs/Sheets |
Prerequisites
Python 3.10 or higher
A Google account with NotebookLM access (notebooklm.google.com)
Git (optional — you can also download a ZIP)
Related MCP server: NotebookLM MCP Server
Setup
1. Get the code
git clone https://github.com/sprmdta/Experiment_NotebookM_MCP.git
cd Experiment_NotebookM_MCPOr download and extract the ZIP, then open a terminal in the extracted folder.
2. Create a virtual environment
python -m venv .venv3. Install dependencies
Windows:
.venv\Scripts\pip install -r requirements.txtMac/Linux:
.venv/bin/pip install -r requirements.txt4. Install the Playwright browser
Windows:
.venv\Scripts\playwright install chromiumMac/Linux:
.venv/bin/playwright install chromium5. Log in to Google
Run the login command from inside the project folder:
Windows (PowerShell or Command Prompt):
cd "C:\YOUR_PATH_TO_REPO\Experiment_NotebookM_MCP"
.venv\Scripts\python -m notebooklm loginMac/Linux:
cd /YOUR_PATH_TO_REPO/Experiment_NotebookM_MCP
.venv/bin/python -m notebooklm loginWhat happens during login
The login command is interactive — it opens a browser and waits for you to confirm before saving anything. Follow these steps exactly:
A Chromium browser window opens automatically and navigates to NotebookLM
Sign in with the Google account linked to your NotebookLM account
Complete any 2-factor authentication if prompted
Wait until you can see the NotebookLM homepage (your list of notebooks)
Switch back to your terminal window
Press ENTER in the terminal to save the session
Critical: Do NOT close the browser window before pressing ENTER. Closing the browser exits the process without saving. The session cookies are only written to disk when you press ENTER in the terminal.
What success looks like
After pressing ENTER, the terminal will print:
Authentication saved to: C:\Users\YOUR_USERNAME\.notebooklm\storage_state.jsonThis file (storage_state.json) contains your Google session cookies. The MCP server reads this file every time it makes a request to NotebookLM.
Verify the login worked
You can confirm the file was created:
Windows:
dir "%USERPROFILE%\.notebooklm\storage_state.json"Mac/Linux:
ls ~/.notebooklm/storage_state.jsonIf the file exists, login succeeded. If it does not exist, the login was not completed — re-run the command and make sure to press ENTER in the terminal.
6. Configure Claude Desktop
Open (or create) the Claude Desktop config file:
Windows:
C:\Users\YOUR_USERNAME\AppData\Roaming\Claude\claude_desktop_config.jsonMac:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Windows (replace YOUR_PATH_TO_REPO with the actual path where you cloned the repo):
{
"mcpServers": {
"notebooklm": {
"command": "C:\\YOUR_PATH_TO_REPO\\Experiment_NotebookM_MCP\\.venv\\Scripts\\python.exe",
"args": ["C:\\YOUR_PATH_TO_REPO\\Experiment_NotebookM_MCP\\notebooklm_mcp.py"],
"env": {
"NOTEBOOKLM_STORAGE_PATH": "C:\\Users\\YOUR_USERNAME\\.notebooklm"
}
}
}
}Mac/Linux:
{
"mcpServers": {
"notebooklm": {
"command": "/YOUR_PATH_TO_REPO/Experiment_NotebookM_MCP/.venv/bin/python",
"args": ["/YOUR_PATH_TO_REPO/Experiment_NotebookM_MCP/notebooklm_mcp.py"],
"env": {
"NOTEBOOKLM_STORAGE_PATH": "/Users/YOUR_USERNAME/.notebooklm"
}
}
}
}7. Restart Claude Desktop
Fully quit Claude Desktop — closing the window is not enough. Right-click the Claude icon in the system tray (bottom-right taskbar on Windows, menu bar on Mac) and choose Quit, then reopen it.
Claude Desktop reads the config only at startup. If you edit the config while it is running, the changes will not take effect until you fully restart it.
The NotebookLM tools appear in the tools panel (hammer icon) once connected.
8. Test
Ask Claude: List my NotebookLM notebooks
Claude will call notebooklm_list_notebooks and return your notebooks.
Re-authentication
Session cookies expire periodically (typically every few weeks). If Claude Desktop reports authentication errors, re-run the same login command from inside the project folder:
Windows:
cd "C:\YOUR_PATH_TO_REPO\Experiment_NotebookM_MCP"
.venv\Scripts\python -m notebooklm loginMac/Linux:
cd /YOUR_PATH_TO_REPO/Experiment_NotebookM_MCP
.venv/bin/python -m notebooklm loginFollow the same steps as the initial login:
Sign in to Google in the browser that opens
Wait for the NotebookLM homepage to load
Press ENTER in the terminal to save
The storage_state.json file is overwritten with fresh cookies. You do not need to change any config or restart Claude Desktop — the updated cookies are picked up automatically on the next request.
Troubleshooting
Problem | Fix |
| Re-run |
| Login was not completed properly — re-run login and press ENTER in the terminal after the NotebookLM page loads |
| Re-run |
| Binary mismatch between Python versions — run |
| The |
| Run |
Tools not showing in Claude Desktop | Verify all paths in the config are correct, then fully quit (system tray) and reopen Claude Desktop |
Config changes not taking effect | Claude Desktop must be fully quit from the system tray — closing the window is not enough |
|
|
| Ensure the path in the config matches the default login storage: |
Tool Reference
All 56 tools follow the naming convention notebooklm_{action}_{resource}.
Category | Tools |
Notebooks |
|
Sources |
|
Chat |
|
Artifacts |
|
Artifact Mgmt |
|
Notes |
|
Sharing |
|
Research |
|
Settings |
|
Export |
|
Notes
Uses the unofficial
notebooklm-pylibrary which reverse-engineers NotebookLM's internal APIs. Google may change these APIs at any time.Not affiliated with or endorsed by Google.
Session cookies expire periodically and require re-login via
notebooklm login.Rate limits apply — the server returns error messages if you hit them.
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sprmdta/Experiment_NotebookLM_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server