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 ChromeDocumentaçã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 argumentolanguageem 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 internabatchexecute(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 comPleasePrompto/notebooklm-mcppara 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.
Projeto não oficial — bom saber antes de começar
Este projeto não é afiliado ao Google. Ele fala com os mesmos endpoints
batchexecuteque 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_batchgrava 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_batchexiste porque uma tese precisava dele. -
🔌 Substituindo um mecanismo RAG pela API REST —
musnymubarak/Calim_Doctrocou 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údo | Formatos | Opções |
|---|---|---|
| Resumo em Áudio | Discussão estilo podcast | Idioma (80+), instruções personalizadas |
| Vídeo | Breve, Explicativo | 6 estilos visuais, idioma, instruções personalizadas |
| Infográfico | Horizontal, Vertical | Idioma, instruções personalizadas |
| Relatório | Resumo, Detalhado | Idioma, instruções personalizadas |
| Apresentação | Visão geral, Detalhada | Idioma, instruções personalizadas |
| Tabela de Dados | Simples, Detalhada | Idioma, instruções personalizadas |
| Flashcards | Cartões de estudo | Idioma, instruções personalizadas |
| Quiz | Perguntas de avaliação | Idioma, instruções personalizadas |
| Mapa Mental | Grafo de nós interativo | Salvo 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 — oupaginate: falsepara 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.come o alias do Workspacenotebook.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
notebooklmempacotada (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-vaultgrava respostas com citações como markdown + arquivos auxiliares JSON (schemanblm-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
| Guia | Descrição |
|---|---|
| Instalação | Configuração passo a passo para modos HTTP e MCP |
| Configuração | Variáveis de ambiente e segurança |
| Referência da API REST | Documentação completa dos endpoints HTTP (33 endpoints) |
| Execute 1.000 perguntas durante a noite | Padrão de lote de produção com reautenticação automática e rotação |
| Integração RTFM — cache como vault pesquisável | Padrão de pipeline: NotebookLM como ingestão única, RTFM como camada de recuperação. Endpoint /batch-to-vault, schema nblm-answer-v1. |
| Integração n8n | Configuração de automação de fluxos de trabalho |
| Solução de problemas | Problemas comuns e soluções |
| Biblioteca de notebooks | Gerenciamento de múltiplos notebooks |
| Descoberta automática | Geração autônoma de metadados |
| Gerenciamento de conteúdo | Áudio, vídeo, infográfico, relatório, apresentação |
| Rotação de múltiplas contas | Múltiplas contas com reautenticação automática TOTP |
| Docker | Implantação com Docker e Docker Compose |
| Multi-interface | Execute Claude Desktop + HTTP simultaneamente |
| Comparar com PleasePrompto v2.0.0 | Matriz de recursos vs. o servidor upstream somente MCP |
| Limitação do perfil do Chrome | Bloqueio de perfil (resolvido na v1.3.6+) |
| Adicionar um idioma | Sistema 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_authaceitam umheadlessde nível superior (#27) - v3.0.0 — Grande refatoração: transporte duplo (API RPC interna
batchexecutedo 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_listenote_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/listanuncia 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 MCPannotations(dicas somente leitura / destrutivo / idempotente / mundo aberto) eoutputSchema+structuredContentem cada ferramenta. Publicado no registro Smithery. - v1.7.0 —
batch_to_vaultexposto como ferramenta MCP de primeira classe (paridade com o endpoint HTTP, sem necessidade de servidor localhost); o helper compartilhadorunBatchToVaultdeduplica o loop em ambos os transportes - v1.6.0 — Endpoint
/batch-to-vault+ integração RTFM (JSON Schemanblm-answer-v1publicado 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!