npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@roomi-fields/notebooklm-mcp

v1.5.7

Published

MCP server for NotebookLM API with HTTP REST API - Zero hallucinations from your notebooks

Readme

NotebookLM MCP Server

Forked from PleasePrompto/notebooklm-mcp

Full automation of Google NotebookLM: Q&A, audio podcasts, and source management

CI npm version npm downloads codecov License: MIT TypeScript Node.js

MCP Claude Code n8n GitHub


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
  • Session management for multi-turn conversations

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

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

Quick Start

Option 1: MCP Mode (Claude Code, Cursor, Codex)

# Clone and build locally
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 2: HTTP REST API (n8n, Zapier, Make.com)

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 server on port 3000
# Query the API
curl -X POST http://localhost:3000/ask \
  -H "Content-Type: application/json" \
  -d '{"question": "Explain X", "notebook_id": "my-notebook"}'

Option 3: Docker (NAS, Server)

# 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

| Guide | Description | | ------------------------------------------------------------ | ----------------------------------------- | | Installation | Step-by-step setup for HTTP and MCP modes | | Configuration | Environment variables and security | | API Reference | Complete HTTP endpoint documentation | | n8n Integration | Workflow automation setup | | Troubleshooting | Common issues and solutions | | Notebook Library | Multi-notebook management | | Auto-Discovery | Autonomous metadata generation | | Docker | Docker and Docker Compose deployment | | Multi-Interface | Run Claude Desktop + HTTP simultaneously | | Chrome 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:

  • v1.5.3 — Docker deployment with noVNC for visual authentication + NAS support (Synology, QNAP)
  • v1.5.2 — Notebook scraping from NotebookLM + Bulk delete + Bug fixes
  • v1.5.1 — Multilingual UI support (FR/EN) with i18n selector system + E2E tests (76 tests)
  • 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

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


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.


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

Star on GitHub if this saves you debugging time!