NotebookLM MCP Server
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Each tool has a clearly distinct purpose with no ambiguity: ask_notebook queries content, create_note adds notes, download_notes exports files, generate_* tools create different output formats, get_notebook_sources retrieves sources, list_notebooks enumerates notebooks, and select_notebook sets up local directories. The tools target different actions on notebooks without overlap.
Naming Consistency5/5Tool names follow a consistent verb_noun pattern throughout: ask_notebook, create_note, download_notes, generate_audio, generate_infographic, generate_report, generate_slides, generate_video, get_notebook_sources, list_notebooks, select_notebook. All use snake_case with clear verbs aligned to their functions.
Tool Count5/5With 11 tools, this is well-scoped for a NotebookLM server, covering core operations like querying, note management, content generation in multiple formats, source retrieval, and notebook selection. Each tool earns its place without bloat, fitting typical MCP server ranges.
Completeness4/5The toolset provides comprehensive coverage for NotebookLM workflows, including CRUD-like operations (create_note, list_notebooks), content generation in various formats, and utility functions. Minor gaps exist, such as no update/delete for notes or notebooks, but agents can work around these with the available tools.
Average 3.1/5 across 11 of 11 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool 'Generates an Infographic' but doesn't disclose behavioral traits such as whether this is a read-only or mutating operation, what permissions are needed, potential rate limits, or what happens during generation (e.g., if it modifies the notebook). The description is minimal and lacks critical behavioral context for a generation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with the main purpose stated first. The two-sentence structure is efficient, and the Args section is clear. However, the second sentence is somewhat redundant with the parameter list, slightly reducing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (generation operation with 2 parameters), no annotations, and an output schema present, the description is moderately complete. It covers the basic purpose and parameters but lacks usage guidelines and behavioral transparency. The output schema reduces the need to explain return values, but the description should do more to compensate for the absence of annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description lists two parameters (notebook_id and instructions) with brief explanations, but schema description coverage is 0%, meaning the schema provides no descriptions. The description adds some meaning (e.g., 'The ID of the NotebookLM notebook' and 'Custom instructions for infographic generation'), but it's insufficient to fully compensate for the lack of schema documentation, especially for a tool with 2 parameters where one has a default value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generates an Infographic for a notebook' with specific verb ('Generates') and resource ('Infographic for a notebook'). It distinguishes from siblings like generate_report or generate_slides by specifying the output type. However, it doesn't explicitly differentiate from all siblings (e.g., generate_video), so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose generate_infographic over generate_report, generate_slides, or other output-generation siblings, nor does it specify prerequisites or exclusions. The only implied context is having a notebook, but this is insufficient for effective tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions the action ('ask a question') and outcome ('AI-generated answer'), but lacks behavioral details such as authentication needs, rate limits, response format, or error handling. For a tool that likely involves AI processing, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence clearly states the purpose, followed by a concise Args section. There's no wasted text, and the structure aids readability. A slight deduction because the Args formatting could be more integrated, but overall it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters with 0% schema coverage, no annotations, and an output schema (which reduces need to explain returns), the description is moderately complete. It covers the basic action and parameters but misses behavioral context (e.g., how answers are generated, limitations). For a simple Q&A tool, this is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the schema provides no parameter details. The description adds minimal semantics: it names the parameters (notebook_id, query) and briefly describes them ('The ID of the NotebookLM notebook', 'The question to ask in natural language'). This compensates somewhat but doesn't fully address format expectations (e.g., notebook_id source, query length limits), resulting in a baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Ask a question to a specific NotebookLM notebook and get an AI-generated answer.' It specifies the verb ('ask'), resource ('NotebookLM notebook'), and outcome ('AI-generated answer'), distinguishing it from siblings like list_notebooks or get_notebook_sources. However, it doesn't explicitly differentiate from other AI interaction tools like generate_report, which slightly reduces specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a notebook_id from list_notebooks), exclusions (e.g., not for editing), or comparisons to siblings like generate_report (which might produce structured outputs). Usage is implied by the purpose but lacks explicit context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it 'creates' a note without disclosing behavioral traits. It doesn't mention permissions needed, whether creation is idempotent, rate limits, or what happens on failure (e.g., invalid notebook_id). For a mutation tool with zero annotation coverage, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with a clear purpose statement followed by parameter documentation. It's front-loaded with the main action, though the 'Args' formatting could be more integrated. There's minimal waste, but it lacks completeness in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (not shown here), the description doesn't need to explain return values. However, for a creation tool with 3 parameters and no annotations, it should provide more context on usage and behavior. The parameter documentation helps, but gaps in guidelines and transparency make it only minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes an 'Args' section that documents all three parameters (notebook_id, title, content), adding meaning beyond the schema which has 0% description coverage. However, it only provides basic labels without details like format constraints (e.g., notebook_id structure, content length limits), so it partially compensates for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create a new note') and resource ('in the specified notebook'), making the purpose immediately understandable. However, it doesn't differentiate this from potential sibling tools like 'download_notes' or 'list_notebooks', which would require a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing notebook), exclusions, or how it relates to sibling tools like 'ask_notebook' or 'generate_report' for note-related tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool generates a slide deck, implying a creation/mutation operation, but doesn't disclose behavioral traits such as permissions needed, whether it modifies existing data, rate limits, or what the output entails. This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with the main purpose stated first in a single sentence, followed by a brief parameter list. There's no wasted text, and it's easy to scan. It could be slightly more structured (e.g., bullet points), but it's efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema, the description doesn't need to explain return values. However, with no annotations, 0% schema coverage, and 2 parameters, the description is incomplete: it lacks behavioral context, detailed usage guidelines, and full parameter semantics. It's minimally adequate but has clear gaps, especially for a generation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning by explaining that 'notebook_id' is for a 'NotebookLM notebook' and 'instructions' are 'Custom instructions for slide deck generation,' which clarifies the purpose of each parameter beyond the schema's basic titles. However, it doesn't provide details like format constraints or examples, so it only partially compensates for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generates a Slide Deck for a notebook.' It specifies the verb ('Generates') and resource ('Slide Deck'), and distinguishes it from siblings like generate_report or generate_infographic by focusing on slide decks. However, it doesn't explicitly differentiate from all siblings (e.g., generate_video), so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose generate_slides over generate_report or generate_infographic, nor does it specify prerequisites or context for usage. The only implied usage is having a notebook, but this is not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action 'Get all sources' but lacks details on permissions, rate limits, response format, or whether it's a read-only operation. This leaves significant gaps in understanding how the tool behaves beyond its basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, with the main purpose stated first and parameter details in a brief 'Args' section. There's no wasted text, but it could be slightly more structured with clearer separation of usage context, making it efficient but not perfectly optimized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one parameter, no annotations, and an output schema exists (which handles return values), the description is minimally adequate. It covers the basic purpose and parameter but lacks behavioral context and usage guidelines, making it incomplete for optimal agent understanding without additional structured data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal semantics by specifying 'notebook_id: The ID of the NotebookLM notebook,' which clarifies the parameter's purpose. However, with 0% schema description coverage and only one parameter, this provides some value but doesn't fully compensate for the lack of schema details, aligning with the baseline for low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'sources associated with a specific NotebookLM notebook', making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_notebooks' or 'select_notebook', which might also involve notebook data retrieval, so it falls short of a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing an existing notebook, or compare it to siblings like 'list_notebooks' for broader listing or 'ask_notebook' for querying content, leaving usage context unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool creates a local directory and returns its path, which is useful behavioral context. However, it lacks details on permissions needed, whether this is a read-only or mutating operation (creation implies mutation), error handling, or side effects (e.g., overwriting existing directories). For a tool with no annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core action and outcome, followed by a brief parameter explanation. There's minimal waste, though the structure could be slightly improved by integrating the parameter note more seamlessly. Overall, it's efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 1 parameter with 0% schema coverage and an output schema (which handles return values), the description is moderately complete. It covers the tool's purpose and parameter semantics but lacks behavioral details (e.g., mutation implications, error cases) and usage guidelines. For a tool that creates directories, more context on side effects would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning beyond the input schema: it explains that 'notebook_id' is 'The ID of the NotebookLM notebook,' clarifying the parameter's purpose. With 0% schema description coverage and 1 parameter, this compensates adequately. However, it doesn't specify format (e.g., string pattern) or constraints, keeping it at a baseline level.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Selects a notebook by ID and creates a local directory for it based on its title. Returns the path to the created directory.' This specifies the verb (selects and creates), resource (notebook), and outcome (directory path). It distinguishes from siblings like 'list_notebooks' (which lists) or 'get_notebook_sources' (which retrieves sources), though it doesn't explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a notebook ID from 'list_notebooks'), exclusions, or comparisons to siblings like 'ask_notebook' for querying. Usage is implied but not explicitly stated, leaving gaps for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool generates audio, implying a creation/mutation operation, but lacks details on behavioral traits such as permissions required, processing time, rate limits, output format (though output schema exists), or whether it's destructive. This is inadequate for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a brief parameter explanation. Every sentence earns its place with no wasted words, and the structure is logical (purpose then args).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complexity (audio generation tool), no annotations, and an output schema (which handles return values), the description is minimally complete. It covers purpose and parameters but lacks behavioral context (e.g., processing details) and usage guidelines. With output schema reducing need for return value explanation, it's adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning by explaining 'notebook_id' as 'The ID of the NotebookLM notebook' and 'instructions' as 'Custom instructions for the podcast hosts,' which clarifies their roles beyond schema titles. However, it doesn't cover format details (e.g., ID structure, instruction length), leaving gaps. Baseline 3 is appropriate as it adds some value but not fully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generates an Audio Overview (podcast) for a notebook.' It specifies the verb ('Generates'), resource ('Audio Overview'), and target ('notebook'), distinguishing it from sibling tools like generate_video or generate_report. However, it doesn't explicitly differentiate from all siblings (e.g., generate_infographic or generate_slides) beyond the output type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., notebook existence), exclusions, or comparisons to siblings like generate_video or generate_report. The only implied usage is for creating audio content from a notebook, but no explicit context or alternatives are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Generates a Video Overview,' implying a creation/mutation operation, but doesn't mention permissions, rate limits, output format, or processing time. For a tool with no annotations and an output schema, this lacks critical behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose, followed by a concise Args section. Every sentence adds value without redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (generation operation with 2 parameters), no annotations, and an output schema, the description is incomplete. It covers basic purpose and parameters but lacks behavioral context, usage guidelines, and output details. The output schema mitigates some gaps, but overall, it's minimally adequate with clear omissions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning by explaining 'notebook_id' as 'The ID of the NotebookLM notebook' and 'instructions' as 'Custom instructions for video generation,' which clarifies purpose beyond schema titles. However, it doesn't detail format constraints or examples, leaving gaps in parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generates a Video Overview for a notebook.' It specifies the verb ('Generates') and resource ('Video Overview for a notebook'), making it easy to understand. However, it doesn't explicitly differentiate from sibling tools like 'generate_audio' or 'generate_slides' beyond mentioning 'Video,' which is implied but not stated as a distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'notebook' and 'video generation,' but doesn't specify scenarios, prerequisites, or exclusions compared to siblings like 'generate_audio' or 'generate_report.' This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool 'Generates a Report' but doesn't disclose behavioral traits such as whether it's a read-only or mutation operation, authentication needs, rate limits, or what happens if the notebook_id is invalid. For a generation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a structured Args section. Every sentence earns its place by providing essential parameter information without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters, 0% schema coverage, no annotations) and the presence of an output schema, the description is minimally adequate. It covers the basic purpose and parameters but lacks behavioral context and usage guidelines. The output schema likely handles return values, so the description doesn't need to explain those, but it should do more for a generation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaningful semantics: it explains that 'notebook_id' is for a 'NotebookLM notebook', lists 'format_type' options (BRIEFING_DOC, STUDY_GUIDE, BLOG_POST, CUSTOM), and specifies that 'instructions' is required for CUSTOM format. This goes beyond the bare schema, though it doesn't fully detail all parameter nuances.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generates a Report for a notebook.' It specifies the verb ('Generates') and resource ('Report for a notebook'), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'generate_slides' or 'generate_infographic', which would require a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It lacks context about prerequisites (e.g., notebook existence), exclusions, or comparisons to siblings like 'generate_slides' or 'ask_notebook'. The parameter documentation implies usage but doesn't offer explicit when/when-not instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states it lists notebooks for the authenticated user, implying a read operation, but doesn't disclose behavioral traits like pagination, rate limits, error handling, or what 'available' means (e.g., active vs. archived). This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with zero waste. It's front-loaded with the core action ('List all available NotebookLM notebooks') and includes essential context ('for the authenticated user'). Every word earns its place, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, output schema exists), the description is minimally adequate. However, with no annotations and an output schema, it should ideally explain what 'list' returns (e.g., format, fields) or behavioral aspects, but the output schema might cover return values. It's complete enough for basic use but lacks depth for robust agent operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100% (since there are no parameters to describe). The description adds no parameter information, which is acceptable here. Baseline for 0 parameters is 4, as there's nothing to compensate for, and the description doesn't need to cover parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('NotebookLM notebooks') with scope ('all available... for the authenticated user'). It distinguishes from siblings like 'select_notebook' (which likely selects one) and 'get_notebook_sources' (which focuses on sources). However, it doesn't explicitly differentiate from all siblings, such as 'ask_notebook' which might also list notebooks in some contexts, so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., authentication), exclusions (e.g., not for filtering), or compare to siblings like 'select_notebook' for picking a specific notebook. This leaves the agent to infer usage from context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions downloading notes to a local subfolder, it doesn't describe key behavioral traits: what format the notes are downloaded in (e.g., text files, PDFs), whether this operation requires specific permissions, if it's idempotent, or what happens if the notebook doesn't exist. For a tool that performs file system operations with no annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: the first sentence states the core purpose and location, the second provides usage guidance, and the Args section efficiently documents parameters. Every sentence earns its place with no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is an output schema (which handles return values), the description doesn't need to explain outputs. However, for a tool with 2 parameters, 0% schema coverage, and no annotations, the description should do more: it lacks details on error conditions, file formats, or system dependencies (e.g., local directory permissions). It's adequate but has clear gaps in behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaningful semantics beyond the schema: it explains that 'notebook_id' refers to 'The ID of the NotebookLM notebook' (clarifying the platform) and that 'subfolder_name' is 'The name of the subfolder to save notes' with a default value. This covers both parameters adequately, though it doesn't detail constraints like ID format or subfolder naming rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Downloads all notes') from a specific resource ('from a specific notebook') into a specific location ('into a local subfolder within the directory created for that notebook'). It distinguishes itself from siblings like 'create_note' (which creates) or 'get_notebook_sources' (which retrieves sources, not notes).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool: 'select_notebook should typically be run first to get the main folder.' This gives clear context about prerequisites. However, it doesn't specify when NOT to use it or mention alternatives among siblings (e.g., how it differs from 'get_notebook_sources' or 'list_notebooks').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/harriedgemusic/notebooklm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server