Featured

Deploy OpenClaw in 60 seconds β€” 20% off logoDeploy OpenClaw in 60 seconds β€” 20% off

Launch OpenClaw on Hostinger in about 60 seconds and keep your agent live 24/7. Our referral link gives you 20% off, no coupon code needed.

Launch on Hostinger β†’
Run your Hermes agent on Hostinger, fully managed logoRun your Hermes agent on Hostinger, fully managed

Launch Hermes on Hostinger in one click, fully managed, no VPS knowledge needed. Use code ZACAARON10 for 10% off.

Launch on Hostinger β†’
Crawl and scrape any site into clean data, 10% off logoCrawl and scrape any site into clean data, 10% off

Firecrawl crawls and scrapes any site into clean markdown for your agent. Get 1,000 free credits, and new users get 10% off their first purchase.

Try Firecrawl free β†’
Your own AI agent, running 24/7 with QwikClaw logoYour own AI agent, running 24/7 with QwikClaw

QwikClaw sets up and runs an always-on OpenClaw agent for you. One click, no config files, no server setup.

Deploy now β†’
One API to scrape, enrich, and extract the internet. logoOne API to scrape, enrich, and extract the internet.

Context.dev gives your agents a single API to scrape, enrich, and extract live web data β€” no proxies, no parsers, no maintenance.

Start building free β†’
SetupClaw: done-for-you OpenClaw for founders & exec teams logoSetupClaw: done-for-you OpenClaw for founders & exec teams

White-glove OpenClaw for founders and exec teams (4–50+ employees): we install, harden, integrate your tools, and maintain it β€” secured from day one.

Get it set up for you β†’
SEO data APIs for your agent, $1 free credit logoSEO data APIs for your agent, $1 free credit

DataForSEO gives your agent live access to SERP results, keyword data, backlinks, and on-page SEO data through one API. New accounts get a $1 credit, good for up to 20,000 keyword or backlink lookups.

Try DataForSEO free β†’
Reach 47,000+ AI builders

A flat monthly placement in front of developers actively installing AI tools. No lock-in, cancel anytime.

Advertise here β†’

Works with

Claude CodeClaude DesktopCursorVS CodeClineCodex CLIOpenClaw+ any MCP client

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

notebooklm-mcp MCP server](https://glama.ai/mcp/servers/@roomi-fields/notebooklm-mcp/badges/score.svg)](https://glama.ai/mcp/servers/@roomi-fields/notebooklm-mcp) πŸ“‡ 🏠 🍎 πŸͺŸ 🐧 - Full automation of Google NotebookLM β€” Q&A with citations, audio podcasts,...

README.md

<div align="center">

NotebookLM REST API + MCP server

Automate Google NotebookLM at scale. 33-endpoint HTTP REST API for n8n / Zapier / Make / curl, plus an MCP server for Claude Code / Cursor / Codex. Citation-backed Q&A, full Studio generation (audio Β· video Β· infographic Β· report Β· presentation Β· data table), multi-account rotation with auto-reauth across personal and Google Workspace accounts.

v3.0.0 β€” major refactor: dual transport. The data plane now drives NotebookLM's internal batchexecute RPC API (the same one the web app calls) instead of scraping the DOM β€” immune to UI rebrands, 10-100Γ— faster (list notebooks ~1 s vs ~30 s, generate a report ~13 s vs minutes), and more correct. The Playwright browser is kept as an automatic fallback (NOTEBOOKLM_TRANSPORT=dom forces it) plus login / auto-reauth, so nothing breaks if an internal endpoint shifts β€” both paths ship permanently for robustness. Adds 5 new tools: notebook sharing, study aids (flashcards / quiz), mind maps, source labels, and web research / source discovery. Still batch-tested on overnight runs of 1 000+ questions. See the changelog. Compare with PleasePrompto/notebooklm-mcp for when this project is the right pick (REST API, full Studio, auto-reauth).

<!-- Badges -->

![CI](https://github.com/roomi-fields/notebooklm-mcp/actions/workflows/ci.yml) ![npm version](https://www.npmjs.com/package/@roomi-fields/notebooklm-mcp) ![npm downloads](https://www.npmjs.com/package/@roomi-fields/notebooklm-mcp) ![codecov](https://codecov.io/gh/roomi-fields/notebooklm-mcp) ![License: MIT](https://opensource.org/licenses/MIT) ![TypeScript](https://www.typescriptlang.org/) ![Node.js](https://nodejs.org/)

![MCP](https://modelcontextprotocol.io/) ![Claude Code](https://claude.ai/claude-code) ![n8n](./deployment/docs/04-N8N-INTEGRATION.md) ![GitHub](https://github.com/roomi-fields/notebooklm-mcp)

<!-- End Badges -->

</div>

---

Features

Q&A with Citations

  • Ask questions to NotebookLM and get accurate, citation-backed answers
  • Source citation extraction with 5 formats: none, inline, footnotes, json, expanded (97% excerpt success rate)
  • Session management for multi-turn conversations with auto-reauth on session expiry

Content Generation

Generate multiple content types from your notebook sources:

| Content Type | Formats | Options | | ------------------ | ------------------------ | ---------------------------------------------- | | Audio Overview | Podcast-style discussion | Language (80+), custom instructions | | Video | Brief, Explainer | 6 visual styles, language, custom instructions | | Infographic | Horizontal, Vertical | Language, custom instructions | | Report | Summary, Detailed | Language, custom instructions | | Presentation | Overview, Detailed | Language, custom instructions | | Data Table | Simple, Detailed | Language, custom instructions |

Video Visual Styles: classroom, documentary, animated, corporate, cinematic, minimalist

Content Download

  • Download Audio β€” WAV audio files
  • Download Video β€” MP4 video files
  • Download Infographic β€” PNG image files
  • Text-based content (report, presentation, data_table) is returned in the API response

Source Management

  • Add sources: Files (PDF, TXT, DOCX), URLs, Text, YouTube videos, Google Drive
  • List sources: View all sources in a notebook

Notebook Library

  • Multi-notebook management with validation and smart selection
  • Auto-discovery: Automatically generate metadata via NotebookLM queries
  • Search notebooks by keyword in name, description, or topics
  • Scrape notebooks: List all notebooks from NotebookLM with IDs and names
  • Bulk delete: Delete multiple notebooks at once

Accounts & Localization

  • Personal _and_ Google Workspace accounts β€” recognizes both NotebookLM hosts (notebooklm.google.com and the notebook.google.com Workspace alias), so Workspace sessions authenticate cleanly instead of looping on "session expired"
  • UI-language-aware β€” drives NotebookLM whether its interface is in English, French, German, or Japanese (en Β· fr Β· de Β· ja); add a language in a single JSON file

Integration Options

  • MCP Protocol β€” Claude Code, Cursor, Codex, any MCP client
  • HTTP REST API β€” n8n, Zapier, Make.com, custom integrations
  • Docker β€” Isolated deployment with Docker or Docker Compose
  • RTFM retrieval layer β€” /batch-to-vault writes citation-backed answers as markdown + JSON sidecars (nblm-answer-v1 schema), indexable by RTFM (FTS5 + semantic) for unlimited offline queries. Ideal for academic / SOTA workflows. Guide.

---

Quick Start

Option 0 β€” Claude Code marketplace (one-liner, recommended for Claude Code users)

The fastest way to get NotebookLM into Claude Code. Distributed via the roomi-fields/claude-plugins marketplace alongside RTFM (the retrieval companion β€” see RTFM integration guide):

/plugin marketplace add roomi-fields/claude-plugins
/plugin install notebooklm@roomi-fields

That registers the MCP server, runs npx -y @roomi-fields/notebooklm-mcp@<pinned-version> automatically (Node β‰₯ 18 required), and lets you upgrade with two commands when a new release ships: /plugin marketplace update roomi-fields then /reload-plugins. Then run npm run setup-auth once to log into Google. To install RTFM at the same time: /plugin install rtfm@roomi-fields.

Option 1 β€” HTTP REST API (n8n, Zapier, Make, curl, any HTTP client)

git clone https://github.com/roomi-fields/notebooklm-mcp.git
cd notebooklm-mcp
npm install && npm run build
npm run setup-auth   # One-time Google login
npm run start:http   # Start REST API on port 3000
# Citation-backed Q&A, single curl, JSON response
curl -X POST http://localhost:3000/ask \
  -H 'Content-Type: application/json' \
  -d '{"question": "Summarize chapter 3", "notebook_id": "your-id", "source_format": "json"}'

The full surface is 33 documented endpoints β€” see the REST API reference. For overnight batches of 1 000+ questions, see the batch pattern.

Option 2 β€” MCP Mode (Claude Code, Cursor, Codex)

# Build (same package, MCP transport)
git clone https://github.com/roomi-fields/notebooklm-mcp.git
cd notebooklm-mcp
npm install && npm run build

# Claude Code
claude mcp add notebooklm node /path/to/notebooklm-mcp/dist/index.js

# Cursor β€” add to ~/.cursor/mcp.json
{
  "mcpServers": {
    "notebooklm": {
      "command": "node",
      "args": ["/path/to/notebooklm-mcp/dist/index.js"]
    }
  }
}

Then say: _"Log me in to NotebookLM"_ β†’ Chrome opens β†’ log in with Google.

Option 3 β€” Docker (NAS, server, headless)

# Build and run
docker build -t notebooklm-mcp .
docker run -d --name notebooklm-mcp -p 3000:3000 -p 6080:6080 -v notebooklm-data:/data notebooklm-mcp

# Authenticate via noVNC
# 1. Open http://localhost:6080/vnc.html
# 2. Run: curl -X POST http://localhost:3000/setup-auth -d '{"show_browser":true}'
# 3. Login to Google in the VNC window

See Docker Guide for NAS deployment (Synology, QNAP).

---

Documentation

Full docs site: <https://roomi-fields.github.io/notebooklm-mcp/> Β· OpenAPI 3.1 spec

| Guide | Description | | -------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | | Installation | Step-by-step setup for HTTP and MCP modes | | Configuration | Environment variables and security | | REST API reference | Complete HTTP endpoint documentation (33 endpoints) | | Run 1 000 questions overnight | Production batch pattern with auto-reauth and rotation | | RTFM integration β€” cache as searchable vault | Pipeline pattern: NotebookLM as one-shot ingestion, RTFM as retrieval layer. /batch-to-vault endpoint, nblm-answer-v1 schema. | | n8n integration | Workflow automation setup | | Troubleshooting | Common issues and solutions | | Notebook library | Multi-notebook management | | Auto-discovery | Autonomous metadata generation | | Content management | Audio, video, infographic, report, presentation | | Multi-account rotation | Multiple accounts with TOTP auto-reauth | | Docker | Docker and Docker Compose deployment | | Multi-interface | Run Claude Desktop + HTTP simultaneously | | Compare with PleasePrompto v2.0.0 | Feature matrix vs the upstream MCP-only server | | Chrome profile limitation | Profile locking (solved in v1.3.6+) | | Adding a language | i18n system for multilingual UI support |

---

Roadmap

See ROADMAP.md for planned features and version history.

Latest releases:

  • v2.2.1 β€” Recognize both NotebookLM hosts so Google Workspace accounts authenticate (the notebook.google.com alias); notebook listing no longer wastes ~30s after the "Gemini Notebook" rebrand; HTTP banner reads the real version. Diagnosis + patch by @kpietkaa (#19)
  • v2.2.0 β€” Fix new-answer detection timing out when an answer repeats an earlier one (position-based identity, not text-hash); graceful shutdown on stdio disconnect; Japanese UI locale
  • v2.1.1 β€” Thai UI selectors for notebook_create (partial, #18)
  • v2.1.0 β€” note_list and note_get MCP tools (#17)
  • v2.0.4 β€” German UI selectors (closes #14)
  • v2.0.0 β€” Tools renamed to a namespaced tree (notebook_ask, source_add, session_list, server_health, vault_batch…) across 9 namespaces; tools/list advertises only the canonical names. Backward compatible β€” the legacy flat names still work as aliases, so existing scripts and configs keep running. Also adds MCP annotations (read-only / destructive / idempotent / open-world hints) and outputSchema + structuredContent on every tool. Published on the Smithery registry.
  • v1.7.0 β€” batch_to_vault exposed as a first-class MCP tool (parity with the HTTP endpoint, no localhost server required); shared runBatchToVault helper deduplicates the loop across both transports
  • v1.6.0 β€” /batch-to-vault endpoint + RTFM integration (nblm-answer-v1 JSON Schema published at schemas.roomi-fields.com/nblm-answer-v1.json) for caching NotebookLM answers as a searchable markdown vault
  • v1.5.8 β€” NotebookLM 2026 UI adaptations (icon-label sanitization, Discussion-panel recovery, count-based source detection) β€” PR #5 by @KhizarJamshaidIqbal
  • v1.5.7 β€” Citation extraction selector fix (.highlighted) and Docker multi-stage build β€” PR #1 by @JulienCANTONI
  • v1.5.6 β€” Citation extraction major rewrite (97% success rate), browser-verified auth at startup, profile auto-sync
  • v1.5.0 β€” Complete Studio content generation (video, infographic, presentation, data_table) + Notes management + Delete sources
  • v1.4.0 β€” Content management (sources, audio, generation) + Multi-account

_Intermediate patch and hardening releases (1.5.x–1.7.x) are in the full CHANGELOG._

Not yet implemented:

  • Discover sources (Web/Drive search with Fast/Deep modes)
  • Edit notes (create, delete, and convert are implemented)

---

Disclaimer

This tool automates browser interactions with NotebookLM. Use a dedicated Google account for automation. CLI tools like Claude Code can make mistakes β€” always review changes before deploying.

See full Disclaimer below.

---

Contributing

Found a bug? Have an idea? Open an issue or submit a PR!

See CONTRIBUTING.md for guidelines.

License

MIT β€” Use freely in your projects. See LICENSE.

Author

Romain Peyrichou β€” @roomi-fields

Acknowledgments

Thanks to everyone who has contributed code, ideas, and bug reports:

---

<details> <summary><a name="disclaimer-details"></a>Full Disclaimer</summary>

About browser automation: While I've built in humanization features (realistic typing speeds, natural delays, mouse movements), I can't guarantee Google won't detect or flag automated usage. Use a dedicated Google account for automation.

About CLI tools and AI agents: CLI tools like Claude Code, Codex, and similar AI-powered assistants are powerful but can make mistakes:

  • Always review changes before committing or deploying
  • Test in safe environments first
  • Keep backups of important work
  • AI agents are assistants, not infallible oracles

I built this tool for myself and share it hoping it helps others, but I can't take responsibility for any issues that might occur. Use at your own discretion.

</details>

---

<div align="center">

Built with frustration about hallucinated APIs, powered by Google's NotebookLM

⭐ Star on GitHub if this saves you debugging time!

</div>

See related servers & alternatives β†’

Related MCP servers

Browse all β†’

Related guides

Hand-picked reading to help you choose and use Other servers.