Skip to main content
Glama
rinaldops
by rinaldops

πŸ““ notebooklm-mcp

MCP (Model Context Protocol) server for Google NotebookLM β€” source-grounded, citation-backed answers from your own documents, inside Claude Code and any MCP client.

Version VS Code Marketplace License Node TypeScript MCP

πŸ‡¬πŸ‡§ English Β· πŸ‡§πŸ‡· PortuguΓͺs

⚠️ Notice. Unofficial project, not affiliated with Google. Automating a logged-in session may be considered automated access under NotebookLM's Terms, with risk to your account. Use at your own risk. Subject to usage limits (e.g. ~50 questions/day on the free plan).


✨ Highlights

  • Source-grounded answers β€” every reply comes from your uploaded documents (Gemini), drastically reducing hallucinations.

  • Any MCP client β€” works with Claude Code, Cursor, and anything that speaks the Model Context Protocol over stdio.

  • No official API β€” browser automation with Patchright, reusing a logged-in Google session.

  • Smart Add β€” NotebookLM itself describes a notebook's name, content, and topics so your library stays accurate.

  • Zero Python friction β€” pure TypeScript/Node, distributed via npx. No interpreter, venv, or pip.

Related MCP server: notebooklm-mcp

πŸ“‹ Prerequisites

Requirement

Notes

Node.js β‰₯ 20

Runtime for the server and CLI.

Google account

With access to your NotebookLM notebooks.

Chromium-based browser

System Google Chrome by default; Patchright's Chromium can be installed on demand.

πŸš€ Installation & usage

# 1. Interactive login (once; opens the browser for you to log in to Google)
npx @rinaldops/notebooklm-mcp login

# 2. Register with Claude Code (consumed over stdio)
claude mcp add notebooklm -- npx -y @rinaldops/notebooklm-mcp

# Library management (optional; equivalent MCP tools also exist)
npx @rinaldops/notebooklm-mcp notebooks add "<url>" "My Notebook" "Description" "topic1,topic2"
npx @rinaldops/notebooklm-mcp notebooks list           # local library
npx @rinaldops/notebooklm-mcp notebooks remote         # all notebooks in the account
npx @rinaldops/notebooklm-mcp notebooks describe <url> # Smart Add: discovers the notebook's metadata

πŸ’‘ Prefer the editor experience? Install the VS Code extension in packages/extension β€” it registers the server and auto-configures Claude Code / Cursor in your workspace.

Smart Add (catalog with automatic metadata)

Recommended flow to populate the library without making up descriptions:

  1. notebooks remote (or the notebooklm_list_remote_notebooks tool) β†’ get the URL.

  2. notebooks describe <url> (or notebooklm_describe_notebook) β†’ NotebookLM itself describes the name, content, and topics.

  3. notebooks add <url> <name> <description> <topics> based on step 2.

🧰 Exposed tools

Tool

Purpose

notebooklm_ask

Ask a notebook (active, by id, or by URL)

notebooklm_list_notebooks

List the local library

notebooklm_list_remote_notebooks

Discover all notebooks in the account (scrapes the panel)

notebooklm_describe_notebook

Smart Add: ask the notebook what it contains (name/description/topics)

notebooklm_add_notebook

Add a notebook

notebooklm_activate_notebook

Set the active notebook

notebooklm_remove_notebook

Remove a notebook

notebooklm_auth_status

Session status

βš™οΈ Configuration (env)

Variable

Default

Description

NOTEBOOKLM_CONFIG_DIR

~/.notebooklm-mcp

Data/session directory

NOTEBOOKLM_HEADLESS

true

Headless browser for questions

NOTEBOOKLM_BROWSER_CHANNEL

chrome

Chromium channel (chrome/msedge/...)

NOTEBOOKLM_DEFAULT_NOTEBOOK_URL

β€”

Default notebook when none is active

πŸ› οΈ Development

Monorepo with npm workspaces:

  • packages/mcp-server β€” the MCP server (publishable via npx).

  • packages/extension β€” the VS Code extension (registers/auto-configures the server). Built with tsup; debug with F5 (Extension Development Host).

npm install                 # install all workspaces (from the root)
npm run build               # build all packages
npm run typecheck

# Server commands (run inside the package):
cd packages/mcp-server
npm run dev -- login        # login via tsx, no build
npm start                   # node dist/cli.js (after build)

See PLAN.md for the development plan and the status of each part, and CHANGELOG.md for release history.

πŸ“„ License

MIT Β© 2026 Rinaldo Paulino de Souza. Unofficial project, not affiliated with Google β€” use at your own risk; see the notice at the top.

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

–Maintainers
–Response time
0dRelease cycle
2Releases (12mo)
Commit activity

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/rinaldops/notebooklm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server