Skip to main content
Glama
SantosRojas

notebooklm-mcp-pro

by SantosRojas

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NLM_PROFILENonotebooklm-py profile for multiple accounts.
NLM_RETRIESNoRetry count 0-5 for network/server/quota errors on reads; non-idempotent operations are never retried.2
NLM_LOG_JSONNoSet to 1 for structured JSON logs on stderr, one line per event.0
NLM_MCP_MODENoServer mode: readonly or readwrite.readonly
NLM_AUDIT_LOGNoPath to the JSONL audit log for writes and deletions.<cache>/audit.jsonl
NLM_CACHE_DIRNoDirectory for cache, exports, and audit logs.~/.cache/notebooklm-mcp-pro
NLM_LOG_LEVELNoLog level; logs go to stderr because stdout is used by the protocol.INFO
NLM_MAX_CHARSNoMaximum page size returned to the agent; minimum 1000.20000
NLM_UPLOAD_DIRSNoAllowed folders for add_source_file and add_source_base64, separated by ':' on Linux/Mac or ';' on Windows. Empty disables uploads.
NLM_STORAGE_PATHNoPath to storage_state.json.
NLM_STRIP_IMAGESNoStrips embedded base64 images from Markdown sources, replacing them with text markers.1
NLM_AUDIT_MAX_BYTESNoAudit log rotation size in bytes; one generation is kept in .1.10485760
NLM_MAX_CONCURRENCYNoMaximum simultaneous calls to NotebookLM.4
NLM_TIMEOUT_SECONDSNoTimeout per call in seconds; some operations multiply it.60
NLM_DEFAULT_LANGUAGENoDefault language for generate_report.es
NLM_CACHE_TTL_SECONDSNoCache validity period in seconds; 0 means never use the cache.3600
NLM_MCP_ALLOW_DESTRUCTIVENoEnables destructive deletion tools, only with readwrite mode.0

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
health_checkB

Estado del servidor y de la sesión con NotebookLM (modo, caché, autenticación).

list_notebooksB

Lista los notebooks de la cuenta (id, título, nº de fuentes, fechas).

get_notebookC

Metadatos de un notebook, su resumen generado y temas sugeridos.

list_sourcesB

Lista las fuentes de un notebook con tipo, estado, URL y nº de palabras.

read_sourceA

Lee una fuente en Markdown, paginada. Para documentos largos prefiere get_source_outline + read_source_section.

get_source_outlineB

Índice de encabezados (nivel, título, línea, posición) de una fuente en Markdown.

read_source_sectionB

Lee solo una sección (hasta el siguiente encabezado del mismo nivel o superior).

get_source_guideC

Resumen y palabras clave que NotebookLM genera para una fuente.

search_sourcesB

Búsqueda semántica de NotebookLM: fragmentos más relevantes ordenados por relevancia.

keyword_searchA

Búsqueda léxica BM25 local (sin cuota) en un notebook o en todas a la vez.

Sin notebook_id barre todas las notebooks (o notebook_ids) y etiqueta cada resultado con su notebook de origen: sirve para saber en cuál documentaste algo sin recorrerlas una por una. notebooks_scanned_ids dice cuáles se recorrieron de verdad (con max_notebooks puede que la que te interesa se quedara fuera). Una notebook con problemas no aborta el barrido (notebook_errors con ref).

grepA

Busca un texto o regex (como grep) en la caché: en un notebook o en todas a la vez.

Devuelve línea + contexto. Sin notebook_id recorre todas las notebooks de la cuenta y etiqueta cada coincidencia con su origen (notebooks_scanned_ids dice cuáles se recorrieron); una notebook con problemas no aborta el barrido (notebook_errors con ref). Es literal salvo que uses literal=false.

ask_notebookA

Pregunta al notebook y devuelve respuesta con citas a fuentes. Consume cuota de chat y queda en el historial del notebook.

list_notesB

Lista las notas del notebook con una vista previa.

read_noteB

Lee una nota completa (paginada).

list_artifactsA

Lista los artefactos generados (informes, audio, cuestionarios, mapas mentales...) y su estado.

read_reportA

Lee en Markdown un informe (briefing, guía de estudio...), paginado.

Solo los informes (tipo report, los que crea generate_report): un archivo subido, un audio o una presentación no tienen texto que leer y la llamada lo dirá con el tipo que tiene en lugar del «no está listo» interno de NotebookLM.

get_generation_statusA

Estado de una generación iniciada con generate_report (pending / in_progress / completed / failed).

Con wait_seconds > 0 espera activamente hasta el estado terminal (o agotar la espera) y devuelve final, para que el agente no tenga que consultar en bucle. Con 0 responde ya.

get_usageA

Cuota de la cuenta (ventanas de uso y acciones con capacidad restante).

Útil antes de lotes de ask_notebook/generate_report para no chocar con límites. No todas las cuentas exponen la cuota: si no, devuelve status: disabled y enabled: false — en ese caso confía en los límites por defecto y no reintentes.

get_chat_historyA

Historial de chat del notebook: turnos (pregunta, respuesta) más recientes.

Los turnos vienen recortados y sin conversation_id: para repreguntar con contexto, usa el que devolvió ask_notebook.

source_statsA

Radiografía local de las fuentes: tamaño, palabras, encabezados y términos dominantes.

Sin notebook_id resume la caché entera por notebook (fuentes, caracteres y antigüedad), sin red ni cuota: es la vista para decidir sync_notebook o clear_cache. Con notebook_id mide fuente a fuente; con auto_sync=False mide solo lo ya cacheado y lista el resto en not_cached.

sync_notebookA

Descarga todas las fuentes del notebook en Markdown a la caché local (habilita keyword_search/grep sin esperas).

export_markdownA

Exporta a .md (con front matter) un notebook completo o una sola fuente.

Notebook completo (incremental): solo reescribe las fuentes cuyo Markdown cambió —el resto conserva su exported_at—, deja INDEX.md + .manifest.json y borra los .md de fuentes que ya no existen (force reescribe todo). Una sola fuente: escribe ese documento y, con refresh, lo vuelve a descargar antes. directory elige el destino; los archivos quedan listos para las herramientas de archivos del agente.

clear_cacheA

Borra la caché local y las exportaciones (no toca nada en NotebookLM).

purge_all=True vacía por completo el estado local (útil antes de un refresco masivo); en ese caso no se requiere notebook_id.

Prompts

Interactive templates invoked by user choice

NameDescription
research_topic
summarize_source
compare_sources

Resources

Contextual data attached and managed by the client

NameDescription
notebooksLista de notebooks de la cuenta.

TDQS

B3.4/5.0

Scored across 23 tools

Disambiguation4/5

Most tools target a clearly distinct resource/action (notebooks, sources, notes, reports, cache, quota). The main risk is the search trio—search_sources (semantic), keyword_search (BM25) and grep (regex)—which overlap conceptually, though descriptions explain when to use each. read_source vs read_source_section vs get_source_outline are also related but well differentiated.

Naming Consistency4/5

Predominantly consistent snake_case verb_noun pattern (list_notebooks, get_notebook, read_source, sync_notebook, clear_cache). A few deviations—grep (bare verb), keyword_search and source_stats (noun/adjective-noun), health_check—but they remain readable and predictable overall.

Tool Count3/5

23 tools is on the heavy side of the 16-25 band for a single server. Most tools earn their place (notebook/source/note/artifact lifecycle plus a cache and quota subsystem), but the search suite and cache utilities could be consolidated to reduce surface area.

Completeness3/5

The surface is strong on reading, searching and caching, but lacks creation/management operations: no create_notebook, add_source, create_note or delete tools. Notably, generate_report is referenced by read_report and get_generation_status but is absent from the tool list, creating a dead end for artifact generation.

Maintenance

ActivityMaintained
ResponsivenessNo issues