Skip to main content
Glama
decsters01

MCP Gemini Notebook 2026

by decsters01

MCP Gemini Notebook 2026


Por que este fork existe?

O upstream notebooklm-mcp é excelente — mas no Gemini (2026) o NotebookLM passou a mostrar o raciocínio interno ("Thoughts" / "Defining the Scope…") no mesmo bloco da resposta.

Resultado: o MCP capturava o thinking e devolvia isso como se fosse a resposta final.

Este repositório corrige isso. Validado na prática: perguntas sobre MQL5 com ~200 fontes no notebook voltam com resposta real, citações e estrutura.

Fork honesto do projeto MIT da comunidade. Créditos totais ao PleasePrompto. Detalhes em NOTICE.md.


O que foi corrigido

Patch baseado no issue #74:

Antes

Depois

Retornava "Defining the X…" / "Thoughts"

Espera a geração terminar

Aceitava texto estável cedo demais

Só aceita quando o textarea reativa

Misturava thinking no DOM

Esconde thinking-chain-view na leitura

Prefixo Thoughts vazava na resposta

Header removido no sanitizeAnswer

Arquivo principal: src/notebooklm/chat.ts


O que você consegue fazer

  • Perguntar ao NotebookLM direto do Cursor (ou Claude Code / Codex)

  • Respostas só com base nas fontes do notebook (Gemini)

  • Adicionar fontes por URL ou texto

  • Gerar / baixar Audio Overview

  • Manter sessão (RAG conversacional) entre perguntas

  • Biblioteca local de notebooks (add_notebook, select_notebook, …)


Requisitos

  • Node.js 18+

  • Google Chrome (canal estável)

  • Conta Google com acesso ao NotebookLM


Instalação no Cursor

1) Clone e build

git clone https://github.com/decsters01/mcp-gemini-notebook-2026.git
cd mcp-gemini-notebook-2026
npm install
npm run build

2) Configure o MCP

Em ~/.cursor/mcp.json (Windows: C:\Users\<voce>\.cursor\mcp.json):

{
  "mcpServers": {
    "notebooklm": {
      "command": "node",
      "args": [
        "C:/Users/gabde/Downloads/mcp-gemini-notebook-2026/dist/index.js"
      ]
    }
  }
}

Troque o caminho pelo absoluto da sua máquina. No Windows use barras / ou escape \\.

3) Reinicie o Cursor

Settings → Tools & MCP → o servidor notebooklm deve ficar verde.

4) Login

No chat do Cursor:

Log me in to NotebookLM

Abre o browser → entra com Google → cookies ficam salvos no perfil local.

5) Registre um notebook

  1. Abra o notebook no NotebookLM

  2. Share → "Anyone with the link" → copie a URL

  3. Peça ao agente para registrar com add_notebook

Pronto. Agora: "consulta o notebook sobre X" — e a resposta vem das suas fontes.


Uso rápido (Claude Code / Codex / npx)

# Claude Code
claude mcp add notebooklm -- node /caminho/para/mcp-gemini-notebook-2026/dist/index.js

# Ou via bin local após npm link
npm link
notebooklm-mcp

Fluxo recomendado

get_health          → autenticado?
setup_auth          → login Google (1x)
add_notebook        → cola a URL pública
select_notebook     → define o padrão
ask_question        → pesquisa grounded
add_source          → url | text

Dica de ouro: peça respostas com source_format: "footnotes" quando for mostrar citação pra humano.


Prompt de sistema (opcional, ~2000 chars)

No NotebookLM → personalizar instruções → cole algo assim:

Você é a fonte de verdade deste notebook para um agente de IA (Cursor).
Responda SÓ com base nas fontes. Se não estiver nas fontes: "Não encontrado nas fontes."
Formato: (1) resposta direta (2) detalhamento (3) evidências com fontes (4) lacunas.
Tom: técnico, PT-BR, sem enrolação. Cite conflitos entre fontes quando existirem.

Limites (conta free Google)

  • ~50 queries/dia no NotebookLM

  • ~50 fontes por notebook (free)

  • Sessão MCP idle ~15 min

Pro tip: use conta secundária se for experimentar muito.


Estrutura

src/
  notebooklm/
    chat.ts        ← patch #74 (thinking vs resposta final)
    selectors.ts
    citations.ts
    sources.ts
    audio.ts
  session/
  tools/
dist/              ← build (o Cursor aponta aqui)

Créditos

  • Upstream: PleasePrompto/notebooklm-mcp — MIT

  • Patch community 2026: correção do extended-thinking do Gemini

  • Inspiração nos comentários do issue #74 (heurística + gate de geração + skip estrutural no DOM)

Se o upstream publicar o fix oficial, este fork pode ser arquivado ou rebaseado — e isso é ótimo.


Licença

MIT — use, fork, melhore, compartilhe.