NotebookLM MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_FILE | No | Path to the log file | logs/notebooklm-mcp.log |
| LOG_LEVEL | No | Logging detail level (e.g., INFO, DEBUG, WARNING) | INFO |
| NOTEBOOKLM_CLI | No | The CLI command/path for NotebookLM | notebooklm |
| NOTEBOOKLM_TIMEOUT | No | Command timeout in seconds | 180 |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| health_checkA | Check the availability of the CLI and authentication status. |
| list_notebooksA | Get a list of all NotebookLM notebooks. |
| create_notebookB | Create a new notebook in NotebookLM. name: The name of the new notebook. |
| delete_notebookA | Delete a notebook from NotebookLM. notebook_id: The ID or name of the notebook to delete. |
| add_sourceA | Add a source (file, text, URL) to a notebook. notebook_id: The ID of the notebook. content: The content (URL, absolute file path, or raw text). source_type: Optional. Type of source (url, text, file, youtube). Auto-detected if omitted. |
| list_sourcesB | Get a list of all sources in a specific notebook. |
| get_source_textA | Get the full indexed text content of a specific source in a notebook. notebook_id: The ID of the notebook. source_id: The ID of the source (use list_sources to find it). |
| ask_notebookB | Ask a natural language question to a specific NotebookLM notebook. notebook_id: The ID of the notebook. question: The question you want to ask based on the notebook's sources. |
| get_summaryC | Get the AI-generated summary of the notebook. |
| get_historyC | Get the full conversation history (Q&A) for a specific notebook. notebook_id: The ID of the notebook. |
| generate_audioA | Generate an audio overview (podcast) from the notebook's sources. Note: This process can take several minutes to complete. notebook_id: The ID of the notebook. prompt: Instructions for the audio overview (e.g., "focus on chapter 3"). |
| generate_reportC | Generate a written report (briefing doc, study guide, blog post) from the notebook. Note: This process can take several minutes to complete. notebook_id: The ID of the notebook. prompt: Instructions for the report (e.g., "write a study guide for a 5th grader"). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool serves a distinct purpose: adding sources, asking questions, creating/deleting notebooks, generating audio/reports, retrieving history/summaries, and health checks. There is no overlap or ambiguity between tools.
Most tools follow a verb_noun pattern (e.g., add_source, create_notebook), but 'health_check' is noun_verb, breaking the pattern. Otherwise, naming is consistent and clear.
With 12 tools, the server covers the core NotebookLM workflows without being overwhelming. Each tool is necessary and well-scoped for the domain.
Missing operations include updating or deleting sources, updating notebook names, and a dedicated 'get_notebook' tool. Additionally, 'get_summary' lacks a notebook_id parameter, which is a notable gap.