notebooklm MCP

Converse com o Google NotebookLM via MCP ou API REST HTTP para obter respostas sem alucinações a partir dos seus documentos. Perfeito para fluxos de trabalho n8n e automação.

NotebookLM Web Importer

Importe páginas da web e vídeos do YouTube para o NotebookLM com um clique. Confiado por mais de 200.000 usuários.

Instalar extensão do Chrome

Documentação

NotebookLM REST API + servidor MCP

Automatize o Google NotebookLM em escala. API REST HTTP com 33 endpoints para n8n / Zapier / Make / curl, além de um servidor MCP para Claude Code / Cursor / Codex. Q&A com citações, geração completa do Studio (áudio · vídeo · infográfico · relatório · apresentação · tabela de dados), rotação multi-contas com reautenticação automática em contas pessoais e do Google Workspace.

v3.2.0 — conteúdo gerado finalmente pode ser excluído (content_delete): o endpoint havia sido declarado e não era chamado por nada desde a v3, então os notebooks acumulavam todos os rascunhos já solicitados. Baseia-se na 3.1.x, onde o conteúdo gerado parou de voltar no idioma errado — a localidade da interface estava sobrescrevendo o argumento language em ambos os transportes, silenciosamente, enquanto reportava sucesso. Também: leitura do texto indexado completo de uma fonte (source_read, paginado), rótulos de fonte funcionais e recusas de RPC reportadas como recusas em vez de um ID de endpoint rotacionado. Construído sobre um transporte duplo — a API RPC interna batchexecute (10-100× mais rápida que scraping, imune a reformulações da interface) com o navegador Playwright como fallback automático, ambos enviados permanentemente. Testado em lote em execuções noturnas de 1 000+ perguntas. Veja o changelog. Compare com PleasePrompto/notebooklm-mcp para saber quando este projeto é a escolha certa (API REST, Studio completo, reautenticação automática).

Nota (julho de 2026): O Google renomeou NotebookLM para Gemini Notebook. É o mesmo produto, os links existentes redirecionam e este projeto aciona o mesmo serviço subjacente — o caminho do navegador foi atualizado para o novo DOM na v2.3.0 e o caminho RPC na v3.0.0. O pacote e o repositório mantêm o nome notebooklm.

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

MCP Claude Code n8n GitHub MCP Toplist


Projeto não oficial — bom saber antes de começar

Este projeto não é afiliado ao Google. Ele fala com os mesmos endpoints batchexecute que o aplicativo web do NotebookLM usa, com fallback de navegador quando eles mudam. Eles não são documentados, então podem mudar sem aviso — quando isso acontece, nós enviamos uma correção, como fizemos para todas as mudanças até agora.

Duas notas práticas: use uma conta Google dedicada para automação e espere que as cotas do próprio NotebookLM se apliquem em alto volume. Veja Disclaimer para o texto completo.


O Que Você Pode Construir

🔗 Pipelines de automação sem código — A API REST com 33 endpoints significa que o NotebookLM se torna uma etapa no n8n, Zapier, Make ou um simples curl no cron. Sem agente, sem cliente MCP, sem Node na sua stack — apenas HTTP. Esta é a metade que a maioria das bibliotecas do NotebookLM não tem.

🤖 Ferramentas para agentes — O mesmo mecanismo via MCP para Claude Code, Cursor e Codex, com uma skill inclusa que prepara o agente sobre formatos de citação, o padrão de lote ciente de cotas diárias e a seleção de transporte.

📚 Pesquisa em volume — Rotação multi-contas com reautenticação automática, construída para execuções noturnas de 1 000+ perguntas em vários notebooks sem supervisão.

🎙️ Geração completa do Studio — Resumos em áudio, vídeo, infográficos, relatórios, apresentações, tabelas de dados, além de flashcards, quizzes e mapas mentais — gerados e baixados programaticamente.

Casos de Uso e Receitas

O NotebookLM é um mecanismo fundamentado: o Gemini lê suas fontes e responde a partir delas, com citações. O padrão vencedor é deixá-lo fazer a leitura cara enquanto sua própria stack cuida da orquestração e da última milha.

Gaste menos tokens — transfira a leitura

  • 🪙 Camada de síntese com zero tokens — Coloque 30 documentos em um notebook, deixe o Gemini fazer a análise pesada e gaste o contexto do seu agente apenas no polimento final. O raciocínio acontece no servidor; seu agente apenas orquestra (add_notebook → source_add → notebook_ask).
  • 💾 Cache de respostas que você pode reler offline — vault_batch grava cada resposta em disco como JSON estruturado contra um schema publicado, então uma execução em lote se torna um corpus que você pode pesquisar, comparar, reindexar ou alimentar em uma camada de recuperação — sem reconsultar e regastar cota.

Conecte a coisas que não são agentes

  • ⚙️ NotebookLM como etapa no n8n / Zapier / Make — Como fala HTTP puro, uma resposta com citações se torna um nó em um fluxo de trabalho: um envio de formulário dispara uma pergunta, a resposta citada chega em uma planilha, uma mensagem no Slack ou um banco de dados. Sem runtime de agente envolvido.
  • 📄 Pipeline de ingestão de documentos — Monitore uma pasta ou uma caixa de entrada, envie novos PDFs e URLs como fontes e faça um conjunto fixo de perguntas contra eles a cada chegada.

Respostas fundamentadas com rastro documental

  • 🔍 Citações com o texto real da fonte — As respostas vêm com nomes das fontes e os trechos citados nos quais se baseiam, extraídos do painel de citações — para que uma afirmação possa ser verificada, não apenas atribuída.
  • 🎓 Revisão de literatura em escala de tese — Processe 100+ perguntas de pesquisa em vários notebooks, alterne contas conforme as cotas diárias acabam e retome de onde parou. Construído para, e testado exatamente nisso.

Extraia artefatos de volta

  • 🔁 Um conjunto de fontes, todos os formatos — Transforme um único notebook em um podcast, um vídeo, uma apresentação de slides, um relatório, um quiz e um mapa mental, e baixe tudo localmente.

Em Uso no Mundo Real

Implantações reais, não hipotéticas.

  • 📚 Uma revisão de literatura de doutorado em escala de lote — O projeto foi construído para, e é continuamente testado em, execuções noturnas de 1 000+ perguntas de pesquisa distribuídas em vários notebooks: a rotação multi-contas assume quando uma cota diária acaba, cada resposta é gravada em disco com suas citações, e uma execução interrompida retoma em vez de recomeçar. O padrão de lote em vault_batch existe porque uma tese precisava dele.

  • 🔌 Substituindo um mecanismo RAG pela API REST — musnymubarak/Calim_Doc trocou um mecanismo de recuperação baseado em Gemini pela API HTTP deste projeto, executando-o como um serviço Docker (notebooklm:3000) atrás de uma camada completa de cliente e worker. Uma boa ilustração da metade REST: sem runtime de agente, sem cliente MCP — o NotebookLM simplesmente se tornou um serviço de backend que o aplicativo Python deles chama.

Construiu algo com isso? Abra uma issue — esta seção é para o trabalho de outras pessoas.

Recursos

Q&A com Citações

  • Faça perguntas ao NotebookLM e obtenha respostas precisas com citações
  • Extração de citações de fontes com 5 formatos: nenhum, inline, notas de rodapé, json, expandido (97% de taxa de sucesso em trechos)
  • Gerenciamento de sessões para conversas de múltiplas voltas com reautenticação automática na expiração da sessão

Geração de Conteúdo

Gere vários tipos de conteúdo a partir das fontes do seu notebook:

Tipo de ConteúdoFormatosOpções
Resumo em ÁudioDiscussão estilo podcastIdioma (80+), instruções personalizadas
VídeoBreve, Explicativo6 estilos visuais, idioma, instruções personalizadas
InfográficoHorizontal, VerticalIdioma, instruções personalizadas
RelatórioResumo, DetalhadoIdioma, instruções personalizadas
ApresentaçãoVisão geral, DetalhadaIdioma, instruções personalizadas
Tabela de DadosSimples, DetalhadaIdioma, instruções personalizadas
FlashcardsCartões de estudoIdioma, instruções personalizadas
QuizPerguntas de avaliaçãoIdioma, instruções personalizadas
Mapa MentalGrafo de nós interativoSalvo no notebook

Estilos Visuais de Vídeo: sala de aula, documentário, animado, corporativo, cinematográfico, minimalista

Idioma do conteúdo gerado: passe language para qualquer gerador — um código BCP-47 (es, ja, pt_BR, zh_Hans) ou um nome em inglês ou no próprio idioma ("Spanish", "Español"). 81 idiomas são aceitos, e um não reconhecido é recusado em vez de silenciosamente trocado por outro. Defina um padrão com NOTEBOOKLM_CONTENT_LANGUAGE; ele é deliberadamente independente de NOTEBOOKLM_UI_LOCALE, que apenas escolhe o idioma da interface que o fallback do navegador lê.

Flashcards e quizzes são gerados via generate_study_aid; mapas mentais via generate_mind_map. A v3 também adiciona share_notebook, manage_labels e research_sources (descoberta de fontes web/Drive) — veja o changelog.

Download de Conteúdo

  • Baixar Áudio — arquivos de áudio WAV
  • Baixar Vídeo — arquivos de vídeo MP4
  • Baixar Infográfico — arquivos de imagem PNG
  • Conteúdo baseado em texto (relatório, apresentação, tabela_de_dados) é retornado na resposta da API
  • Excluir conteúdo gerado (content_delete) — até agora um notebook acumulava todos os rascunhos que alguém já pediu, sem como remover um exceto pela interface web

Gerenciamento de Fontes

  • Adicionar fontes: Arquivos (PDF, TXT, DOCX), URLs, Texto, vídeos do YouTube, Google Drive
  • Listar fontes: Cada fonte com seu ID e título (source_list)
  • Ler uma fonte por completo (source_read): o texto exato que o NotebookLM indexou — sobre o que ele realmente raciocina, que a interface web só mostra em fragmentos. Cite uma fonte verbatim, verifique o que um PDF realmente rendeu ou entregue o material bruto a outra ferramenta. Nomeie a fonte em vez do ID se preferir; um nome ambíguo é recusado em vez de adivinhado. Fontes longas chegam uma página por vez, com uma instrução explícita para buscar a próxima — ou paginate: false para o documento inteiro de uma vez.

Biblioteca de Notebooks

  • Gerenciamento multi-notebooks com validação e seleção inteligente
  • Autodescoberta: Gere metadados automaticamente via consultas ao NotebookLM
  • Pesquisar notebooks por palavra-chave no nome, descrição ou tópicos
  • Extrair notebooks: Liste todos os notebooks do NotebookLM com IDs e nomes
  • Exclusão em massa: Exclua vários notebooks de uma vez

Contas e Localização

  • Contas pessoais e do Google Workspace — reconhece ambos os hosts do NotebookLM (notebooklm.google.com e o alias do Workspace notebook.google.com), para que sessões do Workspace autentiquem corretamente em vez de ficarem em loop em "sessão expirada"
  • Ciente do idioma da interface — opera o NotebookLM esteja a interface em inglês, francês, alemão ou japonês (en · fr · de · ja); adicione um idioma em um único arquivo JSON

Opções de Integração

  • Protocolo MCP — Claude Code, Cursor, Codex, qualquer cliente MCP
  • Skill de Agente — inclui uma skill notebooklm empacotada (também autônoma: roomi-fields/notebooklm-skill) que ensina ao agente formatos de citação, o padrão de lote ciente de cotas diárias e quando usar cada transporte
  • API REST HTTP — n8n, Zapier, Make.com, integrações personalizadas
  • Docker — Implantação isolada com Docker ou Docker Compose
  • Camada de recuperação RTFM — /batch-to-vault grava respostas com citações como markdown + arquivos auxiliares JSON (schema nblm-answer-v1), indexáveis por RTFM (FTS5 + semântico) para consultas offline ilimitadas. Ideal para fluxos de trabalho acadêmicos / SOTA. Guia.

Início Rápido

Opção 0 — Marketplace do Claude Code (uma linha, recomendado para usuários do Claude Code)

A maneira mais rápida de colocar o NotebookLM no Claude Code. Distribuído via o marketplace roomi-fields/claude-plugins junto com o RTFM (o companheiro de recuperação — veja o guia de integração RTFM):

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

Isso registra o servidor MCP, executa npx -y @roomi-fields/notebooklm-mcp@<pinned-version> automaticamente (Node ≥ 18 necessário) e permite atualizar com dois comandos quando uma nova versão for lançada: /plugin marketplace update roomi-fields e depois /reload-plugins. Em seguida, execute npx -y -p @roomi-fields/notebooklm-mcp notebooklm-mcp-setup-auth uma vez em um terminal para fazer login no Google (um Chrome visível abre). Para instalar o RTFM ao mesmo tempo: /plugin install rtfm@roomi-fields.

Opção 1 — API REST HTTP (n8n, Zapier, Make, curl, qualquer cliente HTTP)

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"}'

A superfície completa é de 33 endpoints documentados — veja a referência da API REST. Para lotes noturnos de 1.000+ perguntas, veja o padrão de lote.

Opção 2 — Modo MCP (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"]
    }
  }
}

Faça login uma vez — em um terminal, não pelo assistente. Execute o login interativo do Google como um comando; uma janela visível do Chrome abre, você faz login e a sessão salva é então reutilizada pelo servidor MCP:

npm run setup-auth          # from a clone (Option 2 above)
notebooklm-mcp setup-auth   # from a global install (npm i -g @roomi-fields/notebooklm-mcp)

Faça o login em um terminal em vez de pedir ao assistente "me faça login": alguns clientes MCP stdio (ex.: Claude Desktop) limitam a duração das chamadas de ferramenta e cortam o login interativo de até 10 minutos antes que você termine de entrar (veja issue #27).

Opção 3 — Docker (NAS, servidor, 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

Veja o Guia Docker para implantação em NAS (Synology, QNAP).


Documentação

Site completo de documentação: https://roomi-fields.github.io/notebooklm-mcp/ · Especificação OpenAPI 3.1

GuiaDescrição
InstalaçãoConfiguração passo a passo para modos HTTP e MCP
ConfiguraçãoVariáveis de ambiente e segurança
Referência da API RESTDocumentação completa dos endpoints HTTP (33 endpoints)
Execute 1.000 perguntas durante a noitePadrão de lote de produção com reautenticação automática e rotação
Integração RTFM — cache como vault pesquisávelPadrão de pipeline: NotebookLM como ingestão única, RTFM como camada de recuperação. Endpoint /batch-to-vault, schema nblm-answer-v1.
Integração n8nConfiguração de automação de fluxos de trabalho
Solução de problemasProblemas comuns e soluções
Biblioteca de notebooksGerenciamento de múltiplos notebooks
Descoberta automáticaGeração autônoma de metadados
Gerenciamento de conteúdoÁudio, vídeo, infográfico, relatório, apresentação
Rotação de múltiplas contasMúltiplas contas com reautenticação automática TOTP
DockerImplantação com Docker e Docker Compose
Multi-interfaceExecute Claude Desktop + HTTP simultaneamente
Comparar com PleasePrompto v2.0.0Matriz de recursos vs. o servidor upstream somente MCP
Limitação do perfil do ChromeBloqueio de perfil (resolvido na v1.3.6+)
Adicionar um idiomaSistema i18n para suporte a UI multilíngue

Roadmap

Veja ROADMAP.md para recursos planejados e histórico de versões.

Últimas versões:

  • v3.0.1 — Login interativo do Google como comando CLI de primeira classe (notebooklm-mcp setup-auth) para instalações globais / clientes stdio; setup_auth / re_auth aceitam um headless de nível superior (#27)
  • v3.0.0 — Grande refatoração: transporte duplo (API RPC interna batchexecute do NotebookLM com fallback automático de DOM), 10-100× mais rápido e imune a reformulações de UI; 5 novas ferramentas (compartilhamento de notebooks, auxílios de estudo, mapas mentais, rótulos de fontes, pesquisa na web)
  • v2.3.0 — Suporte completo ao rebranding "Gemini Notebook" do Google: criar / listar / renomear / excluir, fontes e cada tipo de geração do Studio re-verificado de ponta a ponta (#23, #21)
  • v2.2.1 — Reconhece ambos os hosts do NotebookLM para que contas do Google Workspace autentiquem (o alias notebook.google.com); a listagem de notebooks não desperdiça mais ~30s após o rebranding "Gemini Notebook"; o banner HTTP lê a versão real. Diagnóstico + correção por @kpietkaa (#19)
  • v2.2.0 — Corrige a detecção de novas respostas que expira quando uma resposta repete uma anterior (identidade baseada em posição, não hash de texto); desligamento gracioso na desconexão stdio; localidade de UI japonesa
  • v2.1.1 — Seletores de UI tailandeses para notebook_create (parcial, #18)
  • v2.1.0 — Ferramentas MCP note_list e note_get (#17)
  • v2.0.4 — Seletores de UI alemães (fecha #14)
  • v2.0.0 — Ferramentas renomeadas para uma árvore com namespaces (notebook_ask, source_add, session_list, server_health, vault_batch…) em 9 namespaces; tools/list anuncia apenas os nomes canônicos. Compatível com versões anteriores — os nomes planos legados ainda funcionam como aliases, então scripts e configurações existentes continuam funcionando. Também adiciona MCP annotations (dicas somente leitura / destrutivo / idempotente / mundo aberto) e outputSchema + structuredContent em cada ferramenta. Publicado no registro Smithery.
  • v1.7.0 — batch_to_vault exposto como ferramenta MCP de primeira classe (paridade com o endpoint HTTP, sem necessidade de servidor localhost); o helper compartilhado runBatchToVault deduplica o loop em ambos os transportes
  • v1.6.0 — Endpoint /batch-to-vault + integração RTFM (JSON Schema nblm-answer-v1 publicado em schemas.roomi-fields.com/nblm-answer-v1.json) para armazenar respostas do NotebookLM como um vault markdown pesquisável
  • v1.5.8 — Adaptações de UI do NotebookLM 2026 (saneamento de ícones-rótulos, recuperação do painel de Discussão, detecção de fontes baseada em contagem) — PR #5 por @KhizarJamshaidIqbal
  • v1.5.7 — Correção do seletor de extração de citações (.highlighted) e build multi-estágio do Docker — PR #1 por @JulienCANTONI
  • v1.5.6 — Reescrita principal da extração de citações (taxa de sucesso de 97%), autenticação verificada no navegador na inicialização, sincronização automática de perfil
  • v1.5.0 — Geração completa de conteúdo do Studio (vídeo, infográfico, apresentação, data_table) + gerenciamento de Notas + exclusão de fontes
  • v1.4.0 — Gerenciamento de conteúdo (fontes, áudio, geração) + múltiplas contas

Versões intermediárias de correção e endurecimento (1.5.x–1.7.x) estão no CHANGELOG completo.

Ainda não implementado:

  • Descobrir fontes (pesquisa Web/Drive com modos Rápido/Profundo)
  • Editar notas (criar, excluir e converter estão implementados)

Aviso legal

Esta ferramenta automatiza interações com o navegador no NotebookLM. Use uma conta Google dedicada para automação. Ferramentas CLI como o Claude Code podem cometer erros — sempre revise as alterações antes de implantar.

Veja o Aviso legal completo abaixo.


Contribuindo

Encontrou um bug? Tem uma ideia? Abra uma issue ou envie um PR!

Veja CONTRIBUTING.md para diretrizes.

Licença

MIT — Use livremente em seus projetos. Veja LICENSE.

Autor

Romain Peyrichou — @roomi-fields

Agradecimentos

Obrigado a todos que contribuíram com código, ideias e relatórios de bugs:

  • Khizar Jamshaid Iqbal — @KhizarJamshaidIqbal, correções de seletores de UI 2025, script de diagnóstico, limpeza de PII
  • Kazik Pietka — @kpietkaa, suporte ao rebranding notebook.google.com
  • Rui Ruiberriz — @Excauboi, hl=<uiLocale> em URLs de aplicativos + fallback de raspagem por clique
  • @he0xwhale — ferramentas MCP note_list / note_get
  • @eminsnow — nomes canônicos de ferramentas (_ sobre .)
  • Julien Cantoni — @JulienCANTONI

Aviso legal completo

Sobre automação de navegador: Embora eu tenha incorporado recursos de humanização (velocidades de digitação realistas, atrasos naturais, movimentos de mouse), não posso garantir que o Google não detectará ou sinalizará o uso automatizado. Use uma conta Google dedicada para automação.

Sobre ferramentas CLI e agentes de IA: Ferramentas CLI como Claude Code, Codex e assistentes similares com IA são poderosas, mas podem cometer erros:

  • Sempre revise as alterações antes de confirmar ou implantar
  • Teste em ambientes seguros primeiro
  • Mantenha backups do trabalho importante
  • Agentes de IA são assistentes, não oráculos infalíveis

Construí esta ferramenta para mim e a compartilho esperando que ajude outros, mas não posso me responsabilizar por quaisquer problemas que possam ocorrer. Use por sua conta e risco.


Construído com frustração sobre APIs alucinadas, alimentado pelo NotebookLM do Google

⭐ Dê uma estrela no GitHub se isso economizar seu tempo de depuração!