n8n-nodes-notebooklm-mcp
v0.1.1
Published
n8n node for Google NotebookLM (via MCP server)
Maintainers
Readme
n8n-nodes-notebooklm
Este é um nó de comunidade para o n8n que permite interagir com o Google NotebookLM através de um servidor MCP (Model Context Protocol).
⚡ Início Rápido (Modo Fácil)
Para usuários que querem começar em minutos:
1. Implantar o Servidor (VPS)
Se você usa o Easypanel, pode usar nosso Blueprint de 1-Clique:
- No seu Easypanel, vá em Projects -> Create New.
- Selecione App -> Github.
- Use este repositório:
guilhermeverdoodt/n8n-nodes-notebooklm-mcp - Nas Variáveis de Ambiente, cole seus cookies do Google e uma Chave de API secreta.
Consulte easypanel-blueprint.json para referência.
2. Instalar o Nó (n8n)
No seu n8n: Settings -> Community Nodes -> Install -> Digite n8n-nodes-notebooklm.
🏁 Visão Geral: Integração NotebookLM + n8n
Este projeto fornece uma ponte completa e segura entre as capacidades do Google NotebookLM e o n8n.
✅ O que está incluído:
- Servidor MCP Aprimorado (Python): Suporta transportes HTTP/SSE/Stdio, endpoints REST Gateway (
/api/notebooks,/api/query) e segurança nativa viaX-API-Key. - Nó Nativo n8n: Possui um sistema de Credenciais seguro e suporta 100% dos recursos do NotebookLM (Notebooks, Fontes, Notas, Studio, Artefatos, Compartilhamento e Exportações).
- Pronto para Deploy: Inclui
Dockerfilee guias para hospedagem em VPS (Easypanel).
🚀 Instalação e Configuração
1. Instalar o Nó de Comunidade
Siga o guia de instalação de nós de comunidade do n8n. Na sua instância do n8n:
- Vá em Settings > Community Nodes.
- Clique em Install a community node.
- Digite
n8n-nodes-notebooklm.
2. Rodar o Servidor MCP
O nó requer um servidor NotebookLM MCP rodando em modo HTTP.
notebooklm-mcp --transport http --port 8000Nota: Certifique-se de ter autenticado via nlm login primeiro.
🔒 Credenciais e Segurança
Este nó usa o tipo de credencial NotebookLM MCP API para segurança.
- Server URL: A URL completa para o seu servidor MCP (ex:
https://mcp.seu-dominio.com/mcp). - API Key: A chave secreta configurada no seu servidor através da variável de ambiente
NOTEBOOKLM_API_KEY.
✨ Funcionalidades
- Notebooks: Criar, Listar, Renomear, Deletar, Descrever e Pesquisa Profunda (Deep Research).
- Fontes: Adicionar (URL, Texto, Drive, Arquivo Local), Listar, Deletar e Sincronizar.
- Notas: CRUD Completo (Criar, Ler, Atualizar, Deletar) para notas dentro dos notebooks.
- Chat/Consulta: Faça perguntas aos seus notebooks com citações geradas por IA.
- Studio: Criar Visões Gerais em Áudio (Podcasts), roteiros de YouTube, FAQs e muito mais.
- Artefatos: Listar e Baixar arquivos gerados (Áudio, PDF, etc.).
- Compartilhamento: Gerenciar status de compartilhamento, convidar colaboradores e definir acesso público.
- Exportações: Exportar conteúdo do notebook para Google Docs ou Google Sheets.
🚢 Implantação em VPS (Easypanel + Integração GitHub)
Esta é a maneira recomendada de hospedar seu próprio servidor NotebookLM MCP privado:
- Conectar GitHub: No Easypanel, vá em Settings e garanta que seu GitHub Token está configurado.
- Criar App: Escolha App -> Github.
- Detalhes do App:
- Repository:
guilhermeverdoodt/n8n-nodes-notebooklm-mcp - Branch:
main - Build Path:
/
- Repository:
- Configuração de Build:
- Build Method:
Dockerfile - Docker Context:
./n8n-nodes-notebooklm-mcp - Dockerfile Path:
n8n-nodes-notebooklm-mcp/Dockerfile
- Build Method:
- Variáveis de Ambiente:
NOTEBOOKLM_COOKIES: Copie do seu arquivocookies.jsonlocal.NOTEBOOKLM_API_KEY: Defina uma chave secreta forte para autenticação.
- Rede (Networking):
- Port:
8000 - Domain: Defina seu subdomínio (ex:
mcp.seu-dominio.com). - (Opcional) Ative o middleware Basic Auth para segurança extra.
- Port:
🛠️ Desenvolvimento Local e Publicação
Teste Local
npm install
npm run build
npm link
# No diretório do n8n:
npm link n8n-nodes-notebooklmPublicando no npm
npm loginnpm publish --access public
🤖 Guia de Automação com IA
Este nó foi otimizado para Agentes de IA e automação. Use o Smart List Flattening para conectar seu agente ao conhecimento do NotebookLM de forma eficaz:
Seleção Dinâmica de Conhecimento
Em vez de fixar IDs (hardcoding), você pode encontrar notebooks pelo nome:
- Listar Notebooks: Use a operação
Notebook: List. - Filtrar: Adicione um nó de Filter nativo do n8n para comparar o
title(ex: title é igual a "Meu Conhecimento"). - Conectar Agente: No próximo nó (ex:
Notebook: Query), defina o Notebook ID como uma expressão:{{ $json.id }}.
Isso permite que seu agente sempre aponte para o conhecimento correto, mesmo que você renomeie ou recrie os notebooks.
🔧 Solução de Problemas
❌ Service is not reachable (Easypanel)
O servidor está vinculando em 127.0.0.1 dentro do container. Certifique-se de que o CMD do Dockerfile inclui --host 0.0.0.0:
CMD ["notebooklm-mcp", "--transport", "http", "--host", "0.0.0.0", "--port", "8000"]❌ Not Acceptable: Client must accept text/event-stream
Ocorre quando o nó n8n faz requisições sem o header Accept necessário para o protocolo MCP. Atualize o nó para a versão mais recente:
- Via Community Nodes: Desinstalar → Reinstalar
n8n-nodes-notebooklm. - Em desenvolvimento local: execute
npm run builde reinicie o n8n.
❌ AttributeError: 'FastMCP' object has no attribute 'starlette_app'
A versão do FastMCP instalada via pip no Docker usa app em vez de starlette_app. Isso está corrigido na versão >= 0.1.0 deste pacote.
✅ Testando Sem o Nó n8n
Você pode validar que o servidor está funcionando usando os endpoints REST diretamente:
# Health check
curl https://seu-dominio.easypanel.host/health
# Listar notebooks (adicione -H "X-API-Key: sua-chave" se configurado)
curl https://seu-dominio.easypanel.host/api/notebooks📦 Aplicando Atualizações do Nó n8n
O nó n8n não se atualiza automaticamente. Após qualquer mudança de código, publique uma nova versão no npm e reinstale via Community Nodes:
npm version patch # incrementar versão
npm publish --access public