NotebookLM MCP Server logo

NotebookLM MCP Server

Volle Kontrolle über Google Gemini Notebook (ehemals NotebookLM) für Ihre KI-Agenten: fundierte Antworten, Deep Research, Podcasts, Quizze und mehr — 47 Tools, null Halluzinationen.

English • Español • Français • Português • Deutsch

TypeScript MCP npm version

Windows macOS Linux

Claude Code Antigravity Gemini CLI Cursor Windsurf Cline

Installation • Authentifizierung • KI-Client verbinden • Tool-Referenz • Rezepte • Entwicklung

--- ## 💡 Was ist das? Googles **Gemini Notebook** (im Juli 2026 von NotebookLM umbenannt) ist die beste Engine für fundierte Antworten am Markt: Es antwortet ausschließlich auf Basis der bereitgestellten Quellen — mit Zitaten. Dieser MCP-Server gibt diese Stärke an Ihre KI-Agenten weiter — Claude, Gemini, Antigravity, Cursor und jeden anderen MCP-Client —, damit sie Notizbücher aufbauen, Deep Research durchführen, Podcasts, Videos, Quizze, Karteikarten, Berichte und Mindmaps generieren, Notizen anlegen und die Ergebnisse mit dem Team teilen können. **Alles programmatisch, mit null Halluzinationen.** > [!NOTE] > **NotebookLM heißt jetzt Gemini Notebook.** Google hat das Produkt am 16. Juli 2026 umbenannt (siehe [notebook.google](https://notebook.google/)). Gleiches Produkt, gleiche Notizbücher, gleiche API-Oberfläche — dieser Server funktioniert unverändert weiter, und das npm-Paket behält seinen Namen `notebooklm-mcp-server`. ## 🚀 Installation ### Option 1 — Globale Installation (empfohlen) ```bash npm install -g notebooklm-mcp-server ``` > [!NOTE] > Der Server prüft beim Start auf Updates und hält sich automatisch aktuell. ### Option 2 — Ohne Installation mit NPX ```bash npx -y notebooklm-mcp-server auth # authenticate npx -y notebooklm-mcp-server start # run the server ``` ## 🔑 Authentifizierung 1. Den interaktiven Login starten (öffnet ein Chromium-Fenster): ```bash npx notebooklm-mcp-server auth ``` 2. Mit dem Google-Konto anmelden. Sobald die Notizbuchliste erscheint, werden die Sitzungs-Cookies (einschließlich Googles rotierendem `__Secure-1PSIDTS`-Token) erfasst und in `~/.notebooklm-mcp/auth.json` gespeichert. 3. Fertig — der Server lädt die Sitzung automatisch und aktualisiert das rotierende Token selbstständig. > [!TIP] > Falls die Sitzung einmal abläuft, einfach `npx notebooklm-mcp-server auth` erneut im Terminal ausführen und anschließend das MCP-Tool `refresh_auth` aufrufen (oder schlicht den Client neu starten), um die neuen Cookies zu übernehmen — ganz ohne Neukonfiguration. ## ⚡ KI-Client verbinden ### 🤖 Claude Code ```bash claude mcp add notebooklm -- npx -y notebooklm-mcp-server start ``` ### 💬 Claude Desktop In `claude_desktop_config.json` eintragen (Settings → Developer → Edit Config): ```json { "mcpServers": { "notebooklm": { "command": "npx", "args": ["-y", "notebooklm-mcp-server", "start"] } } } ``` ### 🌌 Antigravity CLI Die Antigravity-CLI verwaltet MCP-Server über eine JSON-Konfigurationsdatei: - **Global:** `~/.gemini/config/mcp_config.json` - **Pro Workspace:** `.agents/mcp_config.json` im Projekt ```json { "mcpServers": { "notebooklm": { "command": "npx", "args": ["-y", "notebooklm-mcp-server", "start"] } } } ``` Anschließend `/mcp` im Antigravity-Prompt-Panel eingeben, um den **MCP Manager** zu öffnen: Verbindungsstatus-Ring prüfen, Konfiguration neu laden oder Logs einsehen — ganz ohne Neustart. Die Agenten können nun in jeder Mission echte Quellen zitieren. ### 🖥️ Antigravity IDE Die IDE liest dieselben Konfigurationsdateien wie die CLI (`~/.gemini/config/mcp_config.json` oder `.agents/mcp_config.json`). Alternativ das Panel **MCP Store** öffnen, *Add custom server* wählen und denselben JSON-Schnipsel einfügen. Nach dem Neuladen der Serverliste erscheinen die NotebookLM-Tools im Werkzeugkasten des Agenten. ### 💎 Gemini CLI ```bash gemini mcp add notebooklm --scope user -- npx -y notebooklm-mcp-server start ``` ### ⌨️ Cursor In `.cursor/mcp.json` im Projekt eintragen (oder global in `~/.cursor/mcp.json`): ```json { "mcpServers": { "notebooklm": { "command": "npx", "args": ["-y", "notebooklm-mcp-server", "start"] } } } ``` ### 🏄 Windsurf Denselben `mcpServers`-Block in `~/.codeium/windsurf/mcp_config.json` eintragen. ### 🧩 VS Code (Cline) In Cline: **MCP Servers → Configure** öffnen und den oben gezeigten `mcpServers`-Block hinzufügen. ## 📖 Tool-Referenz 47 Tools, gruppiert nach Aufgabe. Die vollständigen Parameter-Signaturen stehen in [docs/TOOLS.md](./docs/TOOLS.md). ### 📒 Notizbücher | Tool | Beschreibung | |------|-------------| | `notebook_list` | Alle Notizbücher mit Quellen und Metadaten auflisten | | `notebook_create` | Ein neues Notizbuch erstellen | | `notebook_get` | Details und Quellen-IDs eines Notizbuchs abrufen | | `notebook_rename` | Ein Notizbuch umbenennen | | `notebook_delete` | Ein Notizbuch löschen (erfordert `confirm`) | | `notebook_summarize` | KI-Notizbuchguide: Zusammenfassung + vorgeschlagene Fragen | | `prompts_suggest` | KI-vorgeschlagene Prompts zu den Quellen | ### 🔗 Freigabe | Tool | Beschreibung | |------|-------------| | `notebook_share` | Öffentlichen Link umschalten und/oder Mitwirkende per E-Mail verwalten | | `notebook_share_status` | Die aktuelle Freigabekonfiguration auslesen | ### 🖇️ Quellen | Tool | Beschreibung | |------|-------------| | `notebook_add_url` | Eine Website oder ein YouTube-Video als Quelle hinzufügen | | `notebook_add_text` | Eingefügten Text als Quelle hinzufügen | | `notebook_add_drive` | Ein Google-Drive-Dokument als Quelle hinzufügen | | `notebook_add_local_file` | Eine lokale PDF- / TXT- / Markdown-Datei hochladen | | `source_get_guide` | KI-Leitfaden für eine Quelle: Zusammenfassung + Kernthemen | | `source_rename` | Eine Quelle umbenennen | | `source_check_freshness` | Prüfen, ob eine URL-/Drive-Quelle neuere Inhalte hat | | `source_sync` | Eine Drive-Quelle auf den neuesten Inhalt synchronisieren | | `source_delete` | Eine Quelle löschen (erfordert `confirm`) | ### 💬 Chat | Tool | Beschreibung | |------|-------------| | `notebook_query` | Fragen zu den Quellen stellen, mit Zitaten | | `chat_history_get` | Die Frage-Antwort-Runden der letzten Unterhaltung auslesen | | `chat_history_delete` | Den Chatverlauf löschen (erfordert `confirm`) | | `chat_configure` | Chat-Persona (Standard / Lernbegleiter / benutzerdefiniert) und Antwortlänge festlegen | ### 🔍 Recherche | Tool | Beschreibung | |------|-------------| | `research_start` | Web- oder Drive-Recherche starten (schnell ≈30 s / tief ≈5 min) | | `research_poll` | Recherchefortschritt und gefundene Quellen prüfen | | `research_import` | Die gefundenen Quellen in das Notizbuch importieren | ### 🎨 Studio | Tool | Beschreibung | |------|-------------| | `audio_overview_create` | Audiozusammenfassung im Podcast-Stil (Formate: Deep Dive, Kurzfassung, Kritik, Debatte) | | `video_overview_create` | Videozusammenfassung (9 visuelle Stile, von Whiteboard bis Anime) | | `report_create` | Schriftlicher Bericht aus den Quellen | | `flashcards_create` | Karteikarten (Optionen für Anzahl und Schwierigkeitsgrad) | | `quiz_create` | Interaktives Quiz (Optionen für Anzahl und Schwierigkeitsgrad) | | `infographic_create` | Infografik (Quer- / Hoch- / Quadratformat) | | `slide_deck_create` | Foliensatz | | `data_table_create` | Strukturierte Datentabelle | | `studio_poll` | Generierungsstatus aller Artefakte prüfen | | `studio_delete` | Ein Studio-Artefakt löschen | ### 📦 Artefakte | Tool | Beschreibung | |------|-------------| | `artifact_content_get` | Generierte Inhalte abrufen (Quiz-/Karteikarten-HTML, Mindmap-JSON) | | `artifact_rename` | Ein Artefakt umbenennen | | `artifact_export` | Ein Artefakt nach Google Drive exportieren (Docs oder Sheets) | ### 📝 Notizen & Mindmaps | Tool | Beschreibung | |------|-------------| | `note_create` | Eine Notiz erstellen | | `note_list` | Alle Notizen auflisten | | `note_update` | Inhalt/Titel einer Notiz aktualisieren | | `note_delete` | Eine Notiz löschen (erfordert `confirm`) | | `mind_map_generate` | Ein Mindmap-JSON aus den Quellen generieren | | `mind_map_save` | Eine Mindmap im Notizbuch speichern | | `mind_map_list` | Gespeicherte Mindmaps auflisten | | `mind_map_delete` | Eine Mindmap löschen | ### ⚙️ System | Tool | Beschreibung | |------|-------------| | `refresh_auth` | Sitzungs-Cookies nach erneutem `auth`-Lauf von der Festplatte neu laden | ## 🧪 Rezepte Echte Prompts zum direkten Einfügen in jeden verbundenen Agenten — die passenden Tools wählt er selbst aus. ### 🎙️ Von der Forschungsfrage zum Podcast > *„Recherchiere per Deep Research den neuesten Stand zu Festkörperbatterien, baue ein Notizbuch namens ‚Solid State 2026' mit den besten Quellen und generiere eine kurze Audiozusammenfassung auf Englisch. Gib mir den Link, sobald sie fertig ist."* Der Agent verkettet `notebook_create` → `research_start(mode: deep)` → `research_poll` → `research_import` → `audio_overview_create(format: brief)` → `studio_poll` und liefert die Notizbuch-URL mit dem fertigen Podcast zurück. ### 🎓 Lernpaket aus den eigenen PDFs > *„Nimm die drei PDFs in ./lectures, lege sie in ein neues Notizbuch und erstelle mir ein schweres Quiz plus Karteikarten zu den Kernkonzepten. Zeig mir die Quizfragen hier an."* Der Agent führt `notebook_add_local_file` für jedes PDF aus, dann `quiz_create(difficulty: hard)` + `flashcards_create`, pollt mit `studio_poll` und extrahiert die Fragen mit `artifact_content_get`. ### 👥 Team-Briefing, geteilt > *„Baue aus diesen fünf Links ein Briefing-Notizbuch über unseren Wettbewerber, verfasse einen Bericht, exportiere ihn nach Google Docs und teile das Notizbuch mit ana@example.com als Betrachterin."* Der Agent verkettet `notebook_add_url` ×5 → `report_create` → `studio_poll` → `artifact_export(format: docs)` → `notebook_share(user_email, user_role: viewer)` — und die Kollegin findet das Notizbuch samt Doc schon vor. ## 🛠️ Fehlerbehebung | Symptom | Lösung | |---------|-----| | `auth` meldet, dass die API deine Cookies direkt nach dem Login abgelehnt hat | Dein Google-Konto erzwingt **Device Bound Session Credentials (DBSC)** — bei Workspace und den meisten privaten Konten standardmäßig aktiv. DBSC bindet die Sitzung an einen geräteinternen Schlüssel, sodass aus dem Browser exportierte Cookies von der API abgelehnt werden. Cookie-Extraktions-Clients können das nicht umgehen; nutze ein Google-Konto ohne DBSC. | | `Authentication expired` direkt nach dem Login | Auf ≥ 3.0.8 aktualisieren — ältere Versionen erfassten Googles rotierendes `__Secure-1PSIDTS`-Token nicht. Der Server erfasst und erneuert es jetzt automatisch. | | `Authentication failed` nach wochenlanger Nutzung | Google-Sitzungen laufen irgendwann ab. `npx notebooklm-mcp-server auth` ausführen und anschließend das Tool `refresh_auth` aufrufen. | | Studio-Generierung hängt bei `pending` | Lange Quellen brauchen ihre Zeit — weiter mit `studio_poll` abfragen; Audio/Video kann mehrere Minuten dauern. | | RPC-Fehler nach einem Google-Update | Google rotiert gelegentlich interne Build-Labels. Das Paket aktualisieren; falls das Problem bestehen bleibt, bitte ein Issue eröffnen. | ## 🧑‍💻 Entwicklung ```bash git clone https://github.com/moodRobotics/notebooklm-mcp-server.git cd notebooklm-mcp-server npm install npm run build npm run typecheck ``` Architektur-Notizen stehen in [docs/ARCHITECTURE.md](./docs/ARCHITECTURE.md), die Roadmap in [docs/ROADMAP.md](./docs/ROADMAP.md). ## 🌐 Lokalisierung Diese README ist auf [English](./README.md), [Español](./README.es.md), [Français](./README.fr.md), [Português](./README.pt.md) und [Deutsch](./README.de.md) verfügbar. Wer eine Version bearbeitet, hält die anderen bitte synchron (`npm run docs:check`). ## 📄 Lizenz MIT — Entwickelt mit ❤️ von [moodRobotics](https://github.com/moodRobotics). > [!IMPORTANT] > Dies ist ein inoffizielles Community-Projekt. Es ist weder mit Google verbunden noch von Google unterstützt. Es basiert auf per Reverse Engineering ermittelten internen APIs, die sich ohne Vorankündigung ändern können; die Nutzung sollte mit einem Google-Konto erfolgen, dessen Automatisierung unbedenklich ist.