{"id":35201697,"url":"https://github.com/roomi-fields/notebooklm-mcp","last_synced_at":"2026-04-19T10:02:22.402Z","repository":{"id":328297046,"uuid":"1102286000","full_name":"roomi-fields/notebooklm-mcp","owner":"roomi-fields","description":"Google NotebookLM over MCP + a local HTTP REST API. Citation-backed Q\u0026A, audio/video/content generation, multi-account rotation. For Claude Code, Codex, Cursor, n8n, Zapier, Make.","archived":false,"fork":false,"pushed_at":"2026-04-19T08:57:19.000Z","size":1281,"stargazers_count":51,"open_issues_count":0,"forks_count":17,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-19T09:28:28.176Z","etag":null,"topics":["ai","anthropic","automation","citations","claude","claude-code","gemini","google-notebooklm","http-api","mcp","mcp-server","n8n","notebooklm","playwright","rest-api","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"PleasePrompto/notebooklm-mcp","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/roomi-fields.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-23T06:58:06.000Z","updated_at":"2026-04-19T08:57:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/roomi-fields/notebooklm-mcp","commit_stats":null,"previous_names":["roomi-fields/notebooklm-mcp"],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/roomi-fields/notebooklm-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roomi-fields%2Fnotebooklm-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roomi-fields%2Fnotebooklm-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roomi-fields%2Fnotebooklm-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roomi-fields%2Fnotebooklm-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roomi-fields","download_url":"https://codeload.github.com/roomi-fields/notebooklm-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roomi-fields%2Fnotebooklm-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32002361,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","anthropic","automation","citations","claude","claude-code","gemini","google-notebooklm","http-api","mcp","mcp-server","n8n","notebooklm","playwright","rest-api","typescript"],"created_at":"2025-12-29T11:54:09.569Z","updated_at":"2026-04-19T10:02:22.393Z","avatar_url":"https://github.com/roomi-fields.png","language":"TypeScript","readme":"\u003cdiv align=\"center\"\u003e\n\n# NotebookLM MCP + HTTP REST API\n\n**Google NotebookLM over MCP + a local HTTP REST API — Q\u0026A with citations, audio podcasts, video generation, multi-account rotation. Works with Claude Code, Codex, Cursor, n8n, Zapier, Make.**\n\n\u003e 🟢 **Actively maintained fork** of [PleasePrompto/notebooklm-mcp](https://github.com/PleasePrompto/notebooklm-mcp) (upstream last push: 2025-12-27). This fork ships v1.5.8 (2026-04-19) with 2026 NotebookLM UI selectors, HTTP REST API for n8n / Zapier / Make, multi-account rotation, and documented install on Windows / WSL / Docker.\n\n\u003c!-- Badges --\u003e\n\n[![CI](https://github.com/roomi-fields/notebooklm-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/roomi-fields/notebooklm-mcp/actions/workflows/ci.yml) [![npm version](https://badge.fury.io/js/%40roomi-fields%2Fnotebooklm-mcp.svg)](https://www.npmjs.com/package/@roomi-fields/notebooklm-mcp) [![npm downloads](https://img.shields.io/npm/dm/@roomi-fields/notebooklm-mcp.svg)](https://www.npmjs.com/package/@roomi-fields/notebooklm-mcp) [![codecov](https://codecov.io/gh/roomi-fields/notebooklm-mcp/branch/main/graph/badge.svg)](https://codecov.io/gh/roomi-fields/notebooklm-mcp) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue.svg)](https://www.typescriptlang.org/) [![Node.js](https://img.shields.io/badge/Node.js-\u003e=18-green.svg)](https://nodejs.org/)\n\n[![MCP](https://img.shields.io/badge/MCP-2025-green.svg)](https://modelcontextprotocol.io/) [![Claude Code](https://img.shields.io/badge/Claude_Code-MCP-8A2BE2)](https://claude.ai/claude-code) [![n8n](https://img.shields.io/badge/n8n-HTTP_API-orange)](./deployment/docs/04-N8N-INTEGRATION.md) [![GitHub](https://img.shields.io/github/stars/roomi-fields/notebooklm-mcp?style=social)](https://github.com/roomi-fields/notebooklm-mcp)\n\n\u003c!-- End Badges --\u003e\n\n\u003c/div\u003e\n\n---\n\n## Features\n\n### Q\u0026A with Citations\n\n- **Ask questions** to NotebookLM and get accurate, citation-backed answers\n- **Source citation extraction** with 5 formats: none, inline, footnotes, json, expanded (97% excerpt success rate)\n- **Session management** for multi-turn conversations with auto-reauth on session expiry\n\n### Content Generation\n\nGenerate multiple content types from your notebook sources:\n\n| Content Type       | Formats                  | Options                                        |\n| ------------------ | ------------------------ | ---------------------------------------------- |\n| **Audio Overview** | Podcast-style discussion | Language (80+), custom instructions            |\n| **Video**          | Brief, Explainer         | 6 visual styles, language, custom instructions |\n| **Infographic**    | Horizontal, Vertical     | Language, custom instructions                  |\n| **Report**         | Summary, Detailed        | Language, custom instructions                  |\n| **Presentation**   | Overview, Detailed       | Language, custom instructions                  |\n| **Data Table**     | Simple, Detailed         | Language, custom instructions                  |\n\n**Video Visual Styles**: classroom, documentary, animated, corporate, cinematic, minimalist\n\n### Content Download\n\n- **Download Audio** — WAV audio files\n- **Download Video** — MP4 video files\n- **Download Infographic** — PNG image files\n- Text-based content (report, presentation, data_table) is returned in the API response\n\n### Source Management\n\n- **Add sources**: Files (PDF, TXT, DOCX), URLs, Text, YouTube videos, Google Drive\n- **List sources**: View all sources in a notebook\n\n### Notebook Library\n\n- **Multi-notebook management** with validation and smart selection\n- **Auto-discovery**: Automatically generate metadata via NotebookLM queries\n- **Search notebooks** by keyword in name, description, or topics\n- **Scrape notebooks**: List all notebooks from NotebookLM with IDs and names\n- **Bulk delete**: Delete multiple notebooks at once\n\n### Integration Options\n\n- **MCP Protocol** — Claude Code, Cursor, Codex, any MCP client\n- **HTTP REST API** — n8n, Zapier, Make.com, custom integrations\n- **Docker** — Isolated deployment with Docker or Docker Compose\n\n---\n\n## Quick Start\n\n### Option 1: MCP Mode (Claude Code, Cursor, Codex)\n\n```bash\n# Clone and build locally\ngit clone https://github.com/roomi-fields/notebooklm-mcp.git\ncd notebooklm-mcp\nnpm install \u0026\u0026 npm run build\n\n# Claude Code\nclaude mcp add notebooklm node /path/to/notebooklm-mcp/dist/index.js\n\n# Cursor - add to ~/.cursor/mcp.json\n{\n  \"mcpServers\": {\n    \"notebooklm\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/notebooklm-mcp/dist/index.js\"]\n    }\n  }\n}\n```\n\nThen say: _\"Log me in to NotebookLM\"_ → Chrome opens → log in with Google.\n\n### Option 2: HTTP REST API (n8n, Zapier, Make.com)\n\n```bash\ngit clone https://github.com/roomi-fields/notebooklm-mcp.git\ncd notebooklm-mcp\nnpm install \u0026\u0026 npm run build\nnpm run setup-auth   # One-time Google login\nnpm run start:http   # Start server on port 3000\n```\n\n```bash\n# Query the API\ncurl -X POST http://localhost:3000/ask \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"question\": \"Explain X\", \"notebook_id\": \"my-notebook\"}'\n```\n\n### Option 3: Docker (NAS, Server)\n\n```bash\n# Build and run\ndocker build -t notebooklm-mcp .\ndocker run -d --name notebooklm-mcp -p 3000:3000 -p 6080:6080 -v notebooklm-data:/data notebooklm-mcp\n\n# Authenticate via noVNC\n# 1. Open http://localhost:6080/vnc.html\n# 2. Run: curl -X POST http://localhost:3000/setup-auth -d '{\"show_browser\":true}'\n# 3. Login to Google in the VNC window\n```\n\nSee [Docker Guide](./deployment/docs/08-DOCKER.md) for NAS deployment (Synology, QNAP).\n\n---\n\n## Documentation\n\n| Guide                                                        | Description                               |\n| ------------------------------------------------------------ | ----------------------------------------- |\n| [Installation](./deployment/docs/01-INSTALL.md)              | Step-by-step setup for HTTP and MCP modes |\n| [Configuration](./deployment/docs/02-CONFIGURATION.md)       | Environment variables and security        |\n| [API Reference](./deployment/docs/03-API.md)                 | Complete HTTP endpoint documentation      |\n| [n8n Integration](./deployment/docs/04-N8N-INTEGRATION.md)   | Workflow automation setup                 |\n| [Troubleshooting](./deployment/docs/05-TROUBLESHOOTING.md)   | Common issues and solutions               |\n| [Notebook Library](./deployment/docs/06-NOTEBOOK-LIBRARY.md) | Multi-notebook management                 |\n| [Auto-Discovery](./deployment/docs/07-AUTO-DISCOVERY.md)     | Autonomous metadata generation            |\n| [Docker](./deployment/docs/08-DOCKER.md)                     | Docker and Docker Compose deployment      |\n| [Multi-Interface](./deployment/docs/09-MULTI-INTERFACE.md)   | Run Claude Desktop + HTTP simultaneously  |\n| [Chrome Limitation](./docs/CHROME_PROFILE_LIMITATION.md)     | Profile locking (solved in v1.3.6+)       |\n| [Adding a Language](./docs/ADDING_A_LANGUAGE.md)             | i18n system for multilingual UI support   |\n\n---\n\n## Roadmap\n\nSee [ROADMAP.md](./ROADMAP.md) for planned features and version history.\n\n**Latest releases:**\n\n- **v1.5.3** — Docker deployment with noVNC for visual authentication + NAS support (Synology, QNAP)\n- **v1.5.2** — Notebook scraping from NotebookLM + Bulk delete + Bug fixes\n- **v1.5.1** — Multilingual UI support (FR/EN) with i18n selector system + E2E tests (76 tests)\n- **v1.5.0** — Complete Studio content generation (video, infographic, presentation, data_table) + Notes management + Delete sources\n- **v1.4.0** — Content management (sources, audio, generation) + Multi-account\n\n**Not yet implemented:**\n\n- Discover sources (Web/Drive search with Fast/Deep modes)\n- Edit notes (create, delete, and convert are implemented)\n\n---\n\n## Disclaimer\n\nThis 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.\n\nSee full [Disclaimer](#disclaimer-details) below.\n\n---\n\n## Contributing\n\nFound a bug? Have an idea? [Open an issue](https://github.com/roomi-fields/notebooklm-mcp/issues) or submit a PR!\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.\n\n## License\n\nMIT — Use freely in your projects. See [LICENSE](./LICENSE).\n\n## Author\n\n**Romain Peyrichou** — [@roomi-fields](https://github.com/roomi-fields)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ca name=\"disclaimer-details\"\u003e\u003c/a\u003eFull Disclaimer\u003c/summary\u003e\n\n**About browser automation:**\nWhile 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.\n\n**About CLI tools and AI agents:**\nCLI tools like Claude Code, Codex, and similar AI-powered assistants are powerful but can make mistakes:\n\n- Always review changes before committing or deploying\n- Test in safe environments first\n- Keep backups of important work\n- AI agents are assistants, not infallible oracles\n\nI 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.\n\n\u003c/details\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\nBuilt with frustration about hallucinated APIs, powered by Google's NotebookLM\n\n⭐ [Star on GitHub](https://github.com/roomi-fields/notebooklm-mcp) if this saves you debugging time!\n\n\u003c/div\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froomi-fields%2Fnotebooklm-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froomi-fields%2Fnotebooklm-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froomi-fields%2Fnotebooklm-mcp/lists"}